html - 如何使用 grid-template-areas 在全视口高度构建一个 3 x 3 tile 的 CSS 网格?
问题描述
如何在不更改 DOM 顺序的情况下实现此布局https://ibb.co/Y8TQLcC?我被网格模板区域困住了。
body {
margin: 0;
}
* {
box-sizing: border-box;
}
.parent {
display: grid;
grid-template-areas:
"one three";
"two"
}
.one {
grid-area: one;
border: 1px solid;
}
.three {
grid-area: three;
border: 1px solid;
}
.two {
grid-area: two;
border: 1px solid;
}
<div class="parent">
<div class="one">one</div>
<div class="three">three</div>
<div class="two">two</div>
</div>
解决方案
您所需的布局是基于 3 x 3 瓦片的全视口高度的网格布局。
为了实现这一点,您必须相应地修复网格容器元素.parent
grid-template-areas。
此外,使用视口百分比长度单位height
设置为.parent
视口的 100% : vh
.parent {
display: grid;
height: 100vh;
grid-template-areas:
"one one three"
"one one three"
"two two three";
}
推荐阅读
- python - 在后台主机上运行python程序时mininet程序执行时间的差异
- r - 将传单导出到针织文档中的闪亮地图
- c++ - 从二进制文件中获取数据
- c# - Xamarin 使用 Microsoft.Extensions.DependencyInjection 形成依赖注入
- ios - SwiftUI DatePicker -- 根本不允许日期?
- cocoa - 侧边栏自动调整以适应系统偏好中的图标大小变化
- c - 应该进行哪些更改才能在屏幕上生成以下图案?***** **** *** ** *
- node.js - 我无法安装包 quick.db
- java - 在 Hibernate 中是否可以使用可选的 ElementCollections
- python - 如何使用变量的值而不是数字