我目前正致力于响应式网站的最终质量保证,我遇到了IE 8和IE 7的问题。我的客户处理政府合同,因此他们的网站需要兼容IE 8和IE 7.我使用内置html5shiv的Modernizr。我在为该项目定制的WordPress主题的页脚中加载Modernizr。我没有错过doctype或任何其他明显的代码。
我正在使用以下脚本,所有脚本都加载到WordPress的页脚中:
我遇到IE 8自动关闭<header>
标记的问题。首先,我使用了两个实用程序来检查这个问题:
这是正确的输出
<div class="wrapper main-header">
<header class="container">
<div class="sixteen columns alpha omega">
<div class="eight columns alpha omega logo"> <a href="http://example.com"><img src="http://example.com/wp-content/uploads/2013/10/logo.png" alt="Example"></a> </div>
<div class="wrapper main-navigation desktop">
<nav id="nav" class="six columns alpha omega">
...
</nav>
<div class="eight columns alpha omega overlay" style="display: none;">
...
</div>
<div class="two columns alpha omega menu-ss">
...
</div>
</div><!-- .wrapper.main-navigation -->
</div><!-- /.sixteen.columns -->
</header><!--/header-->
</div><!-- /.main-header -->
IE 8正在渲染:
<div class="wrapper main-header">
<header class="container"></header>
<div class="sixteen columns alpha omega">
<div class="eight columns alpha omega logo"> <a href="http://example.com"><img src="http://example.com/wp-content/uploads/2013/10/logo.png" alt="Example"></a> </div>
<div class="wrapper main-navigation desktop">
<nav id="nav" class="six columns alpha omega">
...
</nav>
<div class="eight columns alpha omega overlay" style="display: none;">
...
</div>
<div class="two columns alpha omega menu-ss">
...
</div>
</div><!-- .wrapper.main-navigation -->
</div><!-- /.sixteen.columns -->
</header><//header><!--/header-->
</div><!-- /.main-header -->
<head>
<head>
我查看了这些Stackoverflow问题/答案:
对此非常感谢!我真的真的 真的 喜欢在周末完成这个网站。在这个问题上,过去几个小时我一直在撞墙。
以下是来自browsershack的一些图像,用于删除仿真。我使用Windows 7和WIndows XP(IE 8和IE 7)虚拟测试了该站点。 http://www.browserstack.com/screenshots/0d7c1d6dd22927c20495e67f07afe8934957b4d1
答案 0 :(得分:3)
通过将Modernizr,jQuery和respond.js移动到DOM的<head>
来解决此问题。感谢您的帮助!
答案 1 :(得分:2)
我注意到的一件事是<nav>
元素,它在IE8中不受支持。所以你必须在标题中移动任何垫片等。
认为这可能是关于原因的好信息。
The <nav> tag is supported in Internet Explorer 9, Firefox, Opera, Chrome, and Safari.
Note: Internet Explorer 8 and earlier versions, do not support the <nav> tag.
保罗爱尔兰的另一篇感兴趣的文章(Story of the HTML5 Shiv)指出“新元素不能容纳孩子并且不受CSS影响”,这可能就是标签变为自我关闭的原因。如果有人能详细说明这是否是罪魁祸首,那就有兴趣了。