【TailwindCSS】grow(flex-grow)の使い方
使い方 #
grow
をつけた要素はメイン軸方向の余白を取得して伸びる。
複数要素に異なる係数を与えると、その比率で残り領域が配分される。
<div class="flex gap-2">
<div class="w-16 h-16 bg-blue-300">A</div>
<div class="w-16 h-16 bg-green-300 grow">B</div>
<div class="w-16 h-16 bg-red-300">C</div>
</div>
- Bだけが伸びて余白を占領する
- 逆に伸ばしたくない場合は
grow-0
をつける
- 逆に伸ばしたくない場合は
よくある使用シーン #
シーン | 効果 |
---|---|
ヘッダーのロゴ + ナビ + 検索窓 | ロゴ・検索窓を grow-0 、ナビに grow を付けて中央を可変幅に |
カード内でサムネイル + テキスト | 画像を固定幅、テキストを grow で残りを埋める |
ボタン列で「OK」だけ広げたい | 「OK」に grow 、残りに grow-0 |
まとめ #
grow
==flex-grow: 1
: 空きスペース全部取るgrow-0
: 伸びないgrow-N
: 複数要素で比率配分- レイアウト調整やレスポンシブ対応に便利