CSS - 如何在不考虑视口大小的情况下保持完整图像可见?
CSS - How to keep full image visible regardless the viewport size?
我试图只为移动设备显示图像,但是当我调整浏览器或 select 不同移动设备的大小时,我的图像会调整大小,这不是我想要的。我使用 vh 单位,所以我的图像在所有宽度上看起来都一样。这是片段:
#main-pic {
border: 2px solid red;
background-image: url(https://images.pexels.com/photos/736230/pexels-photo-736230.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500);
height: 55vh;
min-width: 100%;
background-size: cover;
background-repeat: no-repeat;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<div id="main-pic"></div>
</body>
</html>
在我的实际项目中,这张照片在 Bootstrap 网格中,我使用 @media 查询来指定设备的宽度。
编辑:澄清一下,无论屏幕大小如何,我都想显示完整图像
编辑 2:好的,让我们假设我正在尝试显示完整图像,保持它的比例 - 对于每个移动设备 - 在网格中(col-sm-10,取全宽),什么会是让它看起来不错的建议吗?
Ok, so let's assume I'm trying to display the full image, keeping it's
ratio - for every mobile device - in a grid (col-sm-10, taking it's
full width), what would be the suggestions for making it look good?
使用background-size: contain
(此外,您可以使用背景色来填充 div
未被背景图像覆盖的区域。
我试图只为移动设备显示图像,但是当我调整浏览器或 select 不同移动设备的大小时,我的图像会调整大小,这不是我想要的。我使用 vh 单位,所以我的图像在所有宽度上看起来都一样。这是片段:
#main-pic {
border: 2px solid red;
background-image: url(https://images.pexels.com/photos/736230/pexels-photo-736230.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500);
height: 55vh;
min-width: 100%;
background-size: cover;
background-repeat: no-repeat;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<div id="main-pic"></div>
</body>
</html>
在我的实际项目中,这张照片在 Bootstrap 网格中,我使用 @media 查询来指定设备的宽度。
编辑:澄清一下,无论屏幕大小如何,我都想显示完整图像
编辑 2:好的,让我们假设我正在尝试显示完整图像,保持它的比例 - 对于每个移动设备 - 在网格中(col-sm-10,取全宽),什么会是让它看起来不错的建议吗?
Ok, so let's assume I'm trying to display the full image, keeping it's ratio - for every mobile device - in a grid (col-sm-10, taking it's full width), what would be the suggestions for making it look good?
使用background-size: contain
(此外,您可以使用背景色来填充 div
未被背景图像覆盖的区域。