要求图片等比例完整显示不裁剪不留白, 图片比例固定是16/3
使用object-fit: contain;
图片两边有空白
使用object-fit: cover;
图片显示不全,被裁剪了
原图
要求图片等比例完整显示不裁剪不留白, 图片比例固定是16/3
使用object-fit: contain;
图片两边有空白
使用object-fit: cover;
图片显示不全,被裁剪了
原图
27 回答12.8k 阅读
8 回答3.4k 阅读✓ 已解决
6 回答945 阅读✓ 已解决
5 回答5.1k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
3 回答1.7k 阅读
6 回答704 阅读
1.如果你是用img标签,可以这样解决
<div class="image-container">
<img src="your-image.jpg" alt="Image">
</div>
.image-container {
width: 100%;
padding-top: calc(100% / (16 / 3)); / 16:3 aspect ratio /
position: relative;
overflow: hidden;
}
.image-container img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover; / Ensures the image covers the container /
}
2.如果你是用背景图加载,可以这样写
<div class="image-container"></div>
.image-container {
width: 100%;
padding-top: calc(100% / (16 / 3)); / 16:3 aspect ratio /
background-image: url('your-image.jpg');
background-size: cover; / Ensures the image covers the container /
background-position: center; / Centers the image /
background-repeat: no-repeat; / Prevents the image from repeating /
}