検索
ホームページウェブフロントエンドCSSチュートリアルFlexbox – スペースを調整して分配する現代的な方法

Flexbox – The Modern Way to Align and Distribute Space

レクチャー 14: フレックスボックス – スペースを調整して分配する現代的な方法

こんにちは! CSS の最もクールで強力なツールの 1 つを活用する準備はできていますか?今日は、Flexbox について見ていきます。アイテムを整列させたり、スペースを適切に配置したりするのに苦労したことがあれば、Flexbox があなたの新しい親友になります。

1.フレックスボックスとは何ですか?

Flexbox (フレキシブル ボックス レイアウト) は、要素のサイズが不明または動的である場合でも、コンテナ内の要素の配置、間隔、分布を制御できる 1 次元のレイアウト システムです。

Flexbox は、利用可能なスペースに応じて拡大、縮小、または位置合わせできるレイアウトを作成するためのツールボックスと考えてください。

2.魔法は表示から始まります: flex

Flexbox の使用を開始するには、コンテナーで display: flex を設定するだけです。これを行うと、そのコンテナの直接の子はすべて フレックス アイテム になり、すぐに異なる動作を開始します。

<div class="flex-container">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
</div>
.flex-container {
    display: flex;
}

これで、.flex-container 内のすべてのアイテムはフレックス アイテムとなり、簡単に操作できるようになりました。

3.フレックスディレクション – どちらに進むべきですか?

デフォルトでは、Flexbox は項目を行 (水平) に配置しますが、項目を列 (垂直) に配置したい場合はどうすればよいでしょうか?フレックスボックスでは、flex-direction プロパティを使用して完全に制御できます。

  • : 項目を水平行に整列させます (これがデフォルトです)。
  • : 項目を垂直列に積み重ねます。
  • row-reverse: row と同じですが、項目の順序が逆になります。
  • column-reverse: 列と同じですが、項目は逆の順序で積み重ねられます。
.flex-container {
    display: flex;
    flex-direction: column;
}

これで、アイテムが垂直に積み重なるようになります。

4.コンテンツの正当化 - 物事を広める

品物が 3 つあり、それらをコンテナ内に均等に広げたいとします。ここで justify-content が役に立ちます。

  • flex-start: 項目はコンテナーの先頭に揃えられます (デフォルト)。
  • center: アイテムは中央に配置されます。
  • space-between: 項目は均等な間隔で配置され、最初の項目が先頭に、最後の項目が最後に配置されます。
  • space-around: 項目は各項目の周りに均等なパディングで配置されます。
.flex-container {
    display: flex;
    justify-content: space-between;
}

これで、アイテムはコンテナ内に均等な間隔で配置されます。

5.アイテムを揃える – バーティカルマジック

justify-content は水平方向の配置を制御しますが、align-items は垂直方向 (または交差軸に沿った) の配置を処理します。オプションは次のとおりです:

  • ストレッチ: アイテムはコンテナーを満たすように伸縮します (デフォルト)。
  • flex-start: 項目は上に揃えられます。
  • flex-end: 項目は下に揃えられます。
  • center: 項目は垂直方向の中央に配置されます。
.flex-container {
    display: flex;
    align-items: center;
}

これで、すべてのアイテムがコンテナ内で垂直方向の中央に配置されます。

6. Flex-Grow、Flex-Shrink、および Flex-Basis – フレックス項目の微調整

特定のアイテムを拡大、縮小したり、開始サイズを固定したりしたい場合があります。 flex-growflex-shrink、および flex-basis プロパティを使用すると、その動作を制御できます。

  • flex-grow: アイテムが他のアイテムと比較してどの程度成長するかを制御します。
  • flex-shrink: アイテムが他のアイテムと比較してどれだけ縮小するかを制御します。
  • flex-basis: 拡大または縮小する前の項目の初期サイズを設定します。

例:

.item {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 100px;
}

これにより、アイテムは 100 ピクセルで開始されますが、必要に応じて、縮小することなく拡大して余分なスペースを埋めることができます。

7.実際のフレックスボックスの例

これを例を挙げてまとめてみましょう!

<div class="flex-container">
    <div class="item">Item 1</div>
    <div class="item">Item 2</div>
    <div class="item">Item 3</div>
</div>
.flex-container {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    height: 300px;
    background-color: #f0f0f0;
}

.item {
    background-color: #4CAF50;
    padding: 20px;
    color: white;
    flex-grow: 1;
}

この例では:

  • アイテムは一列に配置されます。
  • これらは justify-content: space-around で均等に配置されます。
  • align-items: center を使用すると、すべてのアイテムがコンテナ内で垂直方向の中央に配置されます。
  • flex-grow のおかげで、各項目は利用可能なスペースを均等に埋めるように拡張されます。 1.

8. Flexbox が優れている理由

Flexbox は、CSS で苦労していたレイアウト設計の複雑さの多くを取り除きます。フロートもクリアについて心配する必要もなくなり、レスポンシブ デザインがはるかに簡単になりました!

주요 시사점:

  • 컨테이너를 플렉스 컨테이너로 바꾸려면 display: flex를 사용하세요.
  • 흐름 방향(행 또는 열)을 설정하려면 flex-direction을 사용하세요.
  • justify-contentalign-items를 사용하여 간격과 정렬을 제어하세요.
  • flex-grow, flex-shrinkflex-basis를 사용하여 플렉스 항목을 미세 조정하세요.

LinkedIn에서 나를 팔로우하세요.

리도이 하산

以上がFlexbox – スペースを調整して分配する現代的な方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
非常に多くの色のリンク非常に多くの色のリンクApr 13, 2025 am 11:36 AM

最近の色に関するツール、記事、リソースの実行がありました。あなたの楽しみのためにここにそれらを丸くすることで、私がいくつかのタブを閉じてもらいましょう。

FlexBoxでの自動マージンの仕組みFlexBoxでの自動マージンの仕組みApr 13, 2025 am 11:35 AM

ロビンは以前にこれをカバーしたことがありますが、私は過去数週間でそれについての混乱を聞いて、他の人がそれを説明することに刺されたのを見ました、そして私は望んでいました

動く虹色の下線動く虹色の下線Apr 13, 2025 am 11:27 AM

サンドイッチサイトのデザインが大好きです。多くの美しい特徴の中には、これらの見出しがあり、レインボーの下線が下線を描いて、スクロールするときに動きます。そうではありません

新年、新しい仕事?グリッド駆動の履歴書を作成しましょう!新年、新しい仕事?グリッド駆動の履歴書を作成しましょう!Apr 13, 2025 am 11:26 AM

多くの人気のある履歴書設計は、グリッド形状にセクションを配置することにより、利用可能なページスペースを最大限に活用しています。 CSSグリッドを使用して、レイアウトを作成しましょう

リロードしすぎるという習慣からユーザーを分解する1つの方法リロードしすぎるという習慣からユーザーを分解する1つの方法Apr 13, 2025 am 11:25 AM

ページのリロードは何かです。ページが反応しないと思われるとき、または新しいコンテンツが利用可能であると信じるときにページを更新することもあります。時々私たちはただ怒っています

Reactを使用したドメイン駆動型のデザインReactを使用したドメイン駆動型のデザインApr 13, 2025 am 11:22 AM

Reactの世界でフロントエンドアプリケーションを整理する方法に関するガイダンスはほとんどありません。 (「正しいと感じる」までファイルを移動するだけです笑)。真実

非アクティブユーザーの検出非アクティブユーザーの検出Apr 13, 2025 am 11:08 AM

ほとんどの場合、ユーザーがアプリケーションに積極的に関与しているのか、一時的に非アクティブであるかを本当に気にしません。非アクティブ、意味、おそらく彼ら

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufooは常に統合に優れています。キャンペーンモニター、MailChimp、TypeKitなどの特定のアプリと統合されていますが、

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい