funnywheel
PHP & JS
- Регистрация
- 6 Авг 2010
- Сообщения
- 255
- Реакции
- 219
- Автор темы
- #1
Есть задача - организовать многоколоночный вывод контента на страницу. Контент - условно посты в блоге. У постов, естественно, различные:
- изображения ( thumbnail'ы )
- количество символов в заголовке
Дополнительное условие - работает AJAX-подгрузка постов.
Первая мысль - сделать на masonry.js - сразу-же сложности:
- масонри необходимо повторно инициализировать для контейнера
- масонри перестраивает посты в одному богу известном порядке
Мысль вторая - флексбокс (сейчас буду ее тестить, если кто-то сейчас предложит решение или направит в нужную сторону будет круто, если нет - обновлю топик)
Мысль третья - column-count - но он у нас выводит элементы сначала заполняя 1-ю колонку, потом 2-ю и т.д., а мне нужно, чтобы он ложил первый элемент в 1-ю колонку, 2-й во вторую, 3-й в 3-ю, а потом переходил на следующий "ряд", т.е. 4-й элемент в 1-ю колонку, 5-й во 2-ю и т.д.
Вот состряпал Для просмотра ссылки Войдиили Зарегистрируйся в котором можно посмотреть на структуру выводимых элементов. Там прописан column-count. Если есть мысли - форкайте, буду признателен.
PS: Вариант с float'ами, инлайнами не подходит, т.к. элементы имеют фиксированную ширину но переменную высоту (для альтернативно-одаренных уточняю)
- изображения ( thumbnail'ы )
- количество символов в заголовке
Дополнительное условие - работает AJAX-подгрузка постов.
Первая мысль - сделать на masonry.js - сразу-же сложности:
- масонри необходимо повторно инициализировать для контейнера
- масонри перестраивает посты в одному богу известном порядке
Мысль вторая - флексбокс (сейчас буду ее тестить, если кто-то сейчас предложит решение или направит в нужную сторону будет круто, если нет - обновлю топик)
Мысль третья - column-count - но он у нас выводит элементы сначала заполняя 1-ю колонку, потом 2-ю и т.д., а мне нужно, чтобы он ложил первый элемент в 1-ю колонку, 2-й во вторую, 3-й в 3-ю, а потом переходил на следующий "ряд", т.е. 4-й элемент в 1-ю колонку, 5-й во 2-ю и т.д.
Работает так:
1 4 7
2 5 8
3 6 9
А нужно:
1 2 3
4 5 6
7 8 9
1 4 7
2 5 8
3 6 9
А нужно:
1 2 3
4 5 6
7 8 9
Вот состряпал Для просмотра ссылки Войди
PS: Вариант с float'ами, инлайнами не подходит, т.к. элементы имеют фиксированную ширину но переменную высоту (для альтернативно-одаренных уточняю)