CSS Academy · レッスン

一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト

Flexboxを使って、実用的なナビゲーションバー、カードグリッド、メディアオブジェクトを作成します。

レッスン 4/413 ステップ

「一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト」はCoddyKit上の無料CSS Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCSS Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 CSS Academyコースには全4レッスンが含まれています。

Flexbox パターンが重要な理由

特定のレイアウトパターンは、ほぼすべての Web プロジェクトに登場します。Flexbox を使えば、それぞれを最小限の CSS で効率よく実現できます。これらのパターンを知っていると、開発が速くなり、コード量も減らせます。

ナビゲーションバーのパターン

左側にロゴ、右側にリンクを配置する横方向のナビゲーションです。

<nav class="navbar">
  <span class="logo">Brand</span>
  <div class="nav-links">
    <a href="#">Home</a>
    <a href="#">About</a>
  </div>
</nav>

中央揃えのヒーローセクション

Flexbox を使って、画面全体の高さに合わせてコンテンツを中央揃えにします。

<div class="hero">
  <h1>Welcome</h1>
</div>

カードグリッド

折り返しと均一なガターを使用したレスポンシブなカードグリッドです。

<div class="card-grid">
  <div class="card">Card 1</div>
  <div class="card">Card 2</div>
</div>

メディアオブジェクト

メディアオブジェクトとは、固定幅の画像と柔軟なテキストを横に並べるパターンです。コメント、ソーシャル投稿、リスト項目などで使われる基本的な UI パターンです。

<div class="media">
  <img class="media-img" src="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><rect width='300' height='300' fill='%23ff6347'/><circle cx='150' cy='150' r='100' fill='%231e90ff'/></svg>" alt="avatar" />
  <div class="media-body">
    <strong>Jane Doe</strong>
    <p>Comment text goes here.</p>
  </div>
</div>

Flex による固定フッター

固定の高さを設定せずに、フッターを下端まで押し下げます。

<main>Main content that grows to fill available space</main>
<footer>Footer</footer>

アイコン + テキストボタン

ボタン内でアイコンとテキストを垂直方向に中央揃えします。

<button class="btn">
  <svg width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="8" fill="currentColor"/></svg>
  Download
</button>

Flexbox によるホーリーグレイル

3 カラムのホーリーグレイルレイアウト(ヘッダー、フッター、サイドバー・メイン・サイドバー)です。

<div class="holy-grail">
  <div class="left-sidebar">Left</div>
  <div class="main-content">Main</div>
  <div class="right-sidebar">Right</div>
</div>

ラベル付きフォーム行

フォームの行内で、ラベルと入力欄の組み合わせを揃えて配置します。

<div class="form-row">
  <label>Email</label>
  <input type="email" />
</div>

サムネイルギャラリー

折り返しを使用した画像ギャラリーです。

<div class="gallery">
  <img src="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><rect width='300' height='300' fill='%23ff6347'/><circle cx='150' cy='150' r='100' fill='%231e90ff'/></svg>" alt="thumb" />
  <img src="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><rect width='300' height='300' fill='%23667eea'/><circle cx='150' cy='150' r='100' fill='%23764ba2'/></svg>" alt="thumb" />
  <img src="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><rect width='300' height='300' fill='%23ffd700'/><circle cx='150' cy='150' r='100' fill='%23ff6347'/></svg>" alt="thumb" />
</div>

チップ/タグリスト

テキストのように流れてインラインで折り返されるチップ/タグです。

<div class="tags">
  <span class="tag">CSS</span>
  <span class="tag">Flexbox</span>
  <span class="tag">Layout</span>
</div>

確認問題

メディアオブジェクトのパターンで、長く分割できない文字列を含む場合にテキスト本文があふれないようにするには、何が必要ですか。

まとめ

Flexbox の一般的なパターンには、ナビゲーションバー(ロゴ + auto-margin + リンク)、ヒーロー(column + center justify)、メディアオブジェクト(固定画像 + min-width:0 を設定した flex:1 の本文)、固定フッター(column の本文 + flex:1 のメイン)、カードグリッド(wrap + flex:1 1 Xpx)があります。これら 5 つのパターンで、実際のレイアウト要件の大部分に対応できます。

無料で開始

AI チューターと学ぶ CSS — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
40
レッスン
159

よくある質問

「一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト」レッスンは無料ですか?

はい。「一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、CSS Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 CSS Academyコースには全4レッスンが含まれています。

「一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト」で何を学びますか?

Flexboxを使って、実用的なナビゲーションバー、カードグリッド、メディアオブジェクトを作成します。 ブラウザで直接実行するハンズオンコードでCSS Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

CSS Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCSS Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCSS Academyレッスンでコードを書いて実行できますか?

はい。すべてのCSS Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. align-selfによるFlexアイテムの配置上書き
  2. orderプロパティと視覚的な並べ替え
  3. Flexショートハンドのパターン
  4. 一般的なFlexboxレイアウト:ナビゲーション・カード・メディアオブジェクト
← CSS Academyに戻る