Я пытаюсь создать горизонтальную компоновку фиксированных высот, элементов встроенного блока, содержащих в ней столбцы CSS.Создание многоколоночного контейнера inline-block для соответствия ширине содержимого
article {
-webkit-column-width: 200px;
-moz-column-width: 200px;
column-width: 200px;
-webkit-column-gap: 1em;
-moz-column-gap: 1em;
column-gap: 1em;
-moz-column-fill: auto;
column-fill: auto;
height: 350px;
display: inline-block;
}
Проблема заключается в том, что ширина инлайн-блочных элементов неправильной установки (столбцы занимают меньше/больше места, чем контейнер обеспечивает) - кажется, что ширина соответствует содержанию, прежде чем он превращается в столбцы (в Chrome - в контейнерах результатов находятся друг над другом) или подходит для одного столбца (в Firefox и IE - в контейнерах результатов перекрываются).
Пример (проверьте ширину элемента статьи): http://codepen.io/anon/pen/yNQdVE
Единственное решение, которое я придумал, чтобы сделать контейнер подходит один столбец и использовать JS, чтобы установить ширину с шириной полосы прокрутки. Кажется, что он работает нормально во всех трех браузерах, которые я тестировал.
Пример: http://codepen.io/anon/pen/gpQNWg
Есть ли чистый CSS решение этой проблемы?
Я не уверен, что правильно понимаю, но вы хотите, чтобы ваши статьи выстраивались рядом друг с другом в горизонтальной компоновке, к сожалению, они обертываются, когда они становятся слишком длинными? Одно из решений, которое заставляло их сидеть бок о бок, - дать вашему «телу» свойство «white-space: nowrap» 'css. Поскольку все ваши статьи являются «display: inline-block», они считаются интервалом в этой точке. 'white-space: nowrap;' гарантирует, что весь текст не будет завершен, если он попадет в конец контейнера. – ntgCleaner
Да, вы это поняли. Я знаю, что мне нужно установить 'white-space: nowrap; ' для предотвращения упаковки содержимого. Дело в том, что неправильная ширина элементов встроенного блока ломает макет. –