box-orientプロパティは、フレキシブルボックス内の子要素の配置方向を指定する際に使用します。
フレキシブルボックスとは、サイズや配置を相対的に指定できる柔軟なボックスのことです。
ブロックレベルボックスをフレキシブルボックスにするには、displayプロパティの値に box を指定します。
また、インラインボックスをフレキシブルボックスにするには、displayプロパティの値に inline-box を指定します。
例えば、<div>~</div>に display:box を指定すると、このdiv要素はフレキシブルボックスとなります。
このフレキシブルボックスの中にある<div>~</div>などの子ボックス達が水平に並んで、
あたかも全体がひとつのボックスであるかのように表示されます。
<h4>display:box;を指定しないボックス</h4>
<div style=”background-color:yellow; padding:5px;”>
<div style=”background-color:red;”>あいうえお</div>
<div style=”background-color:green;”>かきくけこ</div>
<div style=”background-color:blue;”>さしすせそ</div>
</div>
<h4>display:box;を指定したフレキシブルボックス</h4>
<div style=”background-color:yellow; padding:5px; display:box; display:-moz-box; display:-webkit-box;“>
<div style=”background-color:red;”>あいうえお</div>
<div style=”background-color:green;”>かきくけこ</div>
<div style=”background-color:blue;”>さしすせそ</div>
</div>
このフレキシブルボックスに box-orientプロパティで horizontal を指定すると、ボックス内の子ボックスが水平に配置されます。
また、vertical を指定すると、ボックス内の子ボックスが垂直に配置されます。
inline-axisとblock-axisは、
ライティングモードに依存するキーワードです。
英語や日本語の場合には、ボックス内の子ボックスがそれぞれ水平と垂直に配置されます。
div.sample1 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
box-orient:horizontal;
}
div.sample2 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
box-orient:vertical;
}
div.sample3 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
box-orient:inline-axis;
}
div.sample4 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
box-orient:block-axis;
}
div.aka {background-color:red;}
div.midori {background-color:green;}
div.ao {background-color:blue;}
<html>
<head>
<link rel=”stylesheet” href=”sample.css”
type=”text/css”>
</head>
<body>
<h4>box-orient:horizontal を指定</h4>
<div class=”sample1″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:vertical を指定</h4>
<div class=”sample2″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:inline-axis を指定</h4>
<div class=”sample3″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:block-axis を指定</h4>
<div class=”sample4″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
</body>
</html>
div.prefix_sample1 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
-moz-box-orient:horizontal;
-webkit-box-orient:horizontal;
-o-box-orient:horizontal;
-ms-box-orient:horizontal;
}
div.prefix_sample2 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
-moz-box-orient:vertical;
-webkit-box-orient:vertical;
-o-box-orient:vertical;
-ms-box-orient:vertical;
}
div.prefix_sample3 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
-moz-box-orient:inline-axis;
-webkit-box-orient:inline-axis;
-o-box-orient:inline-axis;
-ms-box-orient:inline-axis;
}
div.prefix_sample4 {
background-color:yellow; padding:5px;
display:-moz-box;
display:-webkit-box;
display:-o-box;
display:-ms-box;
-moz-box-orient:block-axis;
-webkit-box-orient:block-axis;
-o-box-orient:block-axis;
-ms-box-orient:block-axis;
}
div.aka {background-color:red;}
div.midori {background-color:green;}
div.ao {background-color:blue;}
<html>
<head>
<link rel=”stylesheet” href=”sample.css”
type=”text/css”>
</head>
<body>
<h4>box-orient:horizontal を指定</h4>
<div class=”prefix_sample1″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:vertical を指定</h4>
<div class=”prefix_sample2″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:inline-axis を指定</h4>
<div class=”prefix_sample3″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
<h4>box-orient:block-axis を指定</h4>
<div class=”prefix_sample4″>
<div class=”aka”>あいうえお</div>
<div class=”midori”>かきくけこ</div>
<div class=”ao”>さしすせそ</div>
</div>
</body>
</html>