Как подстроить блоки по высоте?

Есть 4 блока.
Если уменьшить высоту первого блока, то два блока ниже, по стандарту в верстке будут выстраиваться после высоты самого длинного блока в строке. (первая часть изображения)
Как сделать так, чтобы блоки на второй строке, сразу следовали за блоком, высота у которого меньше? (вторая часть изображения)

a8ef4a1a579d4116b4312237b519c369.jpg
  • Вопрос задан
  • 627 просмотров
Пригласить эксперта
Ответы на вопрос 4
hvdd
@hvdd
Кратко о себе
Если в макете только 2 колонки, то так:
<section class="section"></section>
<section class="section"></section>
<section class="section"></section>
<section class="section"></section>

.section:nth-child(2n + 1) {
    float: left;
    clear: left;
}

.section:nth-child(2n) {
    float: right;
    clear: right;
}

Скриншот
495ac0667002408ab2e5902f778fee09.JPG
Демо на codepen



Если колонок много, то с помощью multicolumn:
.container {
  column-width: 250px; /* Ширина колонки */
  column-gap: 10px;  /* Расстояние между колонками */
}

.item {
  break-inside: avoid; /* Запрещает разрыв блока */
}

Скриншот
878c7317d722403bb2560542d97c6b46.JPG
Демо на codepen
Ответ написан
@YoManYo
*
Ответ написан
Комментировать
1) Через float: left (но не всегда идеально работает)
2) https://masonry.desandro.com/
Ответ написан
kn1ght_t
@kn1ght_t
обернуть левые и правые блоки в родителя?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы