本質上,LESS 包含一套自定義的語法及一個解析器,用戶根據這些語法定義本身的樣式規則,這些規則最終會經過解析器,編譯生成對應的 CSS 文件。LESS 並無裁剪 CSS 原有的特性,更不是用來取代 CSS 的,而是在現有 CSS 語法的基礎上,爲 CSS 加入程序式語言的特性。css
對比css主要有如下幾個支持web
lessless
@color: #4D926F; #header { color: @color; } h2 { color: @color; }
編譯後的cssspa
#header { color: #4D926F; } h2 { color: #4D926F; }
lesscode
// 定義一個樣式選擇器 .roundedCorners(@radius:5px) { -moz-border-radius: @radius; -webkit-border-radius: @radius; border-radius: @radius; } // 在另外的樣式選擇器中使用 #header { .roundedCorners; } #footer { .roundedCorners(10px); }
編譯後的cssit
#header { -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; } #footer { -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; }
less編譯
#home{ color : blue; width : 600px; height : 500px; border:outset; #top{ border:outset; width : 90%; } #center{ border:outset; height : 300px; width : 90%; #left{ border:outset; float : left; width : 40%; } #right{ border:outset; float : left; width : 40%; } } }
cssclass
#home { color: blue; width: 600px; height: 500px; border: outset; } #home #top { border: outset; width: 90%; } #home #center { border: outset; height: 300px; width: 90%; } #home #center #left { border: outset; float: left; width: 40%; } #home #center #right { border: outset; float: left; width: 40%; }