CSSのFlexboxとGridって何が違うの?初心者向けにやさしく解説!

コンニチハ

パンに塗り塗りジャム太郎です!

今回のテーマはCSSの

Flexbox」と「Grid」の違い

についてです。

それでは、解説していきます!


1.FlexboxとGridってなに?

CSSには、要素の配置を整えるための便利な仕組みがいくつかあります。

その中でもよく使われるのが「Flexbox(フレックスボックス)」と「Grid(グリッド)」です。

どちらも「レイアウト(配置)」をコントロールするための仕組みですが、使い方や考え方が少し違います。


2.FlexboxとGridの比較表

まずは、両者の違いをざっくりと把握するために比較表を見てみましょう。

特徴FlexboxGrid
主な使い道一方向の並び(横か縦)二次元の配置(行と列)
並び方横並び 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も、どちらも使いこなせるようになるとレイアウトの自由度がグンと上がります。焦らず、少しずつ試してみてくださいね!


では、また次の記事で〜

投稿者 パンに塗り塗りジャム太郎

コンニチハ! Z世代のパンに塗り塗りジャム太郎です。 Web系自社開発企業でポンコツエンジニアをしております。 このブログでは最低1人にでもタメになってくれたらいいなぁ〜ぐらいの内容を発信しています。 お手柔らかによろしくお願いいたします。