当行项目数变化时使用 Flexbox "justify-content: space-between"
Using Flexbox "justify-content: space-between" when number of row items varies
目前,我正在使用 Flexbox justify-content: space-between
在集合页面上水平对齐项目。
但是,并非所有集合都有足够的项目来填满一行。在这种情况下,我希望前两个项目与集合页面上的前两个项目处于相同的水平位置,并且有足够的项目来填满一行。
我可以在每个项目上使用边距而不是使用 justify-content: space-between
,但我希望有一种方法可以使用 Flexbox 解决这个问题。
.flex-container {
display: flex;
justify-content: space-between;
margin-bottom:10px;
}
.item {
height:20px;
width:20px;
background:red;
}
// some collections pages have enough items to fill a row like this
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
// other collections pages don't have enough items to fill a row and have this situation
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
</div>
如果不使用大量变通方法,就不可能使用 flexbox。
而是使用显示网格。
.flex-container {
display: grid;
grid-template-columns: repeat(4, 1fr)
}
.item {
height:20px;
width:20px;
background:red;
}
// some collections pages have enough items to fill a row like this
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
// other collections pages don't have enough items to fill a row and have this situation
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
</div>
目前,我正在使用 Flexbox justify-content: space-between
在集合页面上水平对齐项目。
但是,并非所有集合都有足够的项目来填满一行。在这种情况下,我希望前两个项目与集合页面上的前两个项目处于相同的水平位置,并且有足够的项目来填满一行。
我可以在每个项目上使用边距而不是使用 justify-content: space-between
,但我希望有一种方法可以使用 Flexbox 解决这个问题。
.flex-container {
display: flex;
justify-content: space-between;
margin-bottom:10px;
}
.item {
height:20px;
width:20px;
background:red;
}
// some collections pages have enough items to fill a row like this
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
// other collections pages don't have enough items to fill a row and have this situation
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
</div>
如果不使用大量变通方法,就不可能使用 flexbox。 而是使用显示网格。
.flex-container {
display: grid;
grid-template-columns: repeat(4, 1fr)
}
.item {
height:20px;
width:20px;
background:red;
}
// some collections pages have enough items to fill a row like this
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
// other collections pages don't have enough items to fill a row and have this situation
<div class="flex-container">
<div class="item"></div>
<div class="item"></div>
</div>