了解Modernizr对html5shiv的好处

bev*_*qua 39 javascript css html5 modernizr html5shiv

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

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

Modernizr提供的是什么,html5shiv没有开箱即用,也就是说,只包括脚本.

我知道html5shiv"只是"修复IE <9的HTML5元素,是否支持停止?

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

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

tko*_*one 55

他们做不同的事情.

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

Html5shiv补充说,不可用(新的HTML5标签<section>,<header>等),以旧的浏览器.它还创建(默认样式display: block<section>举例).

而已.它不提供其他功能.

  • 不会.除了告诉您是否支持它之外,它本身没有任何作用,如果它不受支持,则允许您提供polyfill以将该功能添加到浏览器.请参阅https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills,了解在其中使用的polyfills的详尽列表. (5认同)

swr*_*bel 40

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

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

  • 从链接,"截至Modernizr 1.5,这个脚本与流行的html5shim/html5shiv库中使用的相同." (4认同)