Internet explorer 在IE8及以下版本上未正确渲染站点
几天前,我用一个新的设计更新了我的主页,如图所示Internet explorer 在IE8及以下版本上未正确渲染站点,internet-explorer,rendering,Internet Explorer,Rendering,几天前,我用一个新的设计更新了我的主页,如图所示 当我在最新版本的Google Chrome、Internet Explorer 9和Mozilla Firefox上进行测试时,新设计似乎运行良好。该网站确实使用了响应性设计,而且似乎也在使用我的Xperia Ray。 但在我的大学里,我们有InternetExplorer8和InternetExplorer7。所以我试着在我的虚拟机上用WindowsXP、IE7测试这个站点,这个站点看起来呈现如下 有点不对劲。请帮助我解决此渲染问题。 网
当我在最新版本的Google Chrome、Internet Explorer 9和Mozilla Firefox上进行测试时,新设计似乎运行良好。该网站确实使用了响应性设计,而且似乎也在使用我的Xperia Ray。
但在我的大学里,我们有InternetExplorer8和InternetExplorer7。所以我试着在我的虚拟机上用WindowsXP、IE7测试这个站点,这个站点看起来呈现如下 有点不对劲。请帮助我解决此渲染问题。 网站的直接链接是
ankurm.com您可以使用microsoft的筛选标记为抛出错误的浏览器导入不同的样式表
如果小于msie 9
如果大于msie 8
这样你就可以截取并使用不同的样式。您还可以根据浏览器版本导入不同的样式表
通常只有internet explorer会打嗝,所以条件格式应该足够了。您正在使用一些HTML5元素。IE8及以下版本只需忽略未注册的元素,如
和
。用于使IE识别这些元素
此外,您使用了大量的JS。我看不出这样的页面有什么必要。我不知道你用什么来构建页面,但是当我禁用JS时,结果看起来不好。如果HTML5本身不能解决问题,那么进一步调试您的问题也会很困难
最后,如果你问这样的问题,请提供一个链接到你的页面,这样我们就不必从你的截图中阅读
编辑:哦,你在最后贴了,但是没有链接。我的错。你在使用HTML5元素。问题是IE8和更早版本没有将CSS样式应用于未知元素。您必须按以下方式进行注册:
<!--[if lt IE 9]>
<script type="text/javascript">
document.createElement("header");
document.createElement("footer");
document.createElement("section");
document.createElement("aside");
document.createElement("nav");
document.createElement("article");
document.createElement("hgroup");
document.createElement("time");
</script>
<![endif]-->
ECMAscript库可以为您完成此任务。谢谢。我改用HTML5
<!--[if lt IE 9]>
<script type="text/javascript">
document.createElement("header");
document.createElement("footer");
document.createElement("section");
document.createElement("aside");
document.createElement("nav");
document.createElement("article");
document.createElement("hgroup");
document.createElement("time");
</script>
<![endif]-->