Я хочу создать макет, подобный приведенному ниже:
Левая колонка имеет указанную ширину (например, 30%). Правый столбец имеет любое количество дочерних элементов, которые переполняются вправо. Эти дочерние элементы должны соответствовать высоте левого столбца, не увеличивая ширину родительского элемента.
В данный момент, если дочерних элементов недостаточно, высота правого столбца увеличивается, поэтому дочерние элементы занимаютполная ширина или все дочерние элементы соответствуют ширине, поэтому они недостаточно высоки.
Для этого необходимо:
- Поддерживать пропорции всех дочерних элементов
- Подогнать ростлевого столбца точно
- горизонтальное переполнение
.container-a,
.container-b {
display: flex;
border: 2px solid red;
}
.container-a {
flex-direction: row;
padding: 10px;
}
.flex-child {
flex: 1;
margin-right: 10px;
}
.flex-child img {
width: 100%;
}
.first-child {
max-width: 40%;
}
<div class="container-a">
<div class="flex-child first-child">
<img src="https://picsum.photos/800/450">
</div>
<div class="flex-child">
<div class="container-b">
<div class="flex-child">
<img src="https://picsum.photos/800/450?random">
Some text content
</div>
<div class="flex-child">
<img src="https://picsum.photos/800/450?random">
Some text content
</div>
<div class="flex-child">
<img src="https://picsum.photos/800/450?random">
Some text content
</div>
</div>
</div>
</div>