帶你認(rèn)識(shí)Less

如今的前端,玩起來(lái)的花樣真是五花八門,抽空花了點(diǎn)時(shí)間,整理了這篇文章,涉及的知識(shí)不深,但用起來(lái)還是很舒服的,就算是認(rèn)識(shí)一下這個(gè)強(qiáng)大的less吧,好,廢話不多說(shuō),進(jìn)入正題。

認(rèn)識(shí)Less

1.首先它是干嘛的

2.如何配置它

3.用sublime編輯器如何讓它的代碼高亮,提升編碼質(zhì)量

4.它的語(yǔ)法難嗎

5.我要怎么編譯它,轉(zhuǎn)成我要用的css(基于less的工具,node實(shí)現(xiàn))


我們先來(lái)看下官網(wǎng)怎么說(shuō)的

一種動(dòng)態(tài)樣式語(yǔ)言.

LESS將CSS賦予了動(dòng)態(tài)語(yǔ)言的特性,如變量,繼承,運(yùn)算,函數(shù). LESS既可以在客戶端上運(yùn)行(支持IE 6+, Webkit, Firefox),也可以借助Node.js或者Rhino在服務(wù)端運(yùn)行。

也就是說(shuō)它最終輸出的還是我們所認(rèn)識(shí)的css, 它具有動(dòng)態(tài)的語(yǔ)言特性。所以,它最終還是一個(gè)工具,并不是取代我們的css,這一點(diǎn)要記住。既然是工具,那一定有它的運(yùn)行環(huán)境:

環(huán)境配置

我在用的時(shí)候,看過(guò)別人的博客寫的一些文章,有講在瀏覽器端引入less.js文件的等等用法,但是我個(gè)人認(rèn)為,有好的工具可以用,為什么要糾結(jié)怎么用呢,比如基于webpack的,這些都是很好的工具。下面我給大家分享一下我個(gè)人用的工具(當(dāng)然,各有所好,你也可以去官網(wǎng)上把方法都試一下)

因?yàn)槭腔趎ode的,所以第一步要搭建好node環(huán)境:(因?yàn)椴皇侵攸c(diǎn)介紹node,所以簡(jiǎn)單的搭建一下)

Node.js安裝包及源碼下載地址為:https://nodejs.org/en/download/

官網(wǎng)有不同操作系統(tǒng)的版本,根據(jù)你的電腦,下載合適的版本進(jìn)行安裝。

詳細(xì)參考這里:http://www.runoob.com/nodejs/nodejs-install-setup.html

安裝好以后我是試一下是否安裝成功:(命令行工具 windows:在開(kāi)始那打cmd )

node --version? npm --version (安裝好后這個(gè)包工具一般自帶)

成功它會(huì)返回版本號(hào)

簡(jiǎn)單的搭建就到這里,下面我們進(jìn)入今天要講的less


命令行輸入:

npm install less -g? (-g全局可以使用,就是你在d盤和桌面都可以調(diào)用它)

你也可以指定版本號(hào):

npm install less@1.6.2 -g

當(dāng)然你也可以檢測(cè)它是否安裝成功:

lessc --version (注意輸入的是lessc)

使用它:

Usage: lessc [option option=parameter ...][destination]

給大家一個(gè)實(shí)例:

lessc -x ./less/index.less main.css

意思就是用這個(gè)編譯工具去編譯當(dāng)前目錄less文件夾下的index.less文件 編譯成功后,結(jié)果輸出到當(dāng)前目錄下的main.css文件中,如果不存在main,會(huì)自動(dòng)創(chuàng)建,這里只需要在html文件中引入main.css的文件就可以了。這個(gè)工具的好處是,它可以壓縮代碼,很神奇吧~~


對(duì)于有強(qiáng)迫癥的同學(xué)來(lái)說(shuō),當(dāng)你很努力的敲上一段代碼時(shí),你的編輯器全是灰灰的代碼,估計(jì)連繼續(xù)寫下去的想法都沒(méi)有了~。這里給大家介紹一個(gè)sublime的插件,可以高亮less文件中的代碼哦~~~

下載地址:https://github.com/danro/LESS-sublime/zipball/master

如何去安裝它(sublime)

菜單欄首先找到首選項(xiàng),選擇第一個(gè),它會(huì)打開(kāi)瀏覽插件的目錄,然后新建less的目錄,將你剛剛下載的壓縮包解壓到那個(gè)文件夾,ok安裝好。緊接著使用它就好了,來(lái)看圖:

點(diǎn)擊右下角,選擇LESS,重新啟動(dòng)它就好啦~~

是不是很簡(jiǎn)單~~~


語(yǔ)法介紹

給大家介紹常用的用法:

1.變量

恩,這個(gè)詞不陌生,js中常提到。

@color: red;

body{ background: @color;}

從代碼看,很容易理解,就是將需要的值存在一個(gè)代碼中,可以帶不同的地方調(diào)用它。改的時(shí)候,只需要改一處就好了。

2.混合

先看一個(gè)代碼:

是不是看上去很簡(jiǎn)潔呢? less還是很強(qiáng)大的。

3.嵌套規(guī)則

我們可以在一個(gè)選擇器中嵌套另一個(gè)選擇器來(lái)實(shí)現(xiàn)繼承,這樣很大程度減少了代碼量,并且代碼看起來(lái)更加的清晰。


4.函數(shù)&運(yùn)算

運(yùn)算提供了加,減,乘,除操作;我們可以做屬性值和顏色的運(yùn)算,這樣就可以實(shí)現(xiàn)屬性值之間的復(fù)雜關(guān)系。LESS中的函數(shù)一一映射了JavaScript代碼,如果你愿意的話可以操作屬性值。

這里要提的是,不能瞎運(yùn)算,舉個(gè)例子,可能你會(huì)疏忽這樣寫: .red(@length*4) ,不信的話,你編譯一下,它會(huì)報(bào)錯(cuò)的。

5.注釋

CSS 形式的注釋在LESS 中是依然保留的

LESS 同樣也支持雙斜線的注釋, 但是編譯成CSS 的時(shí)候自動(dòng)過(guò)濾掉

6.其他

當(dāng)然less還有一些高級(jí)語(yǔ)法,在這里就不一一介紹了,給大家貼個(gè)手冊(cè),感興趣的,看一看。

LESS:



別人曾經(jīng)在學(xué)習(xí)上給了我很大的幫助,如今我也想寫點(diǎn)東西去幫助別人,僅此而已


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • [目錄](méi) Less為什么會(huì)出現(xiàn)? 學(xué)習(xí)Less的網(wǎng)站 Less的安裝環(huán)境離線的安裝方式在線的安裝方式 less轉(zhuǎn)化...
    頑皮的雪狐七七閱讀 15,722評(píng)論 5 42
  • 先安利我最近看的一部電視劇吧:《雞毛飛上天》,講浙江義烏小商品市場(chǎng)怎么發(fā)展起來(lái)的故事,以小積大呀,所以我們的基礎(chǔ)一...
    Iris_mao閱讀 648評(píng)論 0 6
  • Sublime Text:一款具有代碼高亮、語(yǔ)法提示、自動(dòng)完成且反應(yīng)快速的編輯器軟件,不僅具有華麗的界面,還支持插...
    xiaotao123閱讀 9,605評(píng)論 0 27
  • 簡(jiǎn)介 CSS(層疊樣式表)是一門歷史悠久的標(biāo)記性語(yǔ)言,同 HTML 一道,被廣泛應(yīng)用于萬(wàn)維網(wǎng)(World Wide...
    老夫的天閱讀 2,032評(píng)論 1 29
  • Sublime Text:一款具有代碼高亮、語(yǔ)法提示、自動(dòng)完成且反應(yīng)快速的編輯器軟件,不僅具有華麗的界面,還支持插...
    追風(fēng)逸少丶閱讀 11,478評(píng)論 1 34

友情鏈接更多精彩內(nèi)容