sass和less都是css的預編譯處理語言,他們引入了mixins,參數,嵌套規則,運算,顏色,名字空間,作用域,JavaScript賦值等 加快了css開發效率,當然這兩者都可以配合gulp和grunt等前端構建工具使用
sass和less主要區別:在於實現方式 less是基於JavaScript的在客戶端處理,引入less.js就可以處理,sass是基於ruby所以在服務器處理。
sass優點:
用戶多,更容易找到會用scss的開發,更容易找到scss的學習資源;
可編程能力比較強,支持函數,列表,對象,判斷,循環等;相比less有更多的功能;
豐富的sass庫:Compass/Bourbon;
sass缺點:
在公司內部安裝node-sass會失敗,需要使用cnpm或者手工安裝
less優點
可以在瀏覽器中運行,實現主題定製功能;
less缺點
編程能力弱,不直接支持對象,循環,判斷等;只有when判斷
@variable 變量命名和css的@import/media/keyframes等含義容易混淆;
mixin/extend的語法比較奇怪;
mixin的參數如果遇到多參數和列表參數值的時候容易混淆;