我的一个朋友为一个网站做志愿工作,前几天有一个问题来找我。显然,特别是运行IE8的一些用户(来自响应用户)无法正确查看页面布局。该脚本位于css之前最顶部的每个页面的标题中。从他向我展示的屏幕快照来看,IE忽略了CSS并重叠了网站的各个部分。有什么想法吗?

<!--[if IE]>
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->


提前感谢您的帮助。

最佳答案

我们可能需要查看该站点才能为您提供一个很好的答案,但是这里有一些可能的问题需要解决。


用户是否启用了JavaScript?没有它,该脚本将根本无法工作。避免这种情况的唯一方法是不要使用html5,除非IE8支持对该网站的用户非常重要,否则这不是一个好选择。
页面上有JS错误吗?这可能会阻止它加载。
尝试下载该js文件并将其加载到本地,而不是从Google加载。有时跨域请求可能会导致问题。从Google加载它从来没有问题,但是您可能想尝试一下。一些浏览器将其区别对待。参见维基百科:Same origin policy
您可能还需要确保该文件是问题所在。也许还有其他一些奇怪的事情。 ie8不会识别html5元素,因此不会对它们进行样式设置。如果这是您遇到的布局问题,则可能是该文件。


另一件事。不要忘记在样式表中使用html5重置将html5元素设置为“ display:block”。没有它们,他们可能无法正常工作。

编辑:
这是我在评论中提到的示例。

在HTML文件中:

<div class="container">
    <section id="left"><!-- sidebar --></section>
    <article><!--  content --></article>
</div>


在样式表中:

.container{
    position:relative;
}

section#left{
    position:absolute;
    top:0;
    left:0;
}

10-05 20:42
查看更多