コンニチハ
パンに塗り塗りジャム太郎です!
今回のテーマはCSSの
「Flexbox」と「Grid」の違い
についてです。
それでは、解説していきます!
1.FlexboxとGridってなに?
CSSには、要素の配置を整えるための便利な仕組みがいくつかあります。
その中でもよく使われるのが「Flexbox(フレックスボックス)」と「Grid(グリッド)」です。
どちらも「レイアウト(配置)」をコントロールするための仕組みですが、使い方や考え方が少し違います。
2.FlexboxとGridの比較表
まずは、両者の違いをざっくりと把握するために比較表を見てみましょう。
特徴 | Flexbox | Grid |
---|---|---|
主な使い道 | 一方向の並び(横か縦) | 二次元の配置(行と列) |
並び方 | 横並び or 縦並び | 行と列を使って配置 |
コードの書き方 | 少なめでシンプルなことが多い | 少し複雑だけど自由度が高い |
対応ブラウザ | ほぼ全てのブラウザで使える | モダンブラウザならOK |
3.どんなときに使い分けるの?
Flexboxが向いているケース:
- ボタンを横に並べたいとき
- ヘッダー・フッターのような1列の中の配置
- アイテムの間隔を簡単に調整したいとき
Gridが向いているケース:
- カードをタイル状に並べたいとき
- 行と列を意識した本格的なレイアウト
- レスポンシブな複雑デザイン
4.実際のコードで比べてみよう
●Flexboxの例
[html]
<div class="flex-container">
<div>Box 1</div>
<div>Box 2</div>
<div>Box 3</div>
</div>
[CSS]
.flex-container {
display: flex;
gap: 10px;
}
→横に並んで、隙間も簡単に空けられる!
●Gridの例
[html]
<div class="grid-container">
<div>Box 1</div>
<div>Box 2</div>
<div>Box 3</div>
</div>
[CSS]
.grid-container {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 10px;
}
→3列に分けて、自由にレイアウトできる!
5.まとめ:迷ったらこう使い分けよう!
初心者のうちはこう考えるとラク!
- 「横並びや縦並び」→ Flexbox
- 「行・列でパズルみたいな配置」→ Grid
最初はFlexboxから慣れて、慣れてきたらGridも使ってみよう!
6.最後に一言
FlexboxもGridも、どちらも使いこなせるようになるとレイアウトの自由度がグンと上がります。焦らず、少しずつ試してみてくださいね!
では、また次の記事で〜