什么是Sass、Less

Sass和Less都属于Css预处理器,Css预处理器定义了一种新的语言,其基本思想是用一种专门的编程语言,为Css增加一些编程的特性,将Css作为目标生成文件,然后开发者使用这种语言进行Css编码工作(用一种专门的编程语言,进行Web网页样式设计,再通过编译器转化为正常的Css文件,以供项目使用)。

为什么要使用Sass、Less

因为css只是单纯的属性描述,它并不具有变量、条件语句等,css的特性导致了它难组织和维护。

Less与Sass的共性:

  • 混合(Mixins):将一个定义好的classA引入到另一个classB中,从而简单实现classB继承了classA的所有属性;
  • 参数混合(Parametric):可以像函数一样传递参数的class
  • 嵌套规则:class中嵌套class,从而减少重复的代码
  • 运算:css中的数学计算
  • 颜色功能:可以编辑你的颜色
  • 命名空间:样式分组,从而方便被调用
  • 作用域:局部修改样式
  • JavaScript表达式:在css样式中使用javaScript表达式赋值

Less与Sass的不同:

Less是基于JavaScript的在客户端处理,很多开发者不会选择Less因为javaScript引擎需要额外的时间来处理代码然后输出修改过的Css到浏览器【解决:只在开发阶段使用Less,一旦开发完成,复制Less输出的到一个压缩器,然后用一个单独的css文件来代替Less文件;另一种方式是使用Less App来编译和压缩你的Less文件;这两种方式都是最小化样式输出】

Sass是基于ruby在服务器处理