У меня есть интересная дилемма, у меня есть макет, который состоит, если контейнер с 9 div внутри. Каждый div имеет класс column-1, column-2 или column-3.
<div class="grid cols-3">
<div class="col column-1">
column-1
</div>
<div class="col column-2">
column-2
</div>
<div class="col column-3">
column-3
</div>
<div class="col column-1">
column-1
</div>
<div class="col column-2">
column-2
</div>
<div class="col column-3">
column-3
</div>
<div class="col column-1">
column-1
</div>
<div class="col column-2">
column-2
</div>
<div class="col column-3">
column-3
</div>
</div>
Что мне нужно сделать, это разбить эти 9 делителей на 3 столбца по 3 деления с одним и тем же классом.
Я могу сделать это, используя CSS Grid, но мне нужно также создать запасные варианты для браузеров, которые еще не поддерживают GRID. Вот где я борюсь.
Пример разметки, с которой я работаю, находится здесь: https://codepen.io/kirstyburgoine/pen/LmXGZJ
Ограничением этого проекта является то, что разметка не может быть изменена каким-либо образом, поэтому это должно быть сделано с помощью CSS (или, возможно, javascript, если это единственный путь).
Я думал об использовании flexbox, настройке flex-direction: column
, а затем установлении порядка в каждом классе. Например: .column-1 { order: 1; }
, .column-2 { order: 2; }
, .column-3 { order: 3; }
. Это привело их всех в правильный порядок, но, конечно, все они были в одном столбце вместо 3, и я не вижу способа разбить столбец на новый столбец с помощью flex. (
У кого-нибудь есть идеи?