flex-growプロパティは、フレックスコンテナ内のアイテムの伸び方の比率を指定する際に使用します。
フレックスコンテナの横幅に対して、フレックスアイテムの横幅の合計が短くて余白がある場合、
flex-growプロパティの指定に応じた比率でフレックスアイテムが自動的に伸ばされて余白が埋められます。
(flex-shrinkプロパティの逆の働きをすると考えると理解しやすいかもしれません。)
flex-growプロパティでは、各フレックスアイテムの伸び方の比率を、正の数値で相対的に指定します。
flex-growプロパティの値に、負の数値は指定できません。
尚、
flex-growプロパティ・
flex-shrinkプロパティ・
flex-basisプロパティについては、
各プロパティで個別に指定するのではなく、
これら3つの値をまとめて指定できるflexプロパティを使用することが推奨されています。
ul.sample_menu {
display:-webkit-flex;
display:flex;
width:100%;
list-style-type:none;
margin:0; padding:0;
}
ul.sample_menu a {
display:block;
margin:2px; padding:10px; font-size:10px;
background-color:#66cc99; color:#ffffff;
text-align:center;
text-decoration:none;
}
<ul class=”sample_menu”>
<li style=”flex-basis:50px; flex-grow:1;”><a href=”#”>メニュー1</a></li>
<li style=”flex-basis:50px; flex-grow:2;”><a href=”#”>メニュー2</a></li>
<li style=”flex-basis:50px; flex-grow:3;”><a href=”#”>メニュー3</a></li>
<li style=”flex-basis:50px; flex-grow:4;”><a href=”#”>メニュー4</a></li>
</ul>
flex …… フレックスコンテナ内のアイテムの幅についてまとめて指定する
flex-basis …… フレックスコンテナ内のアイテムの基本幅を指定する
flex-shrink …… フレックスコンテナ内のアイテムの縮み方の比率を指定する
flex-grow …… フレックスコンテナ内のアイテムの伸び方の比率を指定する