gpt4 book ai didi

html - 响应式 css 网格图片库

转载 作者:行者123 更新时间:2023-11-28 00:13:26 25 4
gpt4 key购买 nike

我正在尝试创建响应式 CSS 网格图片库。我在容器内的 html 中有 18 个 div。我给他们上了不同的课。我遇到的第一个问题是我想用垂直类跨越第一张图像。正如您在我的 css 中看到的那样,我添加了 grid-column: span 2;到类.vertical。当我这样做时,图像跨越两列,但图像会调整大小并在垂直和水平方向上变大。我只想将它水平跨越两个网格。现在到第二个问题。当我在具有 .vertical 类的图像上使用 grid-row:span 2 时,下面的图像会向上移动,但具有 vertical 类的图像根本不会垂直跨越。我将在下面提供我的代码。感谢您的指导。

img{
width:100%;
height:auto;
}

.container{
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
grid-gap: 5px;


}


.horizontal{
grid-column:span 2;

}
.vertical{
grid-row:span 2;
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>

<div class="container">
<div class="horizontal"><img src="christian.jpg"></div>
<div class="vertical"><img src="1.jpg"></div>
<div class="tva"><img src="2.jpg"></div>
<div class="tre"><img src="3.jpg"></div>
<div class="fyra"><img src="4.jpg"></div>
<div class="fem"><img src="5.jpg"></div>
<div class="sex"><img src="6.jpg"></div>
<div class="sju"><img src="7.jpg"></div>
<div class="vertical"><img src="christian.jpg"></div>
<div class="ett"><img src="1.jpg"></div>
<div class="tva"><img src="2.jpg"></div>
<div class="tre"><img src="3.jpg"></div>
<div class="fyra"><img src="4.jpg"></div>
<div class="fem"><img src="5.jpg"></div>
<div class="sex"><img src="6.jpg"></div>
<div class="sju"><img src="7.jpg"></div>
<div class="sex"><img src="6.jpg"></div>
<div class="sju"><img src="7.jpg"></div>

</div>

</body>
</html>

image

最佳答案

您提供的代码的主要问题是您为 img 设置的 width: 100% 属性。将其更改为 max-width 将不允许图像扩展到列/行之外。我还在 img 中添加了 object-fit: cover 以便它们适本地填充空间。

img{
object-fit: cover;
max-width: 100%;
height: auto;
}

.container{
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
grid-gap: 5px;
}

.horizontal{
grid-column: span 2;
}
.vertical{
grid-row: span 2;
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>

<div class="container">
<div class="horizontal"><img src="http://placekitten.com/1000/500"></div>
<div class="vertical"><img src="http://placekitten.com/500/1000"></div>
<div class="tva"><img src="http://placekitten.com/400/400"></div>
<div class="tre"><img src="http://placekitten.com/400/400"></div>
<div class="fyra"><img src="http://placekitten.com/400/400"></div>
<div class="fem"><img src="http://placekitten.com/400/400"></div>
<div class="sex"><img src="http://placekitten.com/400/400"></div>
<div class="sju"><img src="http://placekitten.com/400/400"></div>
<div class="vertical"><img src="http://placekitten.com/500/1000"></div>
<div class="ett"><img src="http://placekitten.com/400/400"></div>
<div class="tva"><img src="http://placekitten.com/400/400"></div>
<div class="tre"><img src="http://placekitten.com/400/400"></div>
<div class="fyra"><img src="http://placekitten.com/400/400"></div>
<div class="fem"><img src="http://placekitten.com/400/400"></div>
<div class="sex"><img src="http://placekitten.com/400/400"></div>
<div class="sju"><img src="http://placekitten.com/400/400"></div>
<div class="sex"><img src="http://placekitten.com/400/400"></div>
<div class="sju"><img src="http://placekitten.com/400/400"></div>

</div>

</body>
</html>

关于html - 响应式 css 网格图片库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55261633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com