我正在尝试使图像(动态放置,不受尺寸限制)的宽度与其父div一样宽,但前提是该宽度不比其自身的宽度100%宽。我已经尝试过了,但无济于事:
img {
width: 100%;
height: auto;
max-width: 100%;
}
这些图像中的许多图像都比其父div宽得多,这就是为什么我希望它们进行相应调整的原因,但是当一个小图像弹出并放大到超出其正常尺寸时,它看起来确实很糟糕。有什么办法吗?
我正在尝试使图像(动态放置,不受尺寸限制)的宽度与其父div一样宽,但前提是该宽度不比其自身的宽度100%宽。我已经尝试过了,但无济于事:
img {
width: 100%;
height: auto;
max-width: 100%;
}
这些图像中的许多图像都比其父div宽得多,这就是为什么我希望它们进行相应调整的原因,但是当一个小图像弹出并放大到超出其正常尺寸时,它看起来确实很糟糕。有什么办法吗?
Answers:
仅指定max-width: 100%
一个,就应该这样做。
在Google搜索上找到了这篇文章,并通过@jwal的回复解决了我的问题,但是我对他的解决方案做了补充。
img.content.x700 {
width: auto !important; /*override the width below*/
width: 100%;
max-width: 678px;
float: left;
clear: both;
}
通过以上操作,我将最大宽度更改为图像所在的内容容器的尺寸。在这种情况下,它是:容器宽度-填充-边界=最大宽度
这样,我的图片就不会脱离包含div的内容,而且我仍然可以将图片浮动在内容div中。
我已经在IE 9,FireFox 18.0.2和Chrome 25.0.1364.97,Safari iOS中进行了测试,并且似乎可以使用。
附加:我在以678px(最大宽度)显示的1024px宽图像和以500px(图像宽度)显示的500px宽图像上对此进行了测试。
width:auto !important;
修复了IE11中的一个问题,该问题是图像将大于其容器,并且IE11无法按比例缩小图像。在img
选择器中进行设置可以解决IE11中的问题。但是,width:100%;
没有其他规则的设置在IE11中没有任何作用。因此,必须包含“替代”,以使图像缩小到其容器的大小。
我也遇到了同样的问题,但是我在CSS中将height值设置为auto,这解决了我的问题。另外,不要忘记执行display属性。
#image {
height: auto;
width: auto;
max-height: 550px;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
display: block;
}
我找到了一个对我有用的答案,可以在以下链接中找到:
max-width: 100%
?