私は最近、フレックスボックスで初めてプレイしています。一般的に、それは大変素晴らしいことです。私は、しかし、私は任意の垂直方向の間隔をラップしているフレックスアイテムを与えるように見えることができない問題が最近発生しました。ラップされたフレックスボックスアイテムに垂直スペーシングを与える
私が使用して試してみた:
align-content: space-between;
が、これは何もしていないようです。私が行った読書から、私のフレックスコンテナが含まれている要素よりも背が高いならば、これはうまくいくように見えるでしょう(そうでしょうか?)もしそうなら、フレックスコンテナの高さを設定する必要はありません。フレックスボックスを使用する目的を破るように見えるでしょうか?
この作業を行うために私が考えることができる唯一の方法は、内部の要素にボトムマージンを与えることですが、これも目的を破るようです。
がうまくいけば、私はかなり明白何か欠けている - ここでcodepenへのリンクです: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;
}
また
http://codepen.io/lordchancellor/pen/pgMEPz
を、ここに私のコードです
EDIT - ちょっと詳しく説明します十分に十分にそれを言います。
私の大規模なプロジェクトでは、フレックスボックスを使用して行内に配置されたブロックレベルの要素がいくつかあります。しかしながら、ユーザが画面の幅を縮小する可能性があるので、ある程度の応答性が必要である。この時点で、私は自分の要素が積み重なるようにしたい(したがってラップ)。しかし、要素が積み重なり始めると、それらはすべて垂直方向に触れているので、そこには間隔が必要です。
これを解決するには、上下のマージンが唯一の方法かもしれませんが、これを達成するためにフレックスボックス中心の方法があるのだろうかと思っていました。
2行後に 'flex-wrap:wrap;'で上書きされるので、no wrapはタイプミスのようです。 – tenor528
私の大きなプロジェクトからこのコードスニペットを取り上げたので、あなたは本当に正しいです、nowrapはばかげたタイプミスでした! – lordchancellor
質問は今編集されていますが、実際に残っているのは、親がそれらを収容するのに十分な幅を持っているためです。 –