Я недавно играл с Flexbox в первый раз и, в общем, это абсолютно потрясающе. Недавно я столкнулся с проблемой, когда я не могу представить гибкие элементы, которые обертывают любые вертикальные интервалы.Давление обернутых элементов гибкой ячейки вертикальное расстояние
Я попытался с помощью:
align-content: space-between;
, но это, кажется, не делать ничего. Из прочтения, которое я сделал, это будет работать только в том случае, если мой контейнер flex выше, чем содержащиеся в нем элементы (это правильно?) Если это так, то мне не нужно будет устанавливать высоту для моего гибкого контейнера, что казалось бы, победил цель использования flexbox?
Единственный способ, с помощью которого я могу придумать эту работу, - дать нижний край элементам внутри, но опять же это, похоже, победит цель.
Надеюсь, я что-то довольно очевидное отсутствие - вот ссылка на codepen: http://codepen.io/lordchancellor/pen/pgMEPz
Кроме того, вот мой код:
HTML:
<div class="container">
<div class="col-sm-12">
<h1>Flexbox Wrapping</h1>
<div class="flexContainer">
<div class="flexLabel">This is a flex label</div>
<a class="btn btn-primary">Button 1</a>
<a class="btn btn-warning">Button 2</a>
<a class="btn btn-success">Button 3</a>
</div>
</div>
</div>
CSS:
.flexContainer {
display: flex;
flex-wrap: wrap;
align-items: center;
align-content: space-between;
justify-content: center;
}
.flexContainer .flexLabel {
flex-basis: 150px;
flex-shrink: 0;
}
РЕДАКТИРОВАТЬ - Просто собираюсь добавить здесь немного больше деталей, так как я не уверен, что я p используя его достаточно хорошо.
В моем более крупном проекте у меня есть элементы уровня блока, которые расположены в строке с использованием flexbox. Тем не менее, требуется некоторая отзывчивость, поскольку пользователь может уменьшить ширину экрана. На этом этапе я хочу, чтобы мои элементы начали складываться (следовательно, обертывание). Однако, когда элементы начинают складываться, все они касаются вертикально, где я хочу, чтобы между ними было расстояние.
Похоже, что верхние и нижние поля могут быть единственным способом разрешить это - однако мне было интересно, есть ли способ, основанный на использовании flexbox.
Нет обертки, похоже, опечатка, хотя из-за того, что она перезаписана двумя строками позже с помощью 'flex-wrap: wrap;' – tenor528
Да, вы абсолютно правы, nowrap был идиотской опечаткой, поскольку я снял этот фрагмент кода из моего более крупного проекта ! – lordchancellor
Вопрос теперь отредактирован, но факт остается фактом, что элементы не обертываются, потому что родительский достаточно широкий, чтобы разместить их. –