我刚开始在我的文档中使用HTML5和CSS3。 我理解JavaScript需要使用这些新标签和样式来加快Internet Explorer的速度,但我不知道使用哪个以及何时使用!
我的计划是使用html5shiv和IE9.js来管理HTML5标签以及透明的png(以及他们修复的其他任何麻烦错误),然后引起我的注意Modernizr和CSS3 Pie。
我的问题是,如果我使用Modernizr,它是否会照顾我对html5shiv以及IE9.js的需求?或者我也应该包括这些?什么是重叠?如果有的话?
而且,Modernizr或其他人没有做什么CSS3 Pie?反之亦然?
感谢你们的帮助。让我知道你做了什么!?
答案 0 :(得分: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个文本框,持续几毫秒,因此如果您不需要它,则值得禁用。
希望这有用!
答案 1 :(得分:6)
我建议你只使用你需要的东西。在支持您正在使用的功能的浏览器中构建您的应用程序,并定期在您支持的其他浏览器中进行测试。如果某些内容无法正常工作,请找到相应的修复程序,无论是html5shiv,IE9.js,Modernizr还是CSS3 Pie。您不会在一个页面中使用HTML5和CSS3中的所有新功能,因此您不需要包含现有的每个polyfill库。等到您发现要使用的功能出现问题,然后尝试找到必要的库。
答案 2 :(得分:2)
我主要使用CSS3Pie ......效果很好。但是今天下午我在我的笔记本电脑上用I.E8进行了测试,它有一个问题......它禁用了一些css线...当我删除了css3pie代码时,我的网站获得了两倍的速度......然后我来了在人们争论css3放缓的帖子中......所以此刻我正忙着为IE7&amp;找到另一种方式IE8有边框半径和阴影。
如果您想使用它...请测试很多,因为它是非官方修复