gpt4 book ai didi

javascript - 如何使两个不同的图像大小相似而不失真?

转载 作者:行者123 更新时间:2023-11-30 09:25:21 24 4
gpt4 key购买 nike

我正在从数据库中加载 250 个元素,我需要为每个元素呈现 img

不幸的是 imgs 有两种不同的尺寸:

  1. 小桶 381x760(像素)
  2. 瓶子 272x1058(像素)

我无法对其进行硬编码,因为我不知道这些图像元素将以何种顺序来自服务器。

这是我的最小、完整且可验证的示例

body {
margin: 40px;
}

.wrapper {
display: grid;
grid-gap: 10px;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
background-color: #fff;
color: #444;
}

.box {
background-color: #444;
color: #fff;
border-radius: 5px;
padding: 20px;
font-size: 150%;
}

.img {
width: 50%;
}
<!DOCTYPE html>
<html>

<body>

<h2>HTML Image</h2>
<div class="wrapper">
<img class="img" src="https://res.cloudinary.com/dfe57evk4/image/upload/v1521215919/2_paabuv.png" alt="Mountain View">
<img class="img" src="https://res.cloudinary.com/dfe57evk4/image/upload/v1521215916/keg_quozwj.png" alt="Mountain View">

</div>

</body>

</html>

我怎样才能使它们的大小相似而不出现图像失真?

这是想要的效果:

enter image description here

最佳答案

为高度和宽度使用最大值并为两者都使用自动以正确重新缩放:

body {
margin: 40px;
}

.wrapper {
display: grid;
grid-gap: 10px;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
background-color: #fff;
color: #444;
}

.box {
background-color: #444;
color: #fff;
border-radius: 5px;
padding: 20px;
font-size: 150%;
}

.img {
height: auto;
max-height: 250px;
width: auto;
max-width: 250px;
}
<!DOCTYPE html>
<html>

<body>

<h2>HTML Image</h2>
<div class="wrapper">
<img class="img" src="https://res.cloudinary.com/dfe57evk4/image/upload/v1521215919/2_paabuv.png" alt="Mountain View">
<img class="img" src="https://res.cloudinary.com/dfe57evk4/image/upload/v1521215916/keg_quozwj.png" alt="Mountain View">

</div>

</body>

</html>

如果需要,您可以使用响应式测量(vh - vw 或 vmin - vmax)。

关于javascript - 如何使两个不同的图像大小相似而不失真?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49325210/

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