aprenoir
@aprenoir
программный архитектор

Как выводить ленту постов в зависимости от ширины экрана?

Есть задача сделать ленту постов, которая будет динамически подстраиваться под ширину экрана пользователя. Сложность в том, что при достаточно больших разрешениях посты выводятся в 2 колонки, а при уменьшении разрешения - в одну.

Ленту в 2 колонки пробовал сделать поочередным добавлением float left и right в зависимости от четности элемента:

.post:nth-of-type(2n+1) {float: left; width: 50%;}
.post:nth-of-type(2n) {float: right; width: 50%;}


При уменьшении разрешения media убирает float и все идет в одну колонку.

Это решение рабочее, но у него есть существенный минус.В ленте периодически образуются разрывы из-за того, что посты имеют разную высоту и float:left может попасть вправо, а float:right может попасть влево.

Как можно нормально вывести ленту постов под эту задачу только средствами css?
  • Вопрос задан
  • 560 просмотров
Решения вопроса 1
@Adikjoro
Изучи Flex-верстку, не будет никаких проблем. Здесь хорошо все объясняется. Ниже есть интерактивная демонстрация работы flex-свойств.
Насчет кроссбраузерности, в 2017 году, особо можешь не париться, все браузеры стабильно поддерживают, кроме старых версий IE.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы