less學習----less變量


一、什么是less

less是css的擴展。他擴展了變量、mixin、函數等功能,使得css代碼寫的更有效率、更爽(哈哈),本篇主要先介紹less的變量

 

二、less的變量

相信在寫css的時候,你總會發現,你某些屬性的值一直都是重復的,例如系統的背景顏色、logo的地址等等,

因此通過less 的變量,你可以將重復的值用一個變量保存起來,然后就直接用!!!

語法: @+變量名

例子:

@base-color:#ff0000;

.one {
 background-color:@base-color;
 color:#ffffff;              
}

 然后將其轉化為css則為:

.one {
 background-color:#ff0000;
 color:#ffffff;              
}

 呀,沒錯,就只是直接替換而已,是不是很簡單,

當然了,less變量不僅可以用來表示屬性的值,還可以用來表示選擇器、屬性名稱、URL等

首先是選擇器:

@my-select : one ;

.@{my-select} {
 background-color:red;   
}

//編譯后如下:
.one { background-color:red; }

實際上還是直接將變量替換成類名而已啦,只是在使用時需要注意格式為:@{變量}

屬性名稱:

@property :color

.one {
 @{property}:white;
 background-@{property}:red;
}

//編譯后
.one {
 color:white;
 background-color:red;
}

 屬性名稱也是同理,同時你還會注意到,變量可以替換到屬性名稱的一部分,background-color就是這樣子啦

URL:

@url: "./styles"

.one {
    background:url(@{url}/img/1.jpg)
}

//css引用
@import "@{url}/themes/font.less"

 我們可以通過將路徑的地址存儲到變量中,可以直接替換掉圖片或者css引用中的路徑

在使用變量時,不僅可以存儲上述各項信息,同時也可以用來存儲變量名,是的,用變量來存儲變量名(老套娃了,哈哈)

@a : "b";
@b : #ff0000;

.one {
    background-color:@@a;
}

//編譯后
.one {
    background-color:#ff0000;
}

 這樣子看是不是很有趣多了。

 

 

下面講述變量的特性(划起來,要考的)

變量是延遲加載的,無需提前聲明

怎么理解呢,通過例子來最好理解了

@my-width : 100px;
@a : 10px;

.one {
  width:@a;
}
  

  


.one {
  width:@a;
}
@my-width : 100px;
@a : 10px;
 

 上邊兩種寫法都是可以通過,都能讀取到變量的值

 

接着第二個是,有關於變量的作用范圍,emm,就是在哪個括號就包括在哪里

.one {
  width:@my-width;
  @a:10px;
}
.two {
  width:@a;//這里這里,找不到a變量
}
@my-width : 100px;

 了解了變量的作用范圍后,我們來看下一個,若變量在內外都定義了呢

@my-width : 100px;
.one {
  width:@my-width;
  @my-width:10px;
}

//編譯后
.one {
  width:10px;
}

 less會從內到外去尋找變量,若里面找的到,那么就不考慮外邊了,若里面沒有,則向外找,有就替換,沒有,那就繼續往外,直至找不到

 附上下一篇:less的嵌套規則

關於less的變量介紹就這么多了,本文是個人在學習中的筆記整理,那么是從哪里學的,當然是看文檔,哈哈

附上less文檔:http://lesscss.cn/features/#variables-feature


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM