【发布时间】:2014-12-04 23:22:20
【问题描述】:
奇怪的是...如果您在图像上指定 100% 的 max-width 并在其容器上显示 inline-block,并结合标记中的宽度属性,IE8 不会显示图像。
这是一支笔:http://codepen.io/iamkeir/pen/MYadRO
(在 IE8 上查看整页:http://codepen.io/iamkeir/full/MYadRO)
<div class="problem">
<img src="http://placehold.it/320x240" width="240" />
</div>
<style type="text/css">
div {
display: inline-block;
}
img {
max-width: 100%;
}
</style>
可以通过使容器显示内联而不是仅用于 IE8 的内联块来修复它,或者指定 100% 的宽度和最大宽度而不是宽度属性...但这并不像在中指定宽度那样方便标记。
两个问题:
1) 是否有更好/替代的解决方法?
2) 任何想法什么实际上是怎么回事? (我知道,我知道,“因为 IE8”。)
注意:虽然http://caniuse.com/#search=inline-block 暗示 IE8 支持 inline-block (),但在页脚中报告了一个已知问题。应该改为部分支持:
http://blog.caplin.com/2013/06/07/developing-for-ie8-inline-block-resize-bug/
【问题讨论】:
-
微软不再支持或更新 IE8。我们也不应该;)。
-
微软确实支持 IE8(它也支持 IE6 和 IE7),只是在 Windows XP 上不支持。
-
哦,如果我们可以简单地说“我们不必支持 IE8”,我会在街上裸舞。事实是,我们支持很大比例的用户使用。如果每月有数千名客户在 WinXP 上使用 IE8,我们会在 WinXP 上支持 IE8,否则就会失去这些客户(或者在我们的情况下,会被我们的联邦霸主扇耳光)。
-
@JamieBarker 遗憾的是,我们从事的大多数项目都不能由我们来决定支持哪些浏览器。这通常取决于客户及其要求。
标签: html css internet-explorer-8