html - 在 CSS 网格中进行多次拆分
解决方案
我刚刚创建了您需要的示例,但尝试确保您分配正确的名称(而不是 col-x 或 row-y),例如navigation
或sidebar
。
我建议将行数增加一倍,并为左列分配两次行数。grid-template-areas
尤其是在.grid
CSS中看看。
要更改网格在较小设备上的显示方式,您可以@media
在 .grid 类上应用查询来调整grid-*
属性。
下面的这个示例不是最短也不是最聪明的解决方案,但我猜它是最直观的。
.grid {
height: 200px;
display: grid;
grid-template-columns: 80% auto;
grid-template-rows: repeat(6, 1fr);
grid-template-areas:
"col-1-row-1 col-2-row-1-1"
"col-1-row-1 col-2-row-1-2"
"col-1-row-2 col-2-row-2-1"
"col-1-row-2 col-2-row-2-2"
"col-1-row-3 col-2-row-3-1"
"col-1-row-3 col-2-row-3-2"
}
.col-1-row-1,
.col-1-row-2,
.col-1-row-3,
.col-2-row-1-1,
.col-2-row-1-2,
.col-2-row-2-1,
.col-2-row-2-2,
.col-2-row-3-1,
.col-2-row-3-2 {
justify-self: center;
align-self: center;
}
.col-1-row-1 {
grid-area: col-1-row-1;
}
.col-1-row-2 {
grid-area: col-1-row-2;
}
.col-1-row-3 {
grid-area: col-1-row-3;
}
.col-2-row-1-1 {
grid-area: col-2-row-1-1;
}
.col-2-row-1-2 {
grid-area: col-2-row-1-2;
}
.col-2-row-2-1 {
grid-area: col-2-row-2-1;
}
.col-2-row-2-2 {
grid-area: col-2-row-2-2;
}
.col-2-row-3-1 {
grid-area: col-2-row-3-1;
}
.col-2-row-3-2 {
grid-area: col-2-row-3-2;
}
<div class="grid">
<div class="col-1-row-1">Col 1 Row 1</div>
<div class="col-1-row-2">Col 1 Row 2</div>
<div class="col-1-row-3">Col 1 Row 3</div>
<div class="col-2-row-1-1">Col 2 Row 1.1</div>
<div class="col-2-row-1-2">Col 2 Row 1.2</div>
<div class="col-2-row-2-1">Col 2 Row 2.1</div>
<div class="col-2-row-2-2">Col 2 Row 2.2</div>
<div class="col-2-row-3-1">Col 2 Row 3.1</div>
<div class="col-2-row-3-2">Col 2 Row 3.2</div>
</div>
推荐阅读
- binance - Binance Smart Chain 和 Pancake swap 如何处理交易?
- python - 用于时间序列数据的 Pandas Melt 函数
- python - Python Dataframe 计算每日平均值
- regex - Firebase 规则(实时数据库)。检查帖子标题是否包含用户ID
- python-3.x - 如何使用 apply 函数删除具有 z 分数(3 或 -3)的异常值
- postgresql - 如何从 1 小时时间戳表中以更高的日期分辨率(4 小时、1 天、1 周、1 个月 - 每小时、每天。每月)获取 Postgres 记录
- javascript - 有没有办法在同一个 iframe 上向 postMessage 添加多条消息?
- r - 使用 twiddle 生成绘图(内联匿名函数)
- html - 播放视频 instagram 视频链接
- r - 如何在 H2OFrame 中创建新列