我知道网站上有很多关于这两个脚本库的好问题。
我想问一些我似乎在其中任何一个地方都找不到的问题。
Modernizr提供了html5shiv没有的开箱即用功能,也就是说,只包含脚本。
我知道html5shiv“只是”为IE < 9修复了HTML5元素,它的支持到此为止了吗?
现代浏览器能解决IE导航器上的CSS3问题吗?ie9.js会这样做吗?(我指的是这个开箱即用的问题,不需要额外的js代码来处理特殊情况)
当你考虑使用这个库时,除了只包含脚本之外,与html5shiv相比,它还有什么优势?
发布于 2012-03-10 10:19:07
他们做了不同的事情。
Modernizr检测页面中的功能是否可用,允许您在需要该功能时为较旧的浏览器提供您自己的polyfills。您可以使用canvas标签polyfill添加对<canvas>的支持,以便在不支持<canvas>标签的浏览器中使用canvas功能,包括它的JavaScript接口。
Html5shiv添加了旧浏览器中不可用的新html5标记(<section>、<header>等)。它还创建默认样式(例如,<section>的display: block)。
就这样。它不提供其他功能。
发布于 2013-03-23 08:35:49
1.5+实际上包含了HTML5Shiv,所以如果你使用它,shiv是多余的。来源:http://modernizr.com/docs/#html5inie
从现代1.5开始,此脚本与常用的html5shim/html5shiv库中使用的脚本相同。
https://stackoverflow.com/questions/9643317
复制相似问题