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 中的网站。

4

3 回答 3

4

该站点是使用 HTML5 构建的,ie7 和 ie8 不支持,ie9 也不完全支持。

看看modernizr:

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

或者您可能希望通过将nav, section,header标记替换为支持的标记来使用 XHTML 重构您的 HTML

于 2012-07-11T06:35:25.040 回答
2

这是因为 IE 不支持 HTML5。添加以下脚本以在 IE 中呈现 html5。并将一个类添加到标题元素,然后使用该类进行样式设置。

document.createElement("article");
document.createElement("footer");
document.createElement("header");
document.createElement("hgroup");
document.createElement("nav");
于 2012-07-11T06:39:49.143 回答
1

您也可以使用shiv来“填补空白”。

于 2012-07-11T09:00:44.613 回答