CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSのflex-wrapプロパティ:wrap値でフレックスアイテムを折り返す方法

CSSのflex-wrapプロパティにwrap値を指定すると、フレックスコンテナの幅に収まりきらないフレックスアイテムが、次の行へ自動的に折り返されます。デフォルト値であるnowrapではすべてのアイテムが1行に押し込まれますが、wrapを使えばレスポンシブな複数行レイアウトを簡単に実現できます。

wrap値の基本構文

flex-wrapは、親要素(フレックスコンテナ)側に設定するプロパティです。display: flex;と組み合わせて、以下のように記述します。

.mycontainer {
  display: flex;
  flex-wrap: wrap;
}

実装例

次のコードでは、オレンジ色のフレックスコンテナの中に「Q1」から「Q9」までの9つのアイテムを配置しています。flex-wrap: wrap;が指定されているため、ブラウザのウィンドウ幅を狭めると、収まりきらないアイテムが自動的に次の行へ折り返されて表示されます。実際にブラウザで開き、ウィンドウサイズを変えながら挙動を確認してみてください。

<!DOCTYPE html>
<html>
   <head>
      <style>
         .mycontainer {
            display: flex;
            background-color: orange;
            flex-wrap: wrap;
         }
         .mycontainer > div {
            background-color: white;
            text-align: center;
            line-height: 40px;
            font-size: 25px;
            width: 100px;
            margin: 5px;
         }
      </style>
   </head>
   <body>
      <h1>Quiz</h1>
      <div class = "mycontainer">
         <div>Q1</div>
         <div>Q2</div>
         <div>Q3</div>
         <div>Q4</div>
         <div>Q5</div>
         <div>Q6</div>
         <div>Q7</div>
         <div>Q8</div>
         <div>Q9</div>
      </div>
   </body>
</html>

まとめ

flex-wrap: wrap;は、カード型レイアウトやギャラリー表示など、画面幅に応じてアイテムを柔軟に配置したい場面で非常に便利です。折り返し時の行間や配置を調整したい場合は、align-contentrow-gapなどのプロパティと併用すると、さらに洗練されたレイアウトを作成できます。

  1. CSSのflex-basisプロパティとは?フレックスアイテムの初期サイズ指定方法を解説

    CSSのflex-basisプロパティは、Flexboxレイアウトにおけるフレックスアイテム(子要素)の基本となる長さ(主軸方向の初期サイズ)を設定するためのプロパティです。flex-growやflex-shrinkが伸縮の挙動を制御するのに対し、flex-basisはアイテムが伸縮する前の基準サイズを決めます。 flex-basisで使える主な値 auto(初期値):要素自身のwidthまたはheightの値に依存します。 length:px、em、remなどの単位で固定値を指定します。 percentage:親コンテナの幅に対する割合(%)で指定します。 content:コンテンツの内容

  2. CSSのflex-directionプロパティ「row-reverse」の使い方と役割を徹底解説

    flex-directionプロパティのrow-reverse値とは CSSのflex-directionプロパティは、フレックスコンテナ内のフレックスアイテムが並ぶ方向を指定するためのプロパティです。このプロパティにrow-reverseという値を指定すると、アイテムは水平方向に、しかも右から左へ逆順に配置されます。 通常のrowではアイテムは左から右へ並びますが、row-reverseを指定すると主軸の方向が反転し、HTML上で最初に記述した要素が一番右側に表示されるようになります。RTL(右から左)言語への多言語対応や、デザイン上の理由で並び順を反転させたい場合などに活用できる便利な値で