カテゴリ: CSS 更新日: 2025/12/23

CSSフレックスボックスで作るカードレイアウト完全ガイド|初心者でもわかるflexbox入門

カードレイアウトをflexで組む方法
カードレイアウトをflexで組む方法

先生と生徒の会話形式で理解しよう

生徒

「カードが横に並んでいるデザインをよく見るんですが、どうやって作るんですか?」

先生

「CSSのフレックスボックスを使うと、とても簡単にカードレイアウトが作れます。」

生徒

「フレックスボックスって、パソコンを触ったことがなくても理解できますか?」

先生

「大丈夫です。箱を並べるイメージで、一つずつ丁寧に説明します。」

1. カードレイアウトとは何かを知ろう

1. カードレイアウトとは何かを知ろう
1. カードレイアウトとは何かを知ろう

カードレイアウトとは、情報を「カード」のような四角い箱に分けて表示するデザインのことです。 ネットショップの商品一覧、ブログの記事一覧、サービス紹介ページなど、さまざまな場面で使われています。 初心者の方は、まず「一つの情報を一つの箱に入れる」と覚えると理解しやすくなります。

このカードを横に並べたり、画面の幅に合わせて自動で並び替えたりするために使われるのが、 CSSのフレックスボックスです。フレックスボックスは、要素の並び方を簡単にコントロールできる仕組みです。

2. フレックスボックスの基本的な考え方

2. フレックスボックスの基本的な考え方
2. フレックスボックスの基本的な考え方

フレックスボックスを理解するためには、「親」と「子」の関係を知ることが大切です。 親はカード全体を包む箱、子は一枚一枚のカードだと考えてください。 親に対して「フレックスボックスを使います」と指定すると、中に入っている子が横並びになります。

たとえば、本棚を想像してください。本棚が親で、本が子です。 本棚を横向きに使うと、本は自然と横に並びます。 フレックスボックスも同じような考え方で動いています。

3. カードを横に並べる基本コード

3. カードを横に並べる基本コード
3. カードを横に並べる基本コード

ここでは、もっとも基本的なカードレイアウトを作ります。 まずはHTMLでカードを用意し、CSSでフレックスボックスを指定します。 難しく感じるかもしれませんが、そのまま真似して大丈夫です。


<style>
	.cards {
	    display: flex;
	}
	.card {
	    border: 1px solid #ccc;
	    padding: 16px;
	    margin: 8px;
	    width: 150px;
	}
</style>

<div class="cards">
	<div class="card">カード1</div>
	<div class="card">カード2</div>
	<div class="card">カード3</div>
</div>
ブラウザ表示

displayという言葉は「表示方法」という意味です。 flexと書くことで、「中身を横に並べてください」という指示になります。 これだけで、カードは自然に横並びになります。

4. カードの間隔を整える方法

4. カードの間隔を整える方法
4. カードの間隔を整える方法

カード同士がくっついていると見づらくなります。 そこで使うのが、マージンとパディングです。 マージンは箱の外側のすき間、パディングは箱の内側のすき間です。

お弁当箱で例えると、パディングはお弁当箱の中の余白、 マージンはお弁当箱同士の間隔です。 この考え方を覚えると、レイアウトが理解しやすくなります。

5. 画面幅に合わせてカードを折り返す

5. 画面幅に合わせてカードを折り返す
5. 画面幅に合わせてカードを折り返す

パソコンの画面が狭くなると、カードがはみ出してしまうことがあります。 そんなときは、折り返しの設定を行います。 フレックスボックスでは、折り返しも簡単に指定できます。


<style>
	.cards {
	    display: flex;
	    flex-wrap: wrap;
	}
	.card {
	    border: 1px solid #ccc;
	    padding: 16px;
	    margin: 8px;
	    width: 150px;
	}
</style>

<div class="cards">
	<div class="card">カードA</div>
	<div class="card">カードB</div>
	<div class="card">カードC</div>
	<div class="card">カードD</div>
</div>
ブラウザ表示

flex-wrapは「折り返すかどうか」を決める設定です。 wrapと書くことで、画面に収まらないカードは次の行に移動します。 スマートフォンでも見やすいレイアウトになります。

6. カードレイアウトがよく使われる理由

6. カードレイアウトがよく使われる理由
6. カードレイアウトがよく使われる理由

フレックスボックスを使ったカードレイアウトは、初心者にも扱いやすく、 少ないコードで見た目を整えられるのが大きな特徴です。 また、後からカードを増やしても、レイアウトが崩れにくいという利点もあります。

特にブログや商品紹介ページでは、「情報を整理して見せる」ことが重要です。 カードレイアウトは、見る人が内容を直感的に理解しやすくなるため、 多くのウェブサイトで採用されています。

カテゴリの一覧へ
新着記事
New1
Bootstrap
Bootstrapのガターをマスター!g-0〜g-5とgx/gyの使い分けコツ
New2
CSS
CSSグリッド完全解説!auto-fitとauto-fillの違いとレスポンシブ設計での正しい使い分け
New3
Bootstrap
Bootstrapブレークポイントの設計図!sm/md/lg/xlの選び方と実務基準
New4
CSS
CSSグリッド入門!grid-areaで名前付き領域を使ったレイアウトの作り方をやさしく解説
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSグリッドレイアウト完全入門!display: grid の基本と使い方を初心者向けにやさしく解説
No.2
Java&Spring記事人気No2
CSS
CSSでテキストの折り返しを完全解説!初心者でもわかる基本と注意点
No.3
Java&Spring記事人気No3
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.4
Java&Spring記事人気No4
CSS
CSSの複数セレクタ指定を完全解説!初心者でもわかるカンマ区切りの使い方
No.5
Java&Spring記事人気No5
CSS
CSSのフレックスボックスで要素を左右に寄せる方法を完全ガイド!初心者でもわかるjustify-content: space-between
No.6
Java&Spring記事人気No6
CSS
CSSフレックスボックス完全解説|Gridとの違いとFlexboxが得意なレイアウトパターンを初心者向けに理解しよう
No.7
Java&Spring記事人気No7
CSS
CSSの斜体文字を完全解説!初心者でもわかるfont-style: italicの使い方
No.8
Java&Spring記事人気No8
CSS
CSS Flexbox入門!display: flexの基本と適用方法を初心者向けに解説