Grid-row-gap 不应用百分比

Grid-row-gap not applying percentage

所以我有一个 4x5 的图像网格,其中图像可以有各种尺寸,但最大为 180x180 像素。

<div class="grid">
    <div class="box 1 a"><img src="./assets/Account-Attempt-4-1.gif"></div>
     ...
    <div class="box 5 d"><img src="./assets/really-queer-Christmas1.gif"></div>
</div>

我的 CSS 将 space 我的列 2.5% 分开,但让我的行接触。这是因为我以像素为单位定义了行高吗?

.grid {
  margin-left: 5%;
  margin-right: 5%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 180px 180px 180px 180px 180px;
  grid-gap: 2.5% 2.5%;
}

.box {
  display: flex;
  align-items: center;
  justify-content: center;
}

如果您想为您的 grid-row-gap 使用百分比,您需要为您的 .grid div 使用固定高度。否则你需要使用 px。 此处示例:https://jsfiddle.net/t53s25us/

.grid {
  margin-left: 5%;
  margin-right: 5%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: 2.5% 2.5%;
  height: 200px;
}

.box {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: red;
}
<div class="grid">
  <div class="box 1 a">AAAA</div>
  <div class="box 1 a">AAAA</div>
  <div class="box 1 a">AAAA</div>
  <div class="box 1 a">AAAA</div>
  <div class="box 1 a">AAAA</div>
</div>