CSS选择器在IE7和IE8中无法应用

4
我在IE浏览器中遇到了一个奇怪的问题,这是我从未见过的。我的一堆选择器在IE7和IE8中都没有应用。它们在IE9和其他好的浏览器中都可以正常工作。如果想看到效果,请关注此网站左上角的标志:www.rtotv.com.au。在IE9中使用开发人员工具(F12),找到此元素。
<body>
  <div class="container">
    <header class="row header clearfix">
      <h1 class="span3 logo">
        <a title="RTO TV Home" class="ir" href="/">   <--this element

styles.css样式表加载正常,.ir类已应用,但是例如这个样式选择器在IE7和8中根本不起作用,但在IE9中完美运行:

header h1.logo a {}

如果我能弄清楚这里发生了什么事,我相信我能修复网站的其余部分,但现在,在IE7和8中,这完全摧毁了整个网站。

请参见https://dev59.com/K2445IYBdhLWcg3wcJ6O。 - Raedwald
3个回答

4

本网站使用HTML5构建,不支持ie7和ie8,并且ie9的支持也不完整。

请查看Modernizr:

Modernizr是一个开源JavaScript库,可帮助您构建下一代基于HTML5和CSS3的网站。

或者您可以通过使用受支持的标签替换navsectionheader标签来重构您的HTML。


2
这是因为IE不支持HTML5。添加以下脚本以在IE中呈现HTML5。并将类添加到标题元素,然后使用该类进行样式设置。
document.createElement("article");
document.createElement("footer");
document.createElement("header");
document.createElement("hgroup");
document.createElement("nav");

不要忘记为上述脚本创建的HTML5元素添加CSS,以“重置”每个元素以显示块(默认为内联)。 - Joe Johnson

1

你也可以使用shiv来“填补空缺”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接