【发布时间】:2012-09-11 19:27:25
【问题描述】:
我在 IE9 中可以使用此功能,但后来试图在 IE8 和 7 中解决它却搞砸了。我在这里和其他地方进行了搜索,但找不到解决我问题的正确方法。
每当浏览器窗口的大小调整为小于其最大宽度(流体图像)时,我都会尝试在 div 中缩小图像。我假设问题是我使用的是旧版浏览器不支持的 CSS3 属性(背景大小:100%;)。如何使它与 IE9、8、7 兼容?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Fluid Image</title>
<style type="text/css">
img {
max-width: 90%;
height: auto;
}
.imageContainer {
width: 900px;
max-width: 90%;
margin: 0 auto;
background-image: url(img/fluidImage.jpg);
background-position: 0 -450px;
background-repeat: no-repeat;
background-size: 100%;
height: 650px;
}
</style>
</head>
<body>
<div class="imageContainer"></div>
</body>
</html>
【问题讨论】:
-
它必须是背景图像吗?如果你使用的是普通的嵌入图片,你可以强制使用width/max-width进行缩放。
-
我想将其保留为背景图片,以便为将来可能遇到的任何问题提供答案。
-
旧版浏览器不支持
background-size属性。您需要使用<img/>对象才能使事情正常进行。 -
我开始认为你们是对的。
-
我认为目前最好的解决方案是使用上面提到的 标签,同时使用媒体查询。感谢 cimmanon 和 Set Sail Media。引用从CSS Tricks. 到处复制和粘贴的媒体查询时,我确实遇到了一些头痛。提醒一下,不要忘记在媒体查询后加逗号,否则它将不起作用。
标签: css internet-explorer