【问题标题】:IE7 / IE8 Compatibility mode specific CSSIE7 / IE8 兼容模式特定 CSS
【发布时间】:2012-10-10 20:17:20
【问题描述】:

我们最近重新设计了面向公众的网站,但有一项没有完全传达。

我们网站的某些部分使用 CSS 中的一些较新的显示类型。这在几乎所有浏览器中看起来都很好,但在 IE8 的兼容模式或 IE7 中却不行。

这不会是一个问题,除了错误传达的项目是我们确实需要支持 IE7。

因此,我最初的修复(强制 IE8 进入标准模式)被拒绝了。

我目前正在开发一个 CSS 来覆盖页面的这些部分。我们希望这是一个单独的 CSS 文件,而不是出于可维护性的原因在主样式表中使用 CSS hack。

我的理解是,我可以通过使用 IE 的条件 cmets 将它包含(或不包含),以便仅将其包含在 IE7 及以下版本中。如果我使用条件注释

<!-- if lte IE 7>

这是否也包含在 IE8 的兼容模式中?如果不是,我如何专门针对 IE 8 兼容性?

【问题讨论】:

标签: css internet-explorer ie8-compatibility-mode


【解决方案1】:

至少在 IE9 中,IE 的功能与 IE7 一样,与条件 cmets 一样。例如,使用以下代码:

<!--[if IE 7]>IE7.<![endif]-->
<!--[if IE 8]>IE8.<![endif]-->
<!--[if IE 9]>IE9.<![endif]-->

“IE7”将显示在 IE9 工作在兼容性视图模式下,通过位置栏右侧的按钮触发。

更新:刚刚在 IE8 中测试过——它和 IE9 一样。

【讨论】:

  • 这很好,但对 IE 8 的兼容模式没有帮助。无论如何,谢谢您的回复。
  • 有趣 - 这直接与this question 的公认答案相矛盾。
  • 这个问题可能是关于在兼容模式下准确确定 IE8 并将其与真正的 IE7 区分开来(它们无法通过条件注释区分)。
猜你喜欢
  • 2011-07-27
  • 2010-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多