如果我在css中宽度设置为100%的页面上有图像,它与浏览器一样宽。精细。但是,如果我使一个包含div具有display:inline-block,则图像不再设置为具有宽度:100%。相反,它只是示出了作为图像的实际宽度:在行内块元素内制作图像宽度:100%
img {width:100%;}
<img src="http://www.gannett-cdn.com/-mm-/0c9109c71ea0524d9fe840f91fabd67bb94a26a9/r=537&c=0-0-534-712/local/-/media/USATODAY/USATODAY/2013/05/30/1369920769000-grumpycat-1305300933_3_4.jpg"/>
<div style="display:inline-block;">
<img src="http://www.gannett-cdn.com/-mm-/0c9109c71ea0524d9fe840f91fabd67bb94a26a9/r=537&c=0-0-534-712/local/-/media/USATODAY/USATODAY/2013/05/30/1369920769000-grumpycat-1305300933_3_4.jpg"/>
</div>
因此,基本上,含内联块DIV希望一样宽是作为其内容,并且宽度:100图像上的%想要与包含的元素一样宽,所以看起来它们都是混淆的,只是默认图像的宽度。我知道我可以将包含div的宽度设置为100%并获得期望的结果,但对于我实际做的事情,这不是一个选项。有没有什么办法强制img是100%的宽度,只有图像本身的CSS?我想我基本上是试图在一个元素的父类上设置一个类,我认为这是不可能的......思想?
我认为这不是一个选项 – Adrian 2014-11-05 00:48:01
@Adrian唯一的其他可能的解决方案是使用'vw'长度。刚更新了答案。 – 2014-11-05 01:02:39