任何人都可以推荐通过 CSS 破解 IE8 样式的最佳方法,我最近一直在将 IE8 渲染为 IE7 以方便使用 - 但想知道是否最好添加 IE8 hack?
原文由 Dancer 发布,翻译遵循 CC BY-SA 4.0 许可协议
任何人都可以推荐通过 CSS 破解 IE8 样式的最佳方法,我最近一直在将 IE8 渲染为 IE7 以方便使用 - 但想知道是否最好添加 IE8 hack?
原文由 Dancer 发布,翻译遵循 CC BY-SA 4.0 许可协议
我一直在为 IE10 及以下 CSS 样式寻找一个不错的选择(但它也仅适用于 IE8),我不想要额外的样式表以提高可读性,我想出了这个想法:
<!--[if lt IE 10]><div class="column IE10-fix"><![endif]-->
<!--[if !lt IE 10]><!--><div class="column"><!--<![endif]-->
我用一个额外的类声明我的 div 或任何你想要的东西,这允许我以非常易读的方式在同一个样式表中拥有额外的 CSS。
它是 W3C 有效的,而不是奇怪的 CSS hack。
原文由 Sunkhern 发布,翻译遵循 CC BY-SA 3.0 许可协议
3 回答5.2k 阅读✓ 已解决
5 回答2k 阅读
2 回答1.9k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.5k 阅读
2 回答1k 阅读✓ 已解决
2 回答2.2k 阅读
你应该颠倒你的方法。首先,您的网站应该在现代浏览器(如 Firefox、Chrome、Opera、IE 9)中看起来不错,然后您就可以开始担心其他浏览器了。
正如其他人所建议的,有条件的评论可以成为你的朋友。
首先,你应该开发你的 CSS 在现代浏览器中看起来不错。然后检查IE8,看看你遇到了什么问题。如果需要,请包含特定于 IE 的样式表。之后,您可以在 IE7 和 IE6 中进行检查(如果您支持它),并添加进一步的修复。
一个例子:
在这种情况下,您包括
normal.css
用于现代浏览器。你发现了一些奇怪的 IE8 问题,所以在ie8.css
你修复了这些问题。您不必在其中包含所有选择器,只需包含需要修复的选择器(对于 IE 8 及更低版本,这些值将被覆盖)。之后,如果IE7还有一些奇怪的东西,你可以添加你的ie7.css
并修复这些,等等。请参阅其他人给您的链接,以获取有关条件注释使用的更多信息。
最后:
making IE8 render as IE7 for ease
绝不是一个好主意,应该避免。 IE7 已经过去了(在 IT 界,IE8 也应该是过去了……),为现在和未来而发展,然后你就可以关心那些仍然坚持旧技术的人(基于您的受众和商业计划)。