Как создать столбчатый вид в HTML, где объекты расположены горизонтально, а не вертикально?

#html #css #css-multicolumn-layout

#HTML #css #css-multicolumn-layout

Вопрос:

Я создал столбчатый вид, используя свойство CSS column-count . При установке column-count: 3 значения содержимое моей страницы отображается в виде 3 отдельных столбцов без дополнительного вертикального пробела — элементы непрерывны по вертикали, нет дополнительного вертикального пробела или горизонтального правила, которому придерживаются элементы в одной строке. (См. Изображение)

введите описание изображения здесь

Визуально это именно то, что я хотел. Однако, как вы можете видеть, элементы обрабатываются как непрерывный абзац, поэтому элементы расположены вертикально.

 1 | 4 | 7
2 | 5 | 8
3 | 6 | 9
  

Я бы хотел, чтобы это было расположено горизонтально, но сохраняло тот же внешний вид.

 1 | 2 | 3
4 | 5 | 6
7 | 8 | 9
  

Один из способов, который я пробовал, состоял в том, чтобы не использовать column-count и вместо этого дать каждому элементу фиксированную ширину, но все элементы будут придерживаться горизонтального правила, оставляя огромный вертикальный зазор под элементами, если один из элементов в этой строке длиннее остальных.

введите описание изображения здесь

Другой способ, о котором я подумал, состоял в том, чтобы иметь 3 отдельных запроса, и каждый столбец содержал бы результаты 1 из 3 запросов. Однако на мобильных устройствах три столбца становятся одним целым, и поэтому я получаю странную нумерацию на мобильных устройствах.

Есть ли способ сделать это, используя только HTML и CSS?

Комментарии:

1. Только HTML и CSS, нет. Вам понадобится javascript, для этого уже существуют библиотеки, masonry.desandro.com это всего лишь один пример.

Ответ №1:

Вы должны обязательно проверить FlexBox, который включен в css по умолчанию. Проблема должна быть устранена, если вы помещаете все элементы в div, предоставляя ему:

 display: flex;
flex-direction: row;
flex-wrap: wrap;
  

и просто настройка размера и т. Д. по вашему желанию.

Приветствия