【CSS】Grid入門|FlexboxとGridの使い分けが分かる
この記事で分かること CSS Gridの基本的な使い方と、Flexboxとの使い分けを理解できます。 「Flexboxは分かるけど、Gridはいつ使えばいいの?」という疑問を解消します。 FlexboxとGridの違い ざっくり言うと: Flexbox → 一方向(横並び or 縦並び)のレイアウト Grid → 二次元(縦横同時)のレイアウト カードを横に並べるだけならFlexbox。ヘッダー・サイドバー・メイン・フッターのようなページ全体のレイアウトにはGridが向いています。 手順 ステップ1: 基本のGridを作る まず、3列のグリッドを作ってみます。 <div class="grid-container"> <div class="item">1</div> <div class="item">2</div> <div class="item">3</div> <div class="item">4</div> <div class="item">5</div> <div class="item">6</div> </div> /* 親要素にdisplay: gridを指定 */ .grid-container { display: grid; grid-template-columns: 1fr 1fr 1fr; /* 3等分 */ gap: 16px; /* 要素間の余白 */ } .item { background: #e0f2fe; padding: 24px; text-align: center; border-radius: 8px; } grid-template-columns で列の数と幅を指定します。1fr は「残りのスペースを均等に分ける」という意味です。fraction(分数)の略ですね。 これだけで、6つの要素が3列×2行に並びます。 ステップ2: 列幅を変える 均等分割だけでなく、列ごとに幅を変えられます。 /* サイドバー200px + メイン(残り全部) */ .grid-container { display: grid; grid-template-columns: 200px 1fr; gap: 16px; } px と fr を混ぜて使えるのがGridの便利なところです。サイドバーは固定幅、メインは画面幅に合わせて伸縮します。 ...