CSS3与JavaScript

CSS3和JavaScript曾经是两个完全不同的野兽。 CSS严格限制在控制内容的样式,而JavaScript使我们能够控制页面上的一些行为元素。但是现在我们已经拥有了CSS3,这是一个疯狂,令人兴奋的事情,它可以让你轻松地为你的页面包添加圆角和文字阴影。

CSS3为您提供了更多的功能,并添加了一些功能,将其从“样式”转移到行为层,这已经惹恼了一些羽毛。许多人强烈认为CSS应该只控制审美风格,而另一些人认为行为互动可能属于网站“风格”的保护范围。我仍然处于困境,但我想讨论两者在重叠的区域中的一些优点和缺点:行为层。让我们去吧。

便于使用

对于大多数非技术人员来说,JavaScript并不是一件轻而易举的事。图书馆有所帮助,但是对JavaScript语言的充分理解是实现远远超出现成方法的必要条件。 CSS3动画和过渡非常简单,实现起来并不多。只需几行简单易懂的CSS即可开始运行。说够了。

WINNER:CSS3

可扩展性

虽然可能需要一些理解才能超越开箱即用的方法,但使用JavaScript确实没有框。 JavaScript允许控制DOM中的几乎所有内容。这是一个非常方便的工具箱。相比之下,CSS3更像是一个工具带。可扩展性的潜力终止于规范中的内容,但最终我们受到浏览器供应商愿意支持的限制,这将我们带到了下一个领域......

WINNER:JavaScript

支持

支持JavaScript库中的动画很普遍,甚至经常为我们的老朋友IE6提供支持。 CSS3过渡不是很普遍。 WebKit一直处于领先地位,这意味着我们在Chrome和Safari中都有支持。即将发布的Firefox 4也将支持转换和动画。

WINNER:JavaScript

性能

浏览器性能最近有所改善,大部分注意力都集中在JavaScript引擎上。他们甚至有品牌名称。 WebKit有SquirrelFish(除了Chrome已经用V8替换它)。 Mozilla有TraceMonkey。 IE9 Beta甚至还带有一个名为Chakra的新JavaScript引擎。在现代浏览器中,JavaScript尖叫。

CSS3对动画和过渡的支持仍然相当新。因此,它没有多年调整和微调其性能的好处。例如,neutroncreations.com/blog有一个有趣的,相当简单的原子核,有两个电子围绕它运行。在Chrome中,他们占用了我大约40%的CPU。JQuery Circulate插件站点有几个类似的动画,只消耗约18%。不是最科学的实验,但肯定是值得比较的。

WINNER:JavaScript

结论

最终它不是/或。它是/和。 JavaScript无处可去。 CSS3是一个非常有用的工具带。但正确的答案始终是您的客户或用户需要什么。现代浏览器上的所有重要用户都是?这个功能是每个人都需要使用的吗?或者它更像是一个复活节彩蛋? “恭喜,你正在使用WebKit!”我见过的大多数CSS3动画都属于有趣的类别,而开发人员仍然依赖JavaScript库来完成繁重的工作。无论你选择什么,都要确保不要遗漏任何重要的人,并在做这些事情时享受一些乐趣。



翻译字数超限