JavaScript 刚过完20岁生日,CSS 也要在今冬迎来20岁诞辰。二十年中,最近几年是 CSS 技术蓬勃发展的几年,最典型莫过于原来的 Tricks 迎来了社区的认可,逐步走进标准化文档。其中有五个不容忽视的里程碑。
FireBug
Firefox 作为前端的老大哥地位毋庸置疑,虽然 Google 很会抢眼球,但从一个角度便能证明:Google 还在致力于创造 Framework(或者叫 Platform),而 Firefox 已经着手制定行业知识标准(MDN)。未来,一定会是在 MDN 中沉淀知识,并逐步走向标准化。
作为 Firefox 的知名产品 FireBug,她出生于2006年。 如果在现有的各种 DevTools中找一个鼻祖,那一定是她。让我们来一睹芳容。
FireBug.png如果你是前端程序猿,就能够轻松明白,TDD 的爽快与直接。虽然我也是忠实的 Chrome-Dev-Tools 粉,但丝毫不影响对FireBugs 的敬畏之心。是她创造了世界,推动了前端开发。
Chrome
如果说 Firefox 是毛爷爷,那 Chrome 就是小平同志了。Chrome 尚不足10岁,但版本迭代了60次(金丝雀),占据了全球浏览器市场的一半以上江山,用一个流行词:现象级应用。Chrome 兴起是从我们不再关注内存爆表开始的(路人转粉)国内的发展得力于各种山寨版本的抄袭。就像读博客,转发的总也不如原文读来更舒服,所以很多国内的用户从某虎家的浏览器迁移到了 Chrome。
Chrome 不光给我们带来一个漂亮的应用,对于程序猿,深不可测的 Dev-Tools 总会不断给我们惊喜,其他各大厂商包括 Firefox 在内的开发工具都不如 Chrome 做的好。或许应该归结于强大的插件生态吧,又或者本身就适应了潮流,最终还是因为有个豪爸爸。
we will not ship any more vendor prefixes。应该这么评价 Chrome,我没有创造太多新的东西,然而我摒弃了糟粕,推动了发展
是吧,小平同志也是如此。
CSS3
CSS 现在多代指我们用的配置文件,而不要把 CSS3根她混为一谈,我们用版本号代表这是一个规范。从这个配置文件出现到2.1版本之前,社区的人不断的把最佳实践放进 CSS 的标准和实现中。终于在 HTML5迎来爆发的时候撑不住了。于是引入了“模块化思想”,将2.1版本以后的所有规范分为不同模块分别管理。
实际上,协会并没有给出 CSS3这个名字,大家喜欢就好了,也不改了。一般情况下,2.1版本以后生产的这些标准统称 CSS3。换句话说,就这样了,没有4,5,6
瞬间悲伤起来,完结散花
之前有写一篇文字,讲 CSS 的前世今生,未来,这样一个配置文件是否会合并到 HTML 中也未可知,毕竟规范化加模块化以后,这种底层的配置终究会成为历史。遑论这玩意这么复杂。
Preprocessing
刚才说了,CSS 这东西,太难搞。一个水平垂直居中,能做出10种方案,没有一种可以称为标准的。预处理器就是来干这件事儿的。不是难懂么,我帮你来做翻译,你只需要告诉我你要居中就好了。
另外,CSS 文件组织起来也很麻烦,依赖关系也需要手动管理,重用性很难从代码中体现出来。。。这些问题,逐步被预处理器解决并规范化。
只有历史能够告诉我们什么是正确的,先人创造 Web 的时候,并没有将 CSS 单独列出来,后来为了切图方便才搞了这么一个临时 hack 方案。作为后来人,我们无论如何优化,都会越走越远。
Flexbox & Gird
布局是CSS 中比较核心的几个问题之一(排版、盒模型,选择器等)也是 CSS3提供给大家最实用的部分。怎么说呢,Flexbox 的实现就是 hack 走向规范的最佳例子。btw 这东西真心好用。
更多信息
首先声明这篇文字并非直译,中后段思绪纷飞,边看边自己发挥与原作有些出入了。原作赏析的小伙伴参考文首链接。
另,CSS3-MDN
网友评论