CSSフレックスボックスで作るカードレイアウト完全ガイド|初心者でもわかるflexbox入門
生徒
「カードが横に並んでいるデザインをよく見るんですが、どうやって作るんですか?」
先生
「CSSのフレックスボックスを使うと、とても簡単にカードレイアウトが作れます。」
生徒
「フレックスボックスって、パソコンを触ったことがなくても理解できますか?」
先生
「大丈夫です。箱を並べるイメージで、一つずつ丁寧に説明します。」
1. カードレイアウトとは何かを知ろう
カードレイアウトとは、情報を「カード」のような四角い箱に分けて表示するデザインのことです。 ネットショップの商品一覧、ブログの記事一覧、サービス紹介ページなど、さまざまな場面で使われています。 初心者の方は、まず「一つの情報を一つの箱に入れる」と覚えると理解しやすくなります。
このカードを横に並べたり、画面の幅に合わせて自動で並び替えたりするために使われるのが、 CSSのフレックスボックスです。フレックスボックスは、要素の並び方を簡単にコントロールできる仕組みです。
2. フレックスボックスの基本的な考え方
フレックスボックスを理解するためには、「親」と「子」の関係を知ることが大切です。 親はカード全体を包む箱、子は一枚一枚のカードだと考えてください。 親に対して「フレックスボックスを使います」と指定すると、中に入っている子が横並びになります。
たとえば、本棚を想像してください。本棚が親で、本が子です。 本棚を横向きに使うと、本は自然と横に並びます。 フレックスボックスも同じような考え方で動いています。
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. カードの間隔を整える方法
カード同士がくっついていると見づらくなります。 そこで使うのが、マージンとパディングです。 マージンは箱の外側のすき間、パディングは箱の内側のすき間です。
お弁当箱で例えると、パディングはお弁当箱の中の余白、 マージンはお弁当箱同士の間隔です。 この考え方を覚えると、レイアウトが理解しやすくなります。
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. カードレイアウトがよく使われる理由
フレックスボックスを使ったカードレイアウトは、初心者にも扱いやすく、 少ないコードで見た目を整えられるのが大きな特徴です。 また、後からカードを増やしても、レイアウトが崩れにくいという利点もあります。
特にブログや商品紹介ページでは、「情報を整理して見せる」ことが重要です。 カードレイアウトは、見る人が内容を直感的に理解しやすくなるため、 多くのウェブサイトで採用されています。
【60分集中】Flexboxを完全攻略!最新CSS3で「崩れない・迷わない」モダンUI構築セミナー
「魅せる力」をコードで実現。CSS3でモダンWebデザインのプロトタイピングを。
本講座では、単に色を変えるだけではなく、「ユーザーを迷わせないUIデザイン」と「崩れないレイアウト設計」の本質を学びます。最新のCSS3とモダンなレイアウト手法を通じて、プロの現場で通用する「美しさと機能性を両立した実装力」を最短距離で習得します。
具体的なワークショップ内容と環境
【つくるもの】
HTMLで作成した骨組みに対し、商用サイトでも採用される「スタイリッシュなカード型UI」や「レスポンシブなナビゲーション」を構築します。色の選定基準や余白(ホワイトスペース)の黄金比など、デザインの理論をコードに落とし込む工程を体験してください。
【開発環境】
フロントエンド開発の標準であるVisual Studio Code (VS Code)を継続使用。CSSの記述を効率化するプラグインや、ブラウザのデベロッパーツール(検証機能)を駆使して、リアルタイムでデザインを微調整するプロのワークフローを再現します。
この60分で得られる3つの技術資産
要素の横並びや中央揃えを自由自在に操り、どんなデバイスでも崩れないレスポンシブな配置術を完全理解します。
後から修正しやすい「壊れにくいコード」の書き方を伝授。プロの現場で必須となる命名規則の考え方を学びます。
画像の最適化や軽量な装飾技法など、ページの表示速度を落とさずに高級感のある演出を行うテクニックを習得します。
※本講座は、HTMLの基礎を終えた後のステップアップ講座です。Webデザイナー、UIデザイナー、フロントエンドエンジニアへの道を切り開く「魅せる技術」を、モクモク独自のパーソナル指導で着実に定着させます。
リラックスしながら、学ぶことが大切です。しっかりと基礎を理解しましょう!
各回少人数・マンツーマン形式で徹底サポート
このセミナーの詳細・お申し込みはこちら