Aynı genişlikte birkaç öğe içeren flexbox kullanmak istiyorum. Bu esnek kutunun, uzayı uzaydan ziyade eşit olarak dağıttığını fark ettim. ÖrneğinEsnek kutu öğeleri aynı boyutta nasıl oluşturulur?
:
.header {
display: flex;
}
.item {
flex-grow: 1;
text-align: center;
border: 1px solid black;
}
<div class="header">
<div class="item">asdfasdfasdfasdfasdfasdf</div>
<div class="item">z</div>
</div>
ilk öğenin ikinciden çok daha büyük olduğunu. 3 öğe, 4 öğe veya n öğem varsa bunların hepsinin, öğe başına eşit miktarda alanla aynı satırda görünmesini istiyorum.
Herhangi bir fikrin var mı?
http://codepen.io/anon/pen/gbJBqM
Bu doğru değil. Varsayılan esnek değer "flex: 0 1 auto". Bu, flex: 1 'ayarının 'flex: 1 1 auto' ile sonuçlanacağı anlamına gelir. Bu işe yaramaz. Doğru cevap 'flex: 1 1 0' tarafından belirtildiği gibi Adam –
@ r.sendecky Hayır, yanlış olan sensin. Benim cevabımda belirttiğim gibi, flex: 1 'inin shorthand'i, flex: 1 1 0 ** değil ** 'flex: 1 1 auto' ile sonuçlandığını iddia ediyor. ['Flex shorthand' bölümü] altındaki resmi W3 şartnamesine göz atın (https://www.w3.org/TR/css-flexbox-1/#flex-property): "flex-based" olduğunda esnek kısa yoldan atlanmış, belirtilen değeri "0" değil, "otomatik" değil. Rastgele downvote için teşekkürler. –
@ r.sendecky - Ayrıca, bu örneği görselleştirmek için [bu örnekte] (https://jsfiddle.net/o25wto2d/) oluşturdum. –