Правда, чтобы этот макет был отзывчивым, вы должны использовать JS, чтобы переместить их.Подобно Pinterest, эти «плитки» - просто братья и сестры.
Однако вы можете использовать многостолбцовый подход .проблема в том, что вам нужен алгоритм для равномерного распределения столбцов между столбцами.Pinterest сходит с рук с помощью элементов с абсолютным позиционированием.
для этого вам нужно либо сделать это на стороне сервера (но не знать, как долго контент, чтобы вы могли получить несбалансированные столбцы), либо выполнить некоторые безумные манипуляции с DOM (вы знаете размеры, но работа в DOM идет медленно)
<ul>
<li class="a3">content</li>
<li class="a3">content</li>
<li class="a2">content</li>
<li class="a1">content</li>
<li class="a3">content</li>
</ul>
<ul>
<li class="a1">content</li>
<li class="a2">content</li>
<li class="a1">content</li>
<li class="a3">content</li>
<li class="a2">content</li>
</ul>
ul{
float:left;
width:250px;
}
li{
background:#ccc;
margin: 0 20px 20px 0;
}
/*let's simulate varying content height*/
.a1{
height:150px;
}
.a2{
height:300px;
}
.a3{
height:450px;
}