css - 角度 *ngFor 引导列最后一个溢出到下一列
问题描述
我有不同大小的内容要ngFor
循环并填充响应式 3 列(内容需要向下流动而不是溢出)模态体。第一列和第二列中的最后一项被截断并流向下一列的开头。如何将每个分组的内容保持在一起?有没有办法检查此列的内容是否不适合此列的底部,然后将整个内容移至下一个?这是响应式的,因为随着宽度的缩小,它将转换为 2 列,然后转换为 1 列,因此它需要保持动态填充循环。
代码:
<div class="modal-body">
<div class="m-4">
<div class="columns">
<div class="green" *ngFor="let cat of categories;let index = index;">
<div class="row no-gutters justify-content-left text-left">
<span class="cat-title">title {{index}}</span>
<span class="cat-subtitle" *ngIf="cat.subtitle"> subtitle</span>
</div>
<div class="row no-gutters justify-content-left text-left nom-name" *ngIf="cat.iPicked">
<span>winner picked</span>
</div>
<hr/>
</div>
</div>
</div>
</div> <!-- end modal body -->
CSS:
.ballot-body {
height: 600px;
}
@media only screen and (min-width: map-get($grid-breakpoints, xs)) {
#title {
font-size: medium;
}
.columns {
columns: 1;
}
-- 随着断点的增长,列增长到 2,然后增长到 3
解决方案
你可以使用CSS GRID来解决这个问题,.columns
类应该有一个display: grid;
属性。
.columns {
width: 1000px;
margin: 0 auto;
display: grid;
grid-template-rows: 1fr 1fr 1fr;
grid-gap: 30px;
grid-auto-flow: column;
grid-template-columns: 1fr 1fr 1fr;
}
.features-1, .features-2, .features-3 {
background: red;
}
<div class="columns">
<div class="features-1">
Feature 1
</div>
<div class="features-2">
Feature 2
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
<div class="features-3">
Feature 3
</div>
</div>
推荐阅读
- image - ASP.NET Core Web API - 保护图像服务
- android - 重构为 AndroidX 后布局预览不起作用
- postgresql - 在 Kubernetes 部署期间创建数据库模式
- javascript - 在角度 JS 中设置日期格式
- javascript - 从字符串中删除除 ' 字符之外的所有标点符号
- android - 如何制作自定义形状按钮?
- python - pyqt:如何根据点击次数将按钮与不同的功能联系起来
- .net - VB.NET - 读取串行端口时出现问题 - “等待激活”状态
- recursion - 是否可以使用延续传递样式将此递归函数转换为尾递归?
- php - 如何每 50 分钟运行一次 cronjob?