css - 需要避免与 justify-content 之间的间距:子 div flex wrap 后最后一个完整行的空格
问题描述
所以我设计了一个使用 flex-box 属性的组件。这是它的结构
.units {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
overflow-y: scroll;
height: auto;
}
.unit {
height: 5.55rem;
width: 5.8rem;
background: #28a74520;
border-radius: 5px;
padding: 0.5rem;
margin-bottom: 0.75rem;
}
我的理解是,由于units
具有justify-content
to的属性space-between
,它始终保持它,但是,在unit
最后一行中子 div 数量较少的情况下,之间的间距变得尴尬和夸张。我宁愿有最后一行flex-start
或没有空间的东西,我该如何实现?
解决方案
有2个解决方案:
1-添加一个额外的框,如下所示,并将最后一个框的可见性设置为隐藏:
<div class="unit"></div>
.unit:last-child {
visibility: hidden;
}
2- 使用 CSS 网格:
.unit-list {
display: grid;
grid-template-columns: repeat(5, 1fr);
grid-gap: 20px;
}
如果盒子是动态的,那么 flexbox 对于这种情况可能不是一个好的选择。
推荐阅读
- ruby-on-rails - 如何通过可执行文件运行我的 ruby on rails 项目?
- python - Python 3.x - 如何从需要参数的函数中返回值
- google-colaboratory - 当我在 colab 上运行 fairseq 命令行结构时,我总是得到“返回非零退出状态 2”
- excel - Excel AverageIF:平均给定类型的前 X 个单元格
- qt - 如何使用 PyQt 中的样式表将小部件置于前面?
- r - 读取具有多个分隔符的 txt 文件
- javascript - 如何在 oracle apex 18 中编辑交互式网格(带有复杂的 sql 查询)?
- lua - 为什么在遍历表时会出现这种“尝试调用表值”?
- scala - @Scheduled 的 SpringIO 不能在 scala 中工作?
- python - 有没有办法将小时 '' 1-5-6 '' 变成 '' 01-05-06 " ?(只是一个例子)