【问题标题】:CSS2 Selectors not working on IE8CSS2 选择器在 IE8 上不起作用
【发布时间】:2012-03-05 07:18:09
【问题描述】:

有谁知道为什么下面的 CSS 代码不能在 IE8 上运行,但它在所有其他浏览器上都可以运行?

table.wrap tr:first-child td, table.wrap tr:last-child td { height:20px; }
table.wrap td:first-child, table.wrap td:last-child { width: 20px; }

我了解 IE8 不支持 CSS3 功能。但我不认为我在这里使用 CSS3。

衷心感谢您的帮助。

非常感谢!

【问题讨论】:

  • 当您说“所有其他浏览器”时,您显然不包括 IE6 或 IE7。 ;-)(因为他们也不支持)
  • 正在使用 CSS3,:last-child 伪类。

标签: css internet-explorer-8 css-selectors


【解决方案1】:

请参阅Quirksmode.org,了解所有 CSS 功能在所有不同浏览器中的完整兼容性图表。

从上面的链接可以看出,IE8 不支持last-child 功能。

它确实支持first-child,但由于您将它们放在同一个选择器中,它会丢弃整个东西,因为它无法识别last-child 部分。

另请注意,Quirksmode first-child 在 IE8 中存在缺陷,因此即使支持它,您也可能需要小心使用它。

要解决此问题,您可能需要尝试 IE hack 以使其支持额外的 CSS 功能。

看起来相当不错的是Selectivizr。您可能还想查看Dean Edwards' ie7.js / ie8.js / ie9.js。这两个都旨在将缺失的功能修补到旧版本的 IE 中。它们并不完美,但它们可能会为您解决问题。

希望对您有所帮助。

【讨论】:

    【解决方案2】:
    【解决方案3】:

    我相信 last-child 是 css3 的一部分,IE8 不支持。

    【讨论】:

      猜你喜欢
      • 2013-03-08
      • 1970-01-01
      • 2012-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-25
      • 2012-07-04
      • 1970-01-01
      相关资源
      最近更新 更多