2021-03-12 LESS的基本使用:

一、LESS的基本使用

經(jīng)過上述介紹,我們知道Less屬于預(yù)處理器 可以簡(jiǎn)單理解Less其實(shí)就是CSS的擴(kuò)展語言食铐,它增加了一些CSS原本沒有的東西,如變量僧鲁、混合(mixin)虐呻、函數(shù)等功能象泵,讓CSS`變得更容易書寫和維護(hù)

1.變量

Less可以使用一個(gè)變量,需要配合@斟叼,并且支持表達(dá)式

@width:10px;@height:@width+10px;#header{width:@width;height:@height;}

編譯成:

#header{width:10px;height:20px;}

2.混入Mixins

Mixins常常用于將一組通用的屬性混合到另一個(gè)需要的地方偶惠,混入時(shí)需要配合()使用

.bordered{border-top:dotted 1px black;border-bottom:solid 2px black;}#menu a{color:#111;.bordered();}.post a{color:red;.bordered();}

編譯成

.bordered{border-top:dotted 1px black;border-bottom:solid 2px black;}#menu a{color:#111;border-top:dotted 1px black;border-bottom:solid 2px black;}.post a{color:red;border-top:dotted 1px black;border-bottom:solid 2px black;}

3.嵌套Nesting

Less書寫的代碼更加簡(jiǎn)潔,模仿了HTML的組織結(jié)構(gòu)朗涩,例如以前

#header{color:black;}#header .navigation{font-size:12px;}#header .logo{width:300px;}

使用Less

#header{color:black;.navigation{font-size:12px;}.logo{width:300px;}}

另外忽孽,在Less內(nèi),&可以表示當(dāng)前選擇器的父級(jí)

4.運(yùn)算符

Less支持+谢床、-兄一、*、/算術(shù)運(yùn)算符,可以對(duì)任何數(shù)字、顏色或變量進(jìn)行運(yùn)算

需要注意:算術(shù)運(yùn)算符在加谓着、減或比較之前會(huì)進(jìn)行單位換算。計(jì)算的結(jié)果以最左側(cè)操作數(shù)的單位類型為準(zhǔn)骂束。如果單位換算無效或失去意義,則忽略單位成箫。無效的單位換算例如:px到cm或rad到%的轉(zhuǎn)換

// 所有操作數(shù)被轉(zhuǎn)換成相同的單位@conversion-1:5cm+10mm;// 結(jié)果是 6cm@conversion-2:2-3cm-5mm;// 結(jié)果是 -1.5cm// conversion is impossible@incompatible-units:2+5px-3cm;// 結(jié)果是 4px// example with variables@base:5%;@filler:@base*2;// 結(jié)果是 10%@other:@base+@filler;// 結(jié)果是 15%//對(duì)顏色的計(jì)算@color:#224488/2;//結(jié)果是 #112244background-color:#112244+#111;// 結(jié)果是 #223355

另外展箱,乘法和除法不作轉(zhuǎn)換

@base:2cm*3mm;// 結(jié)果是 6cm

5.轉(zhuǎn)義Escaping

Less可以使用使用任意字符串作為屬性或變量值,前提是格式:~"anything"或~'anything'

@min768:~"(min-width: 768px)";.element{@media @min768{font-size:1.2rem;}}

編譯為

@media(min-width:768px){.element{font-size:1.2rem;}}

6.函數(shù)Functions

Less內(nèi)置了非常多的函數(shù)蹬昌,用于轉(zhuǎn)換顏色析藕、處理字符串、算術(shù)運(yùn)算等

@base:#f04615;@width:0.5;.class{width:percentage(@width);// returns `50%`color:saturate(@base,5%);background-color:spin(lighten(@base,25%),8);}

這個(gè)例子利用percentage函數(shù)將 0.5 轉(zhuǎn)換為 50%凳厢,利用saturate將顏色飽和度增加 5%账胧,以及利用lighten將顏色亮度降低 25% 并且利用spin將色相值增加 8

7.命名空間和訪問符

有時(shí),出于組織結(jié)構(gòu)或僅僅是為了提供一些封裝的目的先紫,你希望對(duì)混合(mixins)進(jìn)行分組治泥。你可以用Less更直觀地實(shí)現(xiàn)這一需求。

#bundle(){.button{display:block;border:1px solid black;background-color:grey;&:hover{background-color:white;}}}

現(xiàn)在遮精,如果我們希望把.button類混合到#header a中居夹,我們可以這樣做:

#header a{color:orange;#bundle.button();// 還可以書寫為 #bundle > .button 形式}

編譯成

#header a{color:orange;display:block;border:1px solid black;background-color:grey;}#header a:hover{background-color:white;}

8.映射Maps

從Less 3.5版本開始,可以將混合(mixins)和規(guī)則集(rulesets)作為一組值的映射(map)使用本冲。簡(jiǎn)單來說就是想js中的對(duì)象.屬性來讀取值准脂,但是是用[]的形式

#colors(){primary:blue;secondary:green;}.button{color:#colors[primary];border:1px solid #colors[secondary];}

編譯成

.button{color:blue;border:1px solid green;}

9.作用域Scope

Less中的作用域的概念與JavaScript類似,首先在本地查找變量和混合(mixins)檬洞,如果找不到狸膏,則從“父”級(jí)作用域繼承

@var:red;#page{@var:white;#header{color:@var;// white}}

并且變量類似js有提升效果,例如

@var:red;#page{#header{color:@var;// white}@var:white;}

10.注釋

less的注釋跟js一致添怔,分單行注釋和多行注釋

/* 一個(gè)塊注釋

* style comment! */@var:red;// 這一行被注釋掉了湾戳!@var:white;

11.導(dǎo)入Importing

Less也支持導(dǎo)入語法贤旷,如果導(dǎo)入的文件是.less擴(kuò)展名,則可以將擴(kuò)展名省略掉

@import"library";// library.less@import"typo.css";

作者:深度剖析JavaScript

鏈接:http://www.reibang.com/p/6d5f8ec6e2f4

來源:簡(jiǎn)書

著作權(quán)歸作者所有砾脑。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)幼驶,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末韧衣,一起剝皮案震驚了整個(gè)濱河市盅藻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌畅铭,老刑警劉巖氏淑,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異顶瞒,居然都是意外死亡夸政,警方通過查閱死者的電腦和手機(jī)元旬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門榴徐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人匀归,你說我怎么就攤上這事坑资。” “怎么了穆端?”我有些...
    開封第一講書人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵袱贮,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我体啰,道長(zhǎng)攒巍,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任荒勇,我火速辦了婚禮柒莉,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘沽翔。我一直安慰自己兢孝,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開白布仅偎。 她就那樣靜靜地躺著跨蟹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪橘沥。 梳的紋絲不亂的頭發(fā)上窗轩,一...
    開封第一講書人閱讀 51,688評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音座咆,去河邊找鬼品姓。 笑死寝并,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的腹备。 我是一名探鬼主播衬潦,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼植酥!你這毒婦竟也來了镀岛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤友驮,失蹤者是張志新(化名)和其女友劉穎漂羊,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體卸留,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡走越,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了耻瑟。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片旨指。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖喳整,靈堂內(nèi)的尸體忽然破棺而出谆构,到底是詐尸還是另有隱情,我是刑警寧澤框都,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布搬素,位于F島的核電站,受9級(jí)特大地震影響魏保,放射性物質(zhì)發(fā)生泄漏熬尺。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一谓罗、第九天 我趴在偏房一處隱蔽的房頂上張望粱哼。 院中可真熱鬧,春花似錦妥衣、人聲如沸皂吮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蜂筹。三九已至,卻和暖如春芦倒,著一層夾襖步出監(jiān)牢的瞬間艺挪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留麻裳,地道東北人口蝠。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像津坑,于是被迫代替她去往敵國(guó)和親妙蔗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容