フレックスアイテムの配置方向を指定する
flex-direction
{
flex-direction
flex-directionプロパティは、フレックスコンテナの主軸の方向を指定することで、フレックスアイテムの配置方向を指定します。
| 初期値 | row |
|---|---|
| 継承 | なし |
| 適用される要素 | フレックスコンテナ |
| モジュール | CSS Flexible Box Layout Module Level 1 |
値の指定方法
方向
| row | フレックスコンテナの主軸の方向と起点・終点の位置は、インライン要素と同様になります。例えば、書字方向が左から右への横書きの場合、主軸は水平に、起点・終点は主軸の左端・右端になり、フレックスアイテムは左から右に配置されます。 |
|---|---|
| row-reverse | フレックスコンテナの主軸はrowと同じ方向に指定されますが、起点・終点の位置は逆になり、フレックスアイテムは逆向きに配置されます。 |
| column | フレックスコンテナの主軸の方向と起点・終点の位置は、ブロック要素と同様になります。例えば、書字方向が左から右への横書きの場合、主軸は垂直に、起点・終点は主軸の上端・下端になり、フレックスアイテムは上から下に配置されます。 |
| column-reverse | フレックスコンテナの主軸はcolumnと同じ方向に指定されますが、起点・終点の位置は逆になり、フレックスアイテムは逆向きに配置されます。 |
サンプルコード
以下の例では、フレックスコンテナ内に3つのフレックスアイテムを配置しています。書字方向は通常通り(左から右への横書き)なので、flex-directionプロパティの値をrowに指定すると、フレックスアイテムも同様に配置されます。なお、この例ではフレックスアイテムのサイズをwidth、heightプロパティで指定しています。
CSS
.container{
width: auto; height: 300px; border: red solid 1px;
display: flex;
flex-direction: row;
}
.box{width: 80px;height: 80px;border:solid gray 1px; text-align: center; font: bold "メイリオ";
}
.b1{background-color: rgba(255,0,0,0.5);}
.b2{background-color: rgba(0,255,0,0.5);}
.b3{background-color: rgba(255,255,0,0.5);}
HTML
<div class="container"> <div class="box b1">フレックスアイテム1</div> <div class="box b2">フレックスアイテム2</div> <div class="box b3">フレックスアイテム3</div> </div>
以下の例では、flex-directionプロパティの値をcolumnに指定しています。主軸の方向はブロック要素の配置方向と同様になり、通常は垂直方向になります。また、起点は上端、終点は下端となります。
CSS
.container{
width: auto; height: 300px; border: red solid 1px;
display: flex;
flex-direction: column;
}


