Я хочу, чтобы мои данные упорядочивались в столбцах (сверху вниз, слева направо), и каждый заголовок внутри данных должен начинать новый столбец. Существует три ограничения:
- Должен использовать flex (мне нужно использовать функцию, специфичную для flex)
- Невозможно сгруппировать данные (например, обернуть все элементы данных внутри одного div)
- Невозможно установить фиксированную высоту
Мой вопрос заключается в том, как заставить разрывы столбцов внутри макета оболочки flex-flow: column
?
.grid {
display: flex;
flex-direction: column;
flex-wrap: wrap;
}
.grid .head {
width: 25%;
background: orange;
border-bottom: thin dotted;
}
.grid .data {
width: 25%;
background: yellow;
border-bottom: thin dotted;
}
/* my attempt to solve this */
.grid {
height: 76px;
}
<div class="grid">
<div class="head">Column 1 (3 items)</div>
<div class="data">item 1-1</div>
<div class="data">item 1-2</div>
<div class="data">item 1-3</div>
<div class="head">Column 2 (4 items)</div>
<div class="data">item 2-1</div>
<div class="data">item 2-2</div>
<div class="data">item 2-3</div>
<div class="data">item 2-4</div>
<div class="head">Column 3 (2 items)</div>
<div class="data">item 3-1</div>
<div class="data">item 3-2</div>
<div class="head">Column 4 (1 items)</div>
<div class="data">item 4-1</div>
</div>