У меня есть flexbox с flex-direction: row
. Дочерние элементы имеют набор min-width
. Когда окно сокращается до точки, где достигается min-width
, элементы начинают переполнять гибкий контейнер.
.parent {
display: flex;
flex-direction: row;
background-color: red;
}
.child {
min-width: 100px;
flex-basis: 0px;
flex-grow: 1;
margin: 5px;
height: 100px;
background-color: blue;
}
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
https://jsfiddle.net/4t8029q8/
Есть ли способ заставить контейнер растягиваться, чтобы содержать элементы, не устанавливая явное значение min-width
для родителя? Это обеспечивает поведение, которого я пытаюсь достичь, но оно слишком жесткое, чтобы вместить переменное количество предметов.
.parent {
display: flex;
flex-direction: row;
background-color: red;
min-width: 330px
}
.child {
min-width: 100px;
flex-basis: 0px;
flex-grow: 1;
margin: 5px;
height: 100px;
background-color: blue;
}
<div class="parent">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
https://jsfiddle.net/4t8029q8/1/
Это то, что я хочу, чтобы flex-элементы никогда не переполняли flex-контейнер, даже если это вызывает необходимость горизонтальной прокрутки страницы.
ПРИМЕЧАНИЕ: у меня есть другая более сложная логика, требующая flex-basis: 0px
и flex-grow: 1
, поэтому эти строки не могут быть удалены.