flex-wrap 属性の基本を理解する
このステップでは、CSS Flexboxにおけるflex-wrap
の基本概念を学びます。flex-wrap
プロパティは、フレックス項目がコンテナの幅を超えたときの表示方法を制御し、応答型ウェブデザインに強力なレイアウト制御を提供します。
デフォルトでは、フレックス項目は1行に収まろうとします。flex-wrap
プロパティを使うと、この動作を変更できます。主な値は3つあります。
nowrap
(デフォルト):すべてのフレックス項目を1行に強制する
wrap
:フレックス項目が上から下に複数行に折り返される
wrap-reverse
:フレックス項目が下から上に複数行に折り返される
これらの概念を示すために、簡単なHTMLとCSSファイルを作成しましょう。WebIDEを開き、~/project
ディレクトリにflexbox-wrap.html
という名前の新しいファイルを作成します。
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Flex-Wrap Demonstration</title>
<style>
.flex-container {
display: flex;
width: 300px;
background-color: #f0f0f0;
border: 2px solid #333;
margin-bottom: 20px;
}
.flex-item {
width: 100px;
height: 100px;
background-color: #4caf50;
margin: 5px;
text-align: center;
line-height: 100px;
color: white;
}
</style>
</head>
<body>
<h2>Flex-Wrap: nowrap (Default)</h2>
<div class="flex-container" style="flex-wrap: nowrap;">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
</div>
<h2>Flex-Wrap: wrap</h2>
<div class="flex-container" style="flex-wrap: wrap;">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
</div>
<h2>Flex-Wrap: wrap-reverse</h2>
<div class="flex-container" style="flex-wrap: wrap-reverse;">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
</div>
</body>
</html>
このファイルをブラウザで開くと、以下のことがわかります。
nowrap
:項目が1行に収まるように圧縮される
wrap
:項目が収まらないときに次の行に移動する
wrap-reverse
:項目が下から上に折り返される
重要なポイント:
flex-wrap
は応答型レイアウトの作成に役立つ
- デザイン要件に基づいて適切な折り返しモードを選ぶ
- 折り返しにより、コンテンツのオーバーフローを防ぎ、読みやすさが向上する