你看到的99%网页都有CSS,然而,99%的CSS 代码并不像“代码”。更像蜘蛛网,他们之间紧密的罗织在一起,脆弱的像风中的女子。的确,CSS3 发布之后,很多超级赞的新特性给了CSS更多曝光的机会,但这个配置语言本身存在设计上的弊端。
题目写的有点大了,分两部分写:
- 最佳实践,让CSS 编写起来更痛快
- 换一种方式组织CSS
最佳实践
写过CSS的必然明白,第一次写,很难写好。维护别人写的代码再进行二次编码,跟便秘一样。
- 样式真多
- 为什么不合并重用
- 合并之后--- 为什么不好用,哪里来的DIV 怎么鬼畜到这里了[论CSS坑爹的优先级问题]
- 新开一个项目,又要写CSS,昨日重现!!
面对这些问题的时候,你首先要问自己,你是不是要去申请个吉尼斯纪录,你是不是遇到了前所未有的问题。答案显而易见,前人一定遇到过。那他们怎么解决的呢。
谷歌
简单说一下我的一点经验:
- 写CSS 更能看出一个程序员的个人修养,写代码的时候,一定要时刻考虑重用性,建议首先与团队协调,统一参照某一开源库写法,比如bootstrap
- 对CSS代码块进行注释,写过注释的肯定会明白,真的没啥可写的,但拿出开源库的注释你就会明白,怎么写,写什么
- 用SASS/LESS 组织你的代码,无论是模块化还是重用性都会有质的提升
- 能不写CSS就不要手写
- 引入其他库文件的时候,尤其是bower引入,不要直接在bower_components内部修改库文件的源码,而是在自己的工程目录中重写覆盖,覆盖的原则参照[CSS优先级]
- 还是一句老话,别老想着自己造轮子,除非你的项目经理是变态,否则,可以跟你的设计师好好沟通,以产品为导向,重用库文件中原有的CSS,修改设计稿比修改源码更加可靠。
未来的CSS
SASS 已经给了我们一种组织样式配置语言的模式,但归根结底还是在写配置文件。React 与 Angular给了我们一些启发,可以把配置文件与其他代码同时打包放在一起。
另外,样式的优先级问题必须优化,这种依赖前后位置的配置文件用起来太多弊端了。
如果你有其他的想法,可以回复在下边。