margin: 0 5px
使用しているフレックスボックス項目.item
とコンテナー間の最小距離を設定しますmargin: 0 -5px
。これはハックのようです。この目的を達成するための別のプロパティまたはメソッドはありますか?
#box {
display: flex;
width: 100px;
margin: 0 -5px;
}
.item {
background: gray;
width: 50px;
height: 50px;
margin: 0 5px;
}
<div id='box'>
<div class='item'></div>
<div class='item'></div>
<div class='item'></div>
<div class='item'></div>
</div>
ベストアンサー1
CSSgap
プロパティ:
新しいgap
CSSプロパティマルチカラム、フレックスボックス、グリッドレイアウト用の新しいブラウザで動作するようになりました。(リンク 1;リンク 2)。これはrow-gap
およびの省略形ですcolumn-gap
。
#box {
display: flex;
gap: 10px;
}
CSSrow-gap
プロパティ:
のrow-gap
CSSプロパティフレックスボックスとグリッドレイアウトの両方で、行間にギャップを作成できます。
#box {
display: flex;
row-gap: 10px;
}
CSScolumn-gap
プロパティ:
のcolumn-gap
CSSプロパティ複数列、フレックスボックス、グリッドレイアウトでは、列間にギャップを作成できます。
#box {
display: flex;
column-gap: 10px;
}
例:
#box {
display: flex;
flex-wrap: wrap;
width: 200px;
background-color: red;
gap: 10px;
}
.item {
background: gray;
width: 50px;
height: 50px;
border: 1px black solid;
}
<div id='box'>
<div class='item'></div>
<div class='item'></div>
<div class='item'></div>
<div class='item'></div>
</div>