Modernizr,html5shiv,ie7.js和CSS3 Pie.哪个用什么时候用?

ste*_*ail 49 javascript html5 internet-explorer modernizr css3pie

我刚开始在我的文档中使用HTML5和CSS3.我理解JavaScript需要使用这些新标签和样式来加快Internet Explorer的速度,但我不知道使用哪个以及何时使用!

我的计划是使用html5shiv和IE9.js来管理HTML5标签以及透明的png(以及他们修复的其他任何麻烦的错误),然后引起我的注意Modernizr和CSS3 Pie.

我的问题是,如果我使用Modernizr,它是否需要html5shiv以及IE9.js?或者我也应该包括这些?重叠是什么?

而且,Modernizr或其他人没有做什么CSS3 Pie?或相反亦然?

我感谢你们的帮助.让我知道你做了什么!?

Ric*_*haw 70

我对所有这些都有丰富的经验,每次都使用它们几年.

Modernizr的

包括HTML5shiv功能还可以做更多 - 如果你不使用其他功能,那么不要使用它,它确实减慢页面加载速度,但如果你需要它是值得的!

HTML5shiv

非常小,只修复IE中的html5元素,没有别的.

CSS3PIE

允许您在旧版本的IE中使用border-radius,渐变和框阴影.也可以在IE 6中允许PNG.为页面加载添加明显的延迟.

ie7.js(和ie9.js)

为您提供了许多CSS3选择器,最小和最大宽度,多个类和固定定位.如果你愿意,也可以有一个png修复.似乎没有减慢太多的事情.

结论

我的建议分为两类:

如果你只是使用新的(在互联网上是2年新的?!)元素和CSS3选择器,那么使用ie9.js + html5shiv.这是轻量级的,只是让你继续处理事情,而不必记住IE6不支持任何东西.

如果你使用了很多CSS3的东西,那么CSS3PIE将整理border-radius和box-shadow.渐变支持似乎有点不稳定,所以我总是使用后备图像.Modernizr可让您轻松地向具有不同支持的浏览器提供不同的属性.我主要用它来确定浏览器是否有CSS转换和转换,因为它们对任何图像滑块或内容轮播都很有用.值得使用自定义工具来包含您想要的功能 - 网页表单显示一个文本框,其中包含50个文本框,持续几毫秒,因此如果您不想要它,则值得禁用.

希望有用!

  • 非常有帮助!谢谢.最后一个问题,我从你所说的内容中理解,如果我选择使用Modernizr,它将满足html5shiv的需求,但ie9.js呢?如果我使用Modernizr,我还应该使用html5shiv来管理透明的png等吗?对于CSS3 PIE也一样,它是否会照顾html5shiv或ie9.js的功能?我只想使用我需要的页面,所以知道什么是多余的将是非常有帮助的. (3认同)

Bri*_*ell 6

我建议你只使用你需要的东西.在支持您正在使用的功能的浏览器中构建您的应用程序,并定期在您支持的其他浏览器中进行测试.如果某些内容无法正常工作,请找到相应的修复程序,无论是html5shiv,IE9.js,Modernizr还是CSS3 Pie.您不会在一个页面中使用HTML5和CSS3中的所有新功能,因此您不需要包含现有的每个polyfill库.等到您发现正在尝试使用的功能出现问题,然后尝试找到执行此操作所需的库.