html - 根据数量子元素展开 CSS 网格项
问题描述
我知道可以使用以下方法设置网格项跨越的列数:
grid-column: span 2;
但是只有在有可用空间的情况下,是否可以让 CSS 网格自动执行此操作?
所以在下面的模型中,如果有三个项目,它们每个占据一整列,但如果有两个,最后一个项目将扩大以填满空列。
.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 25px;
}
.grid-item {
padding: 50px;
color: white;
background-color: lightpink;
}
<div class="grid">
<div class="grid-item"></div>
<div class="grid-item"></div>
<div class="grid-item"></div>
</div>
<br />
<hr />
<br />
<div class="grid">
<div class="grid-item"></div>
<div class="grid-item">I should take up two columns</div>
</div>
解决方案
span 2
您可以使用grid-column: 2 / -1;
. 它说你的网格列应该从第二列开始并且应该跨越直到它有空间(正是你想要的)
.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 25px;
}
.grid-item {
padding: 50px;
color: white;
background-color: lightpink;
}
.grid-item-2 {
grid-column: 2 / -1;
}
<div class="grid">
<div class="grid-item"></div>
<div class="grid-item"></div>
<div class="grid-item"></div>
</div>
<br />
<hr />
<br />
<div class="grid">
<div class="grid-item"></div>
<div class="grid-item grid-item-2">I should take up two columns</div>
</div>
推荐阅读
- sql - SSRS 2017 无法将参数值从 int64 转换为 int32
- xamarin.forms - 区分按钮单击 xamarin.forms
- tensorflow - TensorflowJS:什么是参数过滤器?
- google-apps-script - 通过 REST API 部署 Google Apps 脚本时出现 404 错误
- python - 想在 python 中使用机器学习来增加质心点。?
- linux - 每行搜索一次匹配
- husky - Husky/lint-staged 预提交格式问题
- spring-tools-4 - 在 Eclipse Spring 首选项中选中“禁用自动配置检测”有什么后果?
- java - Java 如何处理低级 Socket 网络逻辑
- apache-nifi - 面向记录的 InvokeHTTP 处理器