在每个浏览器中加载 html5shiv 是否有任何副作用?

2024-01-07

On the html5shiv谷歌代码页 http://code.google.com/p/html5shiv/示例用法包括 IE 条件:

<!--[if lt IE 9]>
    <script src="dist/html5shiv.js"></script>
<![endif]-->

然而关于html5shivgithub页面 https://github.com/aFarkas/html5shiv,描述解释:

该脚本是启用 HTML5 分段的事实上的方法 旧版 Internet Explorer 中的元素以及默认 HTML5 样式 在 Internet Explorer 6 - 9 中,Safari 4.x (and iPhone 3.x), 和火狐3.x.

一个明显的矛盾。那么为了满足我的好奇心,对于研究过代码的人来说,加载是否有任何不利的副作用html5shiv在每个浏览器中(没有 IE 条件)?

编辑:显然,我的目标是在没有 IE 条件的情况下使用 shiv。


我认为 googlecode 页面上的条件注释(可能更新了一年多前)是因为 IE8 及以下版本需要一个JavaScript 技巧 http://ejohn.org/blog/html5-shiv/允许CSS样式HTML5 元素。

FF4、Safari 4、Opera 11 及更低版本不适用display:block默认为“未知”元素,但您只需要一个CSS重置 http://meyerweb.com/eric/tools/css/reset/来改变这种行为。

html5shiv 在这些浏览器上所做的只是添加一个<style>在。。。之初<head>,与此类似:

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}

Source: http://meyerweb.com/eric/tools/css/reset/ http://meyerweb.com/eric/tools/css/reset/

So, it 不应该产生任何副作用,因为这些规则可以被连续的声明覆盖。

只要您将该规则添加到主 CSS 文件顶部,就可以有条件地包含仅适用于 IE 的 html5shiv,您将保存一个 http 请求。

如果你希望你的 html5 网站也兼容 FF2(如果是这样,你就是个疯子),检查这个教程 http://html5doctor.com/how-to-get-html5-working-in-ie-and-firefox-2/.罢工>

OP 发现 html5shiv 已经为 FF2 提供了后备!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在每个浏览器中加载 html5shiv 是否有任何副作用? 的相关文章