Je ne comprends pas le flex-grow propriété?
Je crains que je ne doit pas comprendre flex-grow. Si vous sautez à la JSFiddle - dessous de la façon dont je le comprends, .big
doit être trois fois la taille des autres .flex-item
. Comme vous pouvez le voir, pas si. Pourquoi?
CSS:
.flex-container {
display:flex;
padding:0 20%;
}
.flex-item {
flex-grow:1;
list-style-type:none;
border:1px solid black;
}
.big {
flex-grow:3;
}
HTML:
<ul class="flex-container">
<li class="flex-item big">Why isn't this exactly three times the size of the other one?</li>
<li class="flex-item">Not really working like expected I don't think...</li>
</ul>
Vous devez vous connecter pour publier un commentaire.
Vous devez spécifier une valeur pour
flex-basis
ainsi (ne pas spécifier cette propriété entraîne un comportement similaire à l'aide de la valeur initiale, auto).Ajouter
flex-basis: 0;
pour les enfants ou tout simplement avec le abréviation:http://codepen.io/anon/pen/JEcBa
Flex-grow est souvent mal compris de cette façon. Flex-grow contrôle uniquement la façon dont le reste de l'espace est réparti entre la flex articles, et non pas comment ils sont gros en proportion les uns des autres.
Ce que vous recherchez est vraiment juste ceci:
Voir aussi
Les auteurs sont invités à une souplesse de contrôle à l'aide de la fonction "flex" abréviation plutôt qu'avec flex-grow directement, comme l'abréviation correctement réinitialise quelconque composants pour tenir compte des utilisations les plus courantes.
https://drafts.csswg.org/css-flexbox/#propdef-flex-grow
C'est un exemple de travail
http://codepen.io/anon/pen/VjZYPV