Моя цель - создать двухстолбцовый макет с flexbox, в котором первый столбец имеет две строки, а второй столбец имеет один, например:
Настройка flex-basis: 100%
на третьем элементе дает желаемый эффект, но только тогда, когда контейнер flex-direction
равен row
:
Изменение flex-direction
на column
приводит к следующему, если явно не указано значение height
, что невозможно в моем проекте:
Как я могу получить первое изображение без явной установки контейнера height
?
Здесь показан Plunker, иллюстрирующий проблему.
body {
display: flex;
height: 100px;
width: 100px;
}
.container {
display: flex;
flex-direction: column; /* Setting this to `row` gives the expected effect,but rotated */
flex-grow: 1;
flex-wrap: wrap;
/* height: 100%; */ /* Setting this fixes the problem, but is infeasible for my project*/
}
.item {
flex-grow: 1;
}
.one {
background-color: red;
}
.two {
background-color: blue;
}
.three {
background-color: green;
flex-basis: 100%;
}
<div class="container">
<div class="item one"> </div>
<div class="item two"> </div>
<div class="item three"> </div>
</div>