我有4列CSS网格布局中的div元素列表。 div元素设置为100%宽度,填充顶部为100%,以保持1:1的宽高比。这是一种常见的技术,如下所示:https://stackoverflow.com/a/6615994/7949834保持流体CSS网格布局中元素的纵横比
这适用于Firefox,但不适用于Chrome。在Chrome中,元素不占用网格容器内的任何空间。这是什么原因?
ul {
border: 2px solid red;
display: grid;
grid-gap: 5%;
grid-template-columns: auto auto auto auto;
list-style-type: none;
}
div {
background-color: green;
padding-top: 100%;
width: 100%;
}
<ul>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
<li>
<div></div>
</li>
</ul>
https://jsfiddle.net/ab0asum3/
我想你已经明白了这一点。谢谢。 – blacklight
我仍然在学习CSS网格,所以我可能是错的。在没有明确定义的高度的情况下在其他元素上使用百分比vakues通常是有问题的。这似乎解决了这个问题。 –