我需要创建一个响应式正方形网格。我的网格在它的父级内部,它也是响应式的。我希望我的网格完全适合其父级。我不知道如何实现它并且仍然使用方形单元格。
我知道使元素方形的技巧padding-bottom: 100%,但我不确定如何在这里应用它。此外,我不能只计算单元格的百分比,因为单元格的数量可以改变。
这是我所拥有的:
.container {
width: 400px;
height: 300px;
background: #ff8;
border: 5px solid blue;
}
.grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 10px;
}
.grid > * {
background-color: orange;
}
.grid > *::before {
content: '';
display: block;
padding-top: 100%;
}
<div class="container">
<div class="grid">
<div></div> <div></div> <div></div> <div></div>
<div></div> <div></div> <div></div> <div></div>
</div>
</div>
以下是更好地描述我的目标的图像:
甚至可以做到吗?

