nowrapすべての項目を1行に置く
初期値です。項目が縮みきれないときも改行せず、フレックスコンテナーからはみ出すことがあります。
Flexboxの項目を1行のままにするか、複数行へ折り返すかを決めるプロパティ。折り返した行を積み重ねる向きも切り替えて比べられます。
.element flex-wrap: nowrap;
値のパターン
nowrap初期値です。項目が縮みきれないときも改行せず、フレックスコンテナーからはみ出すことがあります。
wrap利用できる主軸方向の幅を超える項目を、交差軸の始点から複数行へ折り返します。
wrap-reverse項目の順序は保ったまま、交差軸の始点と終点を入れ替えて反対側へ行を重ねます。
初期値はnowrapです。折り返しを許可するかと、複数行を交差軸のどちら側へ積むかを3つの値で指定します。
nowrap1行のまま並べる初期値wrap複数行へ折り返す通常方向wrap-reverse反対側へ折り返す交差軸を反転initial初期値のnowrapへ戻すグローバルinherit親要素の指定値を受け継ぐグローバルunset継承しないため初期値へ戻すグローバルカードの基準幅を保ちながらwrapを指定すると、収まらないカードが次の行へ移動します。
.cards { display: flex; flex-wrap: wrap; gap: 24px; }文字数の異なるタグへwrapを使うと、各タグの幅を保ったまま利用できる幅に合わせて並べられます。
.tags { display: flex; flex-wrap: wrap; gap: 8px; }広い画面では1行を保ち、メディアクエリーで狭い画面だけwrapへ切り替えられます。
@media (max-width: 48rem) { .toolbar { flex-wrap: wrap; } }ポイント
折り返しが起きるには、フレックスコンテナーの主軸方向に限られた大きさがあり、項目がその中へ収まりきらない必要があります。項目側のwidthやflex-basis、flex-shrinkも折り返す位置に影響します。wrap-reverseが反転するのは行を積み重ねる交差軸の向きで、各行の中の項目順ではありません。flex-wrapはフレックスコンテナーに適用され、子要素へ継承されません。
flex-wrap と一緒に使われるプロパティや、詳しい外部リファレンスをまとめました。