Как заставить разделение на равные части с помощью flexbox
в структуре dom, как это:
<div id="1">
<div id="2">
<div id="3">
</div>
</div>
<div id="4">
<div id="5">
</div>
</div>
</div>
С css, указанным как:
#1{
display: flex;
flex-direction: row;
}
#2, #4{
flex: 1;
}
divs с id 2 и 4 будут равномерно распределены до тех пор, пока сумма ширины содержимого в id 3 и 5 не превысит ширину dom с id 1.
когда сумма превышает ширину, они распределены неравномерно, и один с более широким содержанием займет больше ширины. Как я могу заставить 2 и 4 занять даже ширину с помощью flexbox даже в таких дела?
Я не хочу использовать спецификацию ширины в процентах. Я хочу придерживаться flexbox.
1 ответов
Если вы хотите, чтобы элементы росли или сжимались независимо от его содержимого, укажите ноль флекс основе:
flex-basis: 0;
однако, демо неправильно работает в Chrome: большое изображение растягивается это родительский контейнер независимо от того, что нулевой базис был установлен. В качестве обходного пути можно установить максимальную ширину:
img {
max-width: 100%;
height: auto;
}