less,sass,scss都属于css的预处理器,也可以说是由css发展而来的扩展语言。传统css写起来非常麻烦,重复代码较多,看起来也不直观,为了解决这些问题,css预处理器应运而生。
sass最先出现,是世界上最成熟、稳定和强大的专业级CSS扩展语言(官方原话),它和scss同根同源,和less则是竞争者。
下面简述他们之间的区别:
sass和scss的区别文件扩展名不同sass使用严格缩进语法,用缩进代替了大括号,用换行代替了分号,而scss还是沿用cssS的语法格式。scss可以理解为sass的改良,它的语法完全兼容 CSS3,并且继承了sass的强大功能sass和less的区别sass基于Ruby是在服务端处理的,而less可以借助node.js在服务端运行也可以在客户端运行。
在语法上,less的变量符是@,scss是$,两者变量的作用域也不一样。
sass可以使用if,else,for等判断循环语句,less不支持。
less没有输出设置,sass提供了4种输出的选项:nested、compact、compressed、expanded。
总结细节上他们三者有不同的地方,但总的来说:
less容易上手,sass和scss更成熟功能更强大。
对于普通开发者来说掌握其中任何一个都可以帮助你更快的写出可维护性更高的css。