less
1. css作為一門標(biāo)記性語言毙玻,語法簡單腹尖,學(xué)習(xí)難度低辽社,但CSS 需要書寫大量看似沒有邏輯的代碼,不方便維護(hù)及擴(kuò)展蛙婴,不利于復(fù)用,,造成這些困難的很大原因源于CSS是一門非程序式語言筝闹,沒有變量、函數(shù)腥光、SCOPE(作用域)等概念关顷。
2. LESS 包含一套自定義的語法及一個(gè)解析器,用戶根據(jù)這些語法定義自己的樣式規(guī)則武福,這些規(guī)則最終會(huì)通過解析器议双,編譯生成對應(yīng)的 CSS 文件。
LESS 并沒有裁剪 CSS 原有的特性捉片,更不是用來取代 CSS 的平痰,而是在現(xiàn)有 CSS 語法的基礎(chǔ)上,為 CSS 加入程序式語言的特性伍纫。less它在CSS 的語法基礎(chǔ)之上宗雇,引入了變量,Mixin(混入)莹规,運(yùn)算以及函數(shù)等功能赔蒲,大大簡化了CSS的編寫,并且降低了CSS的維護(hù)成本访惜,嘹履,
3. Less 可以運(yùn)行在 Node 或?yàn)g覽器端。
0)使用less文件的思路
使用轉(zhuǎn)換程序(js文件)將less文件轉(zhuǎn)換成css文件
1) 方式1 在客戶端運(yùn)行l(wèi)ess轉(zhuǎn)換程序债热,了解
在html中引入xx.less,同時(shí)再引入less.js,就是一個(gè)可以運(yùn)行在客戶端瀏覽器中的less編譯程序 -- 效率偏低砾嫉,不推薦使用
2) 方式2 在服務(wù)端運(yùn)行l(wèi)ess轉(zhuǎn)換程序-推薦
1) 下載并安裝一款服務(wù)器端的js解釋器-nodejs
2) 下載less文件的轉(zhuǎn)換程序lessc --js腳本
3) 在服務(wù)器端js解釋器運(yùn)行l(wèi)essc轉(zhuǎn)換器,把自己編寫的.less文件轉(zhuǎn)換為css文件
a) 可以在命令行中使用轉(zhuǎn)換程序
node.exe lessc my.less my.css
b) 在hbuilder中使用轉(zhuǎn)換程序
4) html文件中窒篱,引用編譯得到的css文件
less語法學(xué)習(xí)
1. less完全支持css語法
2. lss支持單行注釋和多行注釋焕刮,但只有多行注釋會(huì)被轉(zhuǎn)換到css文件中
3. less支持變量(variable)
@變量名:值
使用:選擇器 {樣式:@變量名}
4. less支持樣式混合-在一個(gè)樣式中引用另一個(gè)樣式
.class1(){...}
.class2{..
...
.class1
...
.}
5. 帶參混合
.class()(@參數(shù)1舶沿,@參數(shù)2,配并。括荡。。){....}
.class2 {
...
.class(參數(shù)1溉旋,參數(shù)2);
...
}
}
6. 嵌套規(guī)則
.class1{
...
.class2 {
}
}
轉(zhuǎn)換的結(jié)果
.class1{
}
.class1 .class2{
}
7. less可以對變量和常量進(jìn)行算術(shù)運(yùn)算
8. less為樣式提供了幾十個(gè)應(yīng)用函數(shù)
lighten(顏色畸冲,亮度值):將制定的顏色變亮制定的百分比
darken(顏色,亮度值):將指定的顏色變暗指定的百分比
floor(數(shù)字) 對數(shù)值向下取整
ceil(數(shù)字) 對數(shù)值向上取整
9. 頁面導(dǎo)入
盡量避免使用css文件中的@import指令-會(huì)增加HTTP請求次數(shù)
為了將一個(gè)樣式文件拆分為多個(gè)小的樣式文件观腊,由多人同時(shí)編寫邑闲,可以使用less中的@import-less中導(dǎo)入其他less文件,轉(zhuǎn)換時(shí)會(huì)拼接一個(gè)大的完整的css樣式文件梧油,故推薦在less中導(dǎo)入其他less文件
@import "xx.less"
大型項(xiàng)目中l(wèi)ess文件結(jié)構(gòu)
variable.less 放置所有的變量
mixin.less 放置所有的混合
reset.less 放置HTML元素重置樣式
navbar.less 導(dǎo)航條相關(guān)
footer.less 頁腳相關(guān)樣式
js.less -> 一大堆less文件
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者