Html CSS3图像高度自动调整

Html CSS3图像高度自动调整,html,Html,在IE9上测试jQuery移动站点的过程中,我发现 <img src=... width='100%' height='auto'/> 不适用于IE9-图像显示为没有高度的长水平线。IE似乎不理解auto属性,或者似乎将其解释为含义0。完全不使用height属性就可以做到这一点——图像按需要显示,而且其他浏览器也都可以 问题解决了吗?嗯,不完全是因为这让我感到有点困惑。我一直认为,指定图像高度和宽度有助于浏览器呈现页面,因为它知道在获取图像之前需要为图像预留多少空间。因此,“省

在IE9上测试jQuery移动站点的过程中,我发现

<img src=... width='100%' height='auto'/>

不适用于IE9-图像显示为没有高度的长水平线。IE似乎不理解auto属性,或者似乎将其解释为含义0。完全不使用height属性就可以做到这一点——图像按需要显示,而且其他浏览器也都可以

问题解决了吗?嗯,不完全是因为这让我感到有点困惑。我一直认为,指定图像高度和宽度有助于浏览器呈现页面,因为它知道在获取图像之前需要为图像预留多少空间。因此,“省略height=auto”技巧意味着页面呈现速度会减慢,因为浏览器会延迟获取其他页面资源,直到获得图像数据并建立页面布局为止。

“浏览器会推迟获取其他页面资源,直到获取图像数据并建立页面布局为止?”这是错误的。这是自netscape以来从未出现过的情况。事实上,这是netscape的关键创新之一,该页面将继续呈现,直到获取图像、确定大小并简单地创建页面为止。”回流”


如评论中所述。如果您不知道高度,请将其删除。将其设置为“自动”对浏览器没有任何帮助。

尝试删除
高度
属性,并使用:
或更好地使用CSS来设置图像样式。这与CSS完全无关。您是否将HTML属性与CSS属性混淆?您是对的。我没有真正思考就在标题中加入了CSS。我指的是HTML属性。也就是说,用height:auto定义CSS规则具有相同的IE效果。谢谢。有没有W3C规范文档确定浏览器在遇到这种情况时应该做什么?提到“用户代理应使用这些属性作为渲染提示。“浏览器如何使用这些提示取决于人类逻辑。如果提供了固定大小,它们将映射到尺寸属性:(从)“小程序、嵌入、iframe、img、对象或视频元素的宽度和高度属性,并在图像按钮状态下输入具有类型属性的元素,分别映射到元素上的维度属性“宽度”和“高度”。“谢谢!我突然想到(不是第一次)滑倒在这里。它不认为height='auto'毫无意义,而是将其视为0/1像素的高度,等待有足够的数据来解决问题