Flexbox の justify-content プロパティの使い方

2024-04-02

Flexbox アイテム間の距離設定

justify-content プロパティは、Flexbox コンテナ内のアイテムの水平方向の配置を制御します。以下の値を使用して、アイテム間の距離を設定できます。

  • space-around: アイテム間の距離を等間隔に設定します。

例:

.container {
  display: flex;
  justify-content: space-around;
}

.item {
  width: 100px;
  height: 100px;
  background-color: red;
}

このコードは、3 つのアイテムを水平方向に並べ、アイテム間の距離を等間隔に設定します。

  • stretch: アイテムの高さをコンテナの高さに合わせます。
  • center: アイテムを垂直方向に中央揃えします。
.container {
  display: flex;
  align-items: center;
}

.item {
  width: 100px;
  height: 100px;
  background-color: red;
}

margin プロパティは、アイテムの外側の余白を設定します。

.item {
  margin: 10px;
}

このコードは、すべてのアイテムの外側に 10px の余白を設定します。

.item {
  padding: 10px;
}

Flexbox アイテム間の距離を設定するには、justify-contentalign-itemsmarginpadding などのプロパティを使用できます。これらのプロパティを組み合わせて、さまざまなレイアウトを作成できます。




<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Flexbox サンプル</title>
  <style>
    .container {
      display: flex;
    }

    .item {
      width: 100px;
      height: 100px;
      background-color: red;
    }
  </style>
</head>
<body>
  <h1>Flexbox サンプル</h1>

  <h2>水平方向の間隔</h2>
  <div class="container">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <h2>垂直方向の間隔</h2>
  <div class="container" style="flex-direction: column">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <h2>`justify-content` プロパティ</h2>
  <div class="container">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`justify-content: space-around` を使用して、アイテム間の距離を等間隔に設定しています。</p>

  <div class="container" style="justify-content: space-between">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`justify-content: space-between` を使用して、アイテム間の距離を最大限に広げています。</p>

  <div class="container" style="justify-content: space-evenly">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`justify-content: space-evenly` を使用して、アイテム間の距離を等間隔に設定し、両端の余白も半分にしています。</p>

  <h2>`align-items` プロパティ</h2>
  <div class="container" style="flex-direction: column">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`align-items: center` を使用して、アイテムを垂直方向に中央揃えしています。</p>

  <div class="container" style="flex-direction: column; align-items: flex-start">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`align-items: flex-start` を使用して、アイテムを垂直方向に上端に配置しています。</p>

  <div class="container" style="flex-direction: column; align-items: flex-end">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`align-items: flex-end` を使用して、アイテムを垂直方向に下端に配置しています</p>

  <h2>`margin` プロパティ</h2>
  <div class="container">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
  </div>

  <p>上記コードは、`margin: 10px` を使用して、すべてのアイテムの外側に 10px の余白を設定



Flexbox アイテム間の距離設定:その他の方法

gap プロパティは、Flexbox コンテナ内のアイテム間の水平方向と垂直方向のギャップを同時に設定できます。

.container {
  display: flex;
  gap: 10px;
}

.item {
  width: 100px;
  height: 100px;
  background-color: red;
}

このコードは、すべてのアイテム間の水平方向と垂直方向のギャップを 10px に設定します。

calc() 関数を使用して、動的な距離を設定できます。

.container {
  display: flex;
  justify-content: space-between;
}

.item {
  width: calc(50% - 10px);
  height: 100px;
  background-color: red;
}

メディアクエリを使用して、デバイスの画面サイズに応じて距離を設定できます。

@media (max-width: 768px) {
  .container {
    justify-content: space-around;
  }

  .item {
    width: calc(100% - 20px);
  }
}

このコードは、画面サイズが 768px 以下の場合、アイテム間の距離を 20px に設定します。

Flexbox アイテム間の距離を設定するには、さまざまな方法があります。これらの方法を組み合わせて、さまざまなレイアウトを作成できます。


css flexbox spacing


HTMLとCSSでチェックボックスのデザインを自由自在にカスタマイズ!

方法 1: width と height プロパティを使う最も簡単な方法は、width と height プロパティを使って、チェックボックスの幅と高さを直接指定することです。例えば、以下のコードは、チェックボックスのサイズを 20px 四方にします。...


要素の状態に合わせてスタイルを変える:JavaScriptによるCSS疑似クラスルールの制御

JavaScriptを使用して、HTML要素にCSS疑似クラスルールを動的に設定することができます。これは、要素の状態やユーザーとのやり取りに基づいて、要素のスタイルを変化させるのに役立ちます。方法以下の方法で、JavaScriptからCSS疑似クラスルールを設定できます。...


CSSでスマホ・タブレット向けデザインを簡単作成!メディアクエリの使い方とサンプルコード

このメディアクエリの場合、以下の意味になります。@media screen: 画面表示用のスタイルを定義します。印刷用やスクリーンリーダー用のスタイルとは区別されます。and (max-width: 1024px): 画面幅が 1024px以下 の場合に、以下のスタイルを適用します。...


HTMLフォームデザインをワンランクアップさせるテクニック

HTMLフォームにおける入力欄内テキストの整列には、主に以下の3つの方法があります。text-align プロパティは、ブロック要素内のテキストの水平方向の配置を制御します。入力欄もブロック要素として扱われるため、このプロパティを使用してテキストの整列を調整できます。...


Angular MaterialでMatアイコンのサイズを自在に操る:3つの基本テクニックと応用例

Angular MaterialでMatアイコンのサイズを変更するには、主に以下の3つの方法があります。CSSを使用して、Matアイコンの font-size 、 width 、 height プロパティを直接設定することができます。この方法は、すべてのMatアイコンに同じサイズを適用したい場合に有効です。...