Добрый день.
Кажется, у меня довольно простой вопрос, но не могу найти ответ.
Есть grid-блок, внутри которого первые два элемента выстраиваются по правилу 2/3 (синий) + 1/3 (желтый), а все остальные (красные) должны занимать 100% ширины. При этом количество и теги красных могут быть разными. В принципе, у меня получается решить эту задачу вот так:
Сам код
.wrapper {
max-width: 800px;
background-color: #e9a058;
margin: 0 auto;
min-height: 300px;
display: grid;
gap: 20px;
grid-template-columns: repeat(3,1fr);
}
.item {
min-height: 30px;
}
.item-blue {
background-color: blue;
grid-column: 1 / span 2;
}
.item-yellow {
background-color: yellow;
grid-column: 3 / span 1;
}
.item-red {
background-color: red;
grid-column: 1 / span 3;
}
Ссылка на codepen
А проблема в том, что теги у красных блоков могут быть разными (и div, и img, и section), поэтому выбрать их по :nth-child не получится. Задавать им явный класс - тоже, т.к. это user-generated контент.
Есть ли какое-то автоматическое решение для этой задачи?