一、前言
对于现代化的Web开发项目来说,CSS提供了一个大胆的想法和尝试。纵观前端发展历程,CSS主要有如下几种组织方案:
1、CSS与JS完全解耦,运用预处理器或编码规范(如OOCSS、SMACSS、BEM、ITCSS、AtomicCSS)来保持其可维护性。
2、CSSModules(如Webpack中的css-loader),本质上是在编译过程中运用哈希等方式进行命名随机化,避免全局命名冲突。
3、单文件绑定CSS(如Vue中的scope语法,在编译时进行分析,使得和此组件绑定的CSS只影响当前组件)。
4、CSS-in-JS(如styled-