カードを均等に並べるFlexboxの使い方【HTML/CSS・サンプルコード付き】

Flexbox

カードを均等に並べるFlexboxの使い方

カードを均等に並べるFlexboxの使い方を紹介します。本記事では、HTMLとCSSを使って、複数のカードを横方向へバランスよく配置するレイアウトを作成します。Flexboxを使うことで、カード同士の余白を自動で調整しながら、見た目の整ったカード一覧を簡単に作ることができます。

このサンプルコードでは、カードを配置するエリアにFlexboxを指定し、justify-content:space-around; を使ってカードの左右に余白を作りながら均等に配置します。カード数が少ない場合でも、左右に余白を持たせた自然な配置を作りたいときに便利です。

均等に並べるカードレイアウトは、サービス紹介、機能一覧、料金プラン、商品カード、プロフィールカードなどでよく利用されます。横並びや中央配置だけでなく、カード同士の余白を整える方法を覚えておくと、Flexboxを使ったレイアウトの幅が広がります。

コードについて 本記事のコードはサンプルコードです。ご利用前に必ず動作確認を行ってください。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。

デモ

カードを均等に並べるFlexbox

下の3つのカードは、カード一覧に justify-content:space-around; を指定して均等に並べています。

display:flex; を指定するとFlexboxが有効になります。
justify-content:space-around; を指定すると、カードの左右に余白を作りながら均等に配置できます。
カード同士の間隔を整えたい場合に使いやすい指定です。

コードをコピーして使おう!

<!DOCTYPE html>
<html lang="ja">
<head>

  <!-- 文字コードを指定 -->
  <meta charset="UTF-8">

  <!-- スマホ表示に対応 -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- ページタイトル -->
  <title>カードを均等に並べるFlexboxの使い方</title>

  <!-- CSSファイルを読み込み -->
  <link rel="stylesheet" href="style.css">

</head>
<body>

  <!-- 全体エリア -->
  <div class="evenly-flexbox-card-layout_wrap">

    <!-- タイトル -->
    <h1 class="evenly-flexbox-card-layout_title">
      カードを均等に並べるFlexbox
    </h1>

    <!-- カードを配置するエリア -->
    <div class="evenly-flexbox-card-layout_area">

      <!-- カード1 -->
      <div class="evenly-flexbox-card-layout_card"></div>

      <!-- カード2 -->
      <div class="evenly-flexbox-card-layout_card"></div>

      <!-- カード3 -->
      <div class="evenly-flexbox-card-layout_card"></div>

    </div>

  </div>

</body>
</html>

ファイル構成と設置方法

このサンプルでは、HTMLとCSSを別ファイルで管理します。HTMLに3枚のカードを配置し、CSSでFlexboxを使ってカードを均等に並べます。

sample/
├── index.html
└── style.css
  

2つのファイルを同じフォルダへ配置し、ブラウザで index.html を開いてください。カードを均等に並べるには、カードを囲むエリアに display:flex; を指定し、さらに justify-content:space-around; を追加します。カード同士の最低間隔は gap で調整できます。


コメント