了解Modernizr对html5shiv的好处

时间:2012-03-10 02:06:24

标签: javascript css html5 modernizr html5shiv

我知道网站上有很多关于这两个脚本库的好问题。

我想问一些我似乎无法在其中找到的东西。

Modernizr提供的内容html5shiv没有开箱即用,即只包含脚本。

我知道html5shiv“只是”修复IE的HTML5元素< 9,它的支持是否停在那里?

Modernizr是否修复了IE导航器上的CSS3问题? ie9.js那样做吗? (我的意思是这个特殊的问题开箱即用,没有额外的js代码来处理角落案例)

除了包含脚本之外,当您考虑使用库时,Modernizr优于html5shiv有什么优势?

2 个答案:

答案 0 :(得分:53)

他们做不同的事情。

Modernizr检测页面中功能的可用性,允许您在需要该功能时为旧版浏览器提供自己的polyfill。您可以使用canvas标签polyfill添加对<canvas>的支持,以便在不支持<canvas>标记的浏览器中使用canvas功能,包括它的JavaScript接口。

Html5shiv将新的html5标记添加到旧浏览器中(<section><header>等)。它还会创建默认样式(例如display: block<section>)。

就是这样。它没有提供其他功能。

答案 1 :(得分:39)

Modernizr 1.5+实际上包含HTML5Shiv,所以如果你使用它,shiv是多余的。资料来源:http://modernizr.com/docs/#html5inie

“从Modernizr 1.5开始,这个脚本与流行的html5shim / html5shiv库中的脚本相同。”