sass和less的区别

2018-11-23  本文已影响0人  荷西0

1.编译环境不一样;

Sass的安装需要Ruby环境,是在服务端处理的;

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

2.变量符不一样,Less是@,而Scss是$,并且变量的作用域也不一样;

在sass 3.4.0之前,sass可以说是没有局部变量和全局变量之分的,即后声明的同名变量总是会覆盖之前的同名变量,不管后声明的变量是位于何处。之后的版本有所改动并且更为人性化了。在sass3.4.0之后没有位于第一层(全局)的变量声明现在都被默认为是局部的。如果存在一个同名的全局变量,这个全局变量也不会被重写,除非同名的局部变量被声明时使用关键字  !default;

less中变量的作用域就跟js中变量作用域类似。

3.输出设置,Less没有输出设置,Sass提供4中输出选项:nested, compact, compressed 和 expanded;

sass输出样式的风格可以有四种选择,默认为nested:

nested:嵌套缩进的css代码;

expanded:展开的多行css代码;

compact:简洁格式的css代码;

compressed:压缩后的css代码;

4.Sass支持条件语句,可以使用if{}else{},for{}循环等等。而Less不支持;

 5. 引用外部CSS文件;

scss引用的外部文件命名必须以_开头, 如下例所示:其中_test1.scss、_test2.scss、_test3.scss文件分别设置的h1 h2 h3。文件名如果以下划线_开头的话,Sass会认为该文件是一个引用文件,不会将其编译为css文件。

6.Sass和Less的工具库不同。

最后:

不管是Sass,还是Less,都可以视为一种基于CSS之上的高级语言,其目的是使得CSS开发更灵活和更强大,Sass的功能比Less较强大,Less则相对清晰明了,易于上手,对编译环境要求比较宽松。根据需求选取学习即可。

好啦,关于sass和less的区别就到这啦,欢迎大家提出宝贵的建议!

喜欢的话给个小心心吧~٩(๑>◡<๑)۶

上一篇下一篇

猜你喜欢

热点阅读