204 字
1 分钟
网格布局具体实现

需求#

类似下图的效果:

1.gif

需求分析#

2.gif

这种就是网格布局

父容器的宽自适应,子容器的宽计算公式为 (100% - (n - 1) * 24) / n 。如果页面宽度大于1280px,n等于5,小于1280px时,n等于4,页面最小宽度是960px;

解决方案#

Grid布局#

教程看这里:阮一峰grid布局教程

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<style>
.parent {
display: grid;
grid-template-columns: repeat(5, 1fr);
grid-row-gap: 24px;
grid-column-gap: 24px;
}
.children {
background-color: antiquewhite;
height: 20px;
}
@media screen and (max-width: 1280px) {
.parent {
grid-template-columns: repeat(4, 1fr);
}
}
</style>
<body>
<div class="parent">
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
<div class="children">
<div class="children-content"></div>
</div>
</div>
</body>
</html>
网格布局具体实现
https://nollieleo.github.io/posts/网格布局具体实现/
作者
翁先森
发布于
2020-10-14
许可协议
CC BY-NC-SA 4.0