【ふれっくすぼっくす】
Flexbox とは?
💡 要素を「柔軟に」並べるCSS
📌 このページのポイント
- display: flexで有効化して、1次元(横or縦)にレイアウト
- justify-content(主軸方向の配置)とalign-items(交差軸方向の配置)
- flex-grow / flex-shrink / flex-basisで要素のサイズを柔軟に制御
- 中央揃え問題を一撃で解決(justify-content: center + align-items: center)
なぜFlexboxが便利なの?
主軸と交差軸って?
flex-direction: row(デフォルト)なら主軸が横方向、交差軸が縦方向。flex-direction: columnなら逆。justify-contentは主軸方向の配置(center、space-between、space-around等)、align-itemsは交差軸方向の配置を制御する。この「主軸」と「交差軸」の概念を理解すればFlexboxはマスターしたも同然だよ
おお!flex: 1って何?
flex: 1はflex-grow: 1; flex-shrink: 1; flex-basis: 0の省略形。「余っている空間を均等に分け合う」という意味。サイドバーをflex: 0 0 250px(固定250px)、メインコンテンツをflex: 1(残り全部)にすると、よくある2カラムレイアウトが簡単に作れるよ
flex-wrapって何?
まとめ:ざっくりこれだけ覚えればOK!
「Flexbox」って出てきたら「要素を柔軟に1次元配置するCSSレイアウト」と思えればだいたいOK!
📖 おまけ:英語の意味
「Flexible Box Layout」 = 柔軟なボックスレイアウト
💬 Flexible(柔軟な)Box(箱)レイアウト。CSSの「中央揃え問題」を解決した救世主だよ