【发布时间】:2018-05-26 12:12:03
【问题描述】:
我有一个网格,我可以在其中放置图像,但它们并没有填满给定的整个空间。
我希望下图能很好地说明问题。正如我们所看到的,顶部图像和右侧图像没有填充它们分配的行。这是什么原因造成的,我该如何解决?
代码是这样的:
<section class="wrapper">
<div class="one">
<img class="img" src="images/lorem/ipsum.jpg" alt="">
</div>
<div class="two">
<img class="img" src="images/lorem/ipsum2.jpg" alt="">
</div>
<div class="three">
<img class="img" src="images/lorem/ipsum3.jpg" alt="">
</div>
</section>
.wrapper {
display: grid;
grid-template-columns: repeat(8, 1fr);
grid-auto-rows: minmax(150px, auto);
grid-gap: 20px;
height: 100vh;
}
.one {
grid-column: 2 / 7;
grid-row: 1 / 3;
}
.two {
grid-column: 2 / 5;
grid-row: 3 / 4;
}
.three {
grid-column: 5 / 7;
grid-row: 3 / 4;
}
.img {
width: 100%;
}
我该如何解决这个问题?
【问题讨论】:
-
也许设置为 150px 的 minmax 太大了?你能用你的 HTML 结构和图像大小来说明你的问题吗......也许它也与 HTML 有关?
-
@G-Cyr 我确实添加了 HTML。 Yan 建议的修复方法可以解决间隙问题,但现在当我调整图像大小时,图像会被剪切
-
图片可以看css-tricks.com/almanac/properties/o/object-fit(效果与背景大小相似)。问题是,要使图像填充整个单元格网格,您将不得不切断其中的一部分或拉伸它们。如果他们的尺码一开始不合适。你想拉伸它们吗?
-
不,我不想拉伸它们。他们应该保持他们的纵横比。感谢您的链接!