BootStrapって何?

便利便利とは言っても何が便利?って話ですよね

簡単に解説します

レスポンシブデザインをご存知でしょうか?

PCでみてもタブレットで見てもスマホで見てもデザインが崩れない

それぞれのディバイスに応じた最適のレイアウトをしてくれるデザインのことを指します

これ実際にディバイスごとに対応させるCSSを書くのってめんどくさいです

それをBootStrapにやってもらいましょう!ってことですね

こちらのサイトを見てください

Preview

PCで見ている方はウィンドウのサイズを小さくしたり大きくしたりしてみてください

デザインが変わっているのがわかるかと思います

もちろん無料で導入出来ます

導入してみる

では早速BootStrapの準備をします

と入っても非常に簡単

<head>に一文追加するだけです

というわけでこのコードをもうコピペしてください

<head>
<meta charset="utf-8">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous"> 
<link rel="stylesheet" href="style.css" >
</head>

これでおしまい

必ず

<link rel="stylesheet" href="style.css" >

上に書いてください

コードは上から順に処理されます

この順を逆にするとstyle.cssで変更した処理がBootStrapに上書きされるおそれがあります。

グリットシステムを使う

一番大事なところ

これを使いたくてBootStrapを使ってます

とりあえず書いてみましょう

 <div class='row'>
  <div class='area1 col-sm-4'>
   領域1
  </div>

  <div class='area2 col-sm-4'>
   領域2
  </div>

  <div class='area3 col-sm-4'>
   領域3
  </div>
</body>

.area1{
  background-color: red;
}

.area2{
  background-color: green;
}

.area3{
  background-color: blue;
}

実行結果が画像の通りなら成功です

先に説明しますとクラスは半角スペースを挟むことで複数書けます

今回はarea1とcol-sm-4という2つのクラスを持ったdivタグを作ってます

さてここからが本領発揮

ウィンドウサイズを小さくしてみてください

こうなりましたか?

ここについて解説します

グリッドシステムとはclass=’row’エリアを12分割してくれます

そこにcolを使って12個のうち何個を領域として使うかを指定しています

こんな感じです

col-sm-4

のsmの部分ですがこれは

smというサイズになるまでは4個分使用してね!

って意味を持ちます

smとはsmallのことで大体スマホサイズです

このサイズについてはこちらを参照

今回は3つの要素をそれぞれ4個分使用してるのできれいに3分割されてますね

ちょっと数字をいじってみましょうか

 <div class='row'>
  <div class='area1 col-sm-6'>
   領域1
  </div>

  <div class='area2 col-sm-3'>
   領域2
  </div>

  <div class='area3 col-sm-3'>
   領域3
  </div>
</body>

こんな風にして実行してください

先程と結果が変わったかと思います

分割したい領域にrowクラスつけてその中でcolを使って小分けするといった感じ

rouが箱でcolが仕切りみたいな感じですね

offsetを用いて中央に表示

さてここからは少しきれいなレイアウを作ってみましょう

ソースはこんな感じ

<html>
 <head>
  <meta charset="utf-8">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
  <link rel="stylesheet" href="style.css" >
  <title>なんでもいいです。</title>
 </head>
 <body>
  <br >
  <br>
  <br>
  <div class='row'>
   <div class='mainContent col-sm-8 offset-sm-2'>
    <p>SampleText</p>
    <p>SampleText</p>
    <p>SampleText</p>
    <p>SampleText</p>
    <p>SampleText</p>
   </div>
  </div>
 </body>
</html>



.mainContent{
box-shadow: 10px 10px 10px rgba(0,0,0,0.4);

}

.mainContent p{
padding-left: 10px;
}

さて実行してください

その際に必ずウィンドウサイズを変更したりしてどう変化があるかも確認してください

こうなりましたか?

offset-sm-2を解説します

offsetとは

先に領域を確保してください

という意味です

コードでいうとcol-8の前にcol2を設置ということですね

col-8の後ろは自動的に余った数値が設定

この場合

  • offsetの2個分
  • colの8個分

12-(8+2)=2でcol-8の後ろには自動でcol-2が設置されるということになります

col-8の両翼にcol-2が設置されているためcol-8の領域を中央に表示することが出来ています

イメージはこう

ちょっとだけCSS解説

見慣れないものが出てきましたね

先に.mainContent p{   }から解説します

これは

.mainContent内にある<p>を対象という意味です

つまり<div class=’mainContent’>から</div>の間に存在する<p>すべてが対象になります

</div>の後ろに<p>タグを書いても.mainContent p{   }の処理は反映されません

続いてbox-box-shadow

これは影をつけるもので後ろの値である

10px 10px 10px rgba(0,0,0,0.4);

横方向の指定

縦方向の指定

ぼかしの強さ(整数のみ)

影の色(RGB指定)と透明度(0〜1まで)

といった感じです実際に自由に数字を変えてみたほうが理解できるかと

RGBの色指定ですが0,0,0は黒を表します

0〜255までの数値でなにか適当に3つ入れるとそれに該当した色が表示出来ます

RGBのカラー指定はこちら

https://note.cman.jp/color/base_color.cgi

最後に

かなり便利なBootStrap

ドキュメントはこちらです

https://getbootstrap.jp/docs/5.0/getting-started/introduction/

ボタンのデザイン、フォームのデザインなど自動でしてくれるので僕みたいなデザインセンス皆無人間でも大丈夫です

カテゴリー: CSS

コメントを残す

メールアドレスが公開されることはありません。

Rating

wp-puzzle.com logo