我们的一位网页设计师目前正在一个网站上工作,并且正在使用 HTML5 元素,她使用有据可查的 Html5Shiv 在旧浏览器中对其进行样式化;
http://css-tricks.com/html5-innershiv/
她今天报告了一些非常奇怪的行为,看起来这就是原因。最初它非常令人困惑,并且类似于以下内容;
“页面看起来不错,我刷新它看起来不错,刷新几次,偶尔它不会将我的样式应用于 HTML5 元素”
目前最好的理论是 shiv 的启动速度不够快,并且页面在新元素注册之前加载。我想知道是否有人可以提出一种可靠的方法来包含 shiv 并确保它在其他元素之前被加载和解析,所以它们肯定会被样式化。
编辑(更多信息)
Shiv 被包含在头部,直接在标题/元标签下方;
<!--[if IE]> <script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->
正在设置样式的位在页脚中并且是跨站点的。许多页面的大小会发生变化,因为它们由我们的营销团队将使用的 CMS 提供支持,因此我无法提供确切的页面大小。我想说的是,如果页面大小是一个问题并且没有解决方法,有人可以告诉我,因为这意味着我们基本上不能在这个项目上使用 HTML5(或者至少我们需要添加多余的诸如 div 之类的标记,以确保布局不会发疯)
编辑 2
不幸的是,我没有机会发布代码 - 它只能在非常模糊的情况下重新创建,并且该项目目前被标记为“最高机密”:(如果没有人知道,那么我猜这要么是“每个人都知道”的情况它发生了,但有点忽略了它”或者只是它不是 shiv 的东西。