メインコンテンツまでスキップ

Flexbox

Flexboxを使用したレイアウトの指定ができます。 Flexboxのアルゴリズムを利用することで、多様なサイズの画面あわせて拡大または縮小するレイアウトを定義できます。 また、このような自動レイアウトと幅100などの固定サイズをシームレスに組み合わせることができます。

内部的にはYogaライブラリを用いてFlexboxが実装されています。

Flexbox

プロパティ

Flexコンテナのレイアウトに使用するプロパティを次に示します。

プロパティデフォルトオプション説明
flexDirectioncolumnrow, column, row-reverse, column-reverse子要素の並ぶ向き
flexWrapnowrapnowrap, wrap, wrap-reverse子要素の折り返し
justifyContentflex-startflex-start, flex-end, center, space-between, space-around, space-evenly水平方向の揃え
alignItemsstretchflex-start, flex-end, center, stretch, baseline垂直方向の揃え
alignContentflex-startflex-start, flex-end, center, stretch, space-between, space-around複数行にした時の揃え

子要素(Flexアイテム)のレイアウトに使用するプロパティを次に示します。

プロパティデフォルトオプション説明
flexGrow0子要素の伸びる比率
flexShrink1子要素の縮む比率
flexBasis子要素のサイズ子要素のベースとなる幅の指定
alignSelfautoauto, flex-start, flex-end, center, stretch, baseline子要素自身の垂直方向の揃え

参考サイト