less与sass的区别是什么?

Sass和Less都属于CSS预处理器;所谓CSS预处理器,就是用一种专门的编程语言,进行Web页面样式设计,再通过编译器转化为正常的CSS文件,以供项目使用。

Sass和Less的比较

相同之处:

1、混入(Mixins)——class中的class;

2、参数混入——可以传递参数的class,就像函数一样;

3、嵌套规则——Class中嵌套class,从而减少重复的代码;

4、运算——CSS中用上数学;

5、颜色功能——可以编辑颜色;

6、名字空间(namespace)——分组样式,从而可以被调用;

7、作用域——局部修改样式;

8、JavaScript 赋值——在CSS中使用JavaScript表达式赋值。

不同之处:

1、Less环境较Sass简单

Cass的安装需要安装Ruby环境,Less基于JavaScript,是需要引入Less.js来处理代码输出css到浏览器,也可以在开发环节使用Less,然后编译成css文件,直接放在项目中,有less.app、SimpleLess、CodeKit.app这样的工具,也有在线编辑地址。

2、Less使用较Sass简单

LESS并没有裁剪CSS原有的特性,而是在现有CSS语法的基础上,为CSS加入程序式语言的特性。只要你了解CSS基础就可以很容易上手。

3、从功能出发,Sass较Less略强大一些

①sass有变量和作用域。

-$variable,likephp;

-#{$variable}likeruby;

-变量有全局和局部之分,并且有优先级。

②sass有函数的概念;

-@function和@return以及函数参数(还有不定参)可以让你像js开发那样封装你想要的逻辑。

-@mixin类似function但缺少像function的编程逻辑,更多的是提高css代码段的复用性和模块化,这个用的人也是最多的。

-ruby提供了非常丰富的内置原生api。

③进程控制:

-条件:@if@else;

-循环遍历:@for@each@while

-继承:@extend

-引用:@import

④数据结构:

-$list类型=数组;

-$map类型=object;

其余的也有string、number、function等类型

4、Less与Sass处理机制不一样

前者是通过客户端处理的,后者是通过服务端处理,相比较之下前者解析会比后者慢一点

5、关于变量在Less和Sass中的唯一区别就是Less用@,Sass用$。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容