less教程

  平時在工做中,偶爾會遇到老大讓你修改原來寫好的樣式,若是修改的多的話,修改起來是很是麻煩的.他不像js同樣,定義變量、函數,須要修改某些值,直接修改方法就好了。less的出現,偏偏幫咱們解決了這個問題css

在這呢,咱們簡要說明一下less:node

  LESSCSS是一種動態樣式語言,屬於CSS預處理語言的一種,它使用相似CSS的語法,爲CSS的賦予了動態語言的特性,如變量、繼承、運算、函數等,更方便CSS的編寫和維護。npm

LESS能夠在多種語言、環境中使用,包括瀏覽器端、桌面客戶端、服務端。瀏覽器

在學習前,咱們須要作一下前期的工做:less

安裝sublime text3插件:

  sublime text默認是不支持less語法的高亮顯示的,須要安裝less2css插件後才能高亮顯示。函數

該插件的做用:學習

1.當保存文件的時候,會自動生成一個同名的css文件(注意點:若是保存less的父文件夾爲less,那麼就會在less同級的目錄下生成一個css文件夾,而且把生成的同名css文件保存到該css文件夾中)spa

2.當保存less文件的時候提示編譯錯誤信息插件

安裝node.js

  剛剛那只是前期的第一步,第二步是須要安裝node.js,由於less須要node.js支持。下載安裝到這裏下載 https://nodejs.org/en/download/ 選擇本身電腦的版本下載安裝就能夠了。下載安裝好以後,只須要在環境中安裝less 就好code

安裝方法: 打開命令語句window+r點擊肯定輸入如下語句:

$ npm install -g less

// 全局安裝好以後,編譯less
指定的路徑:lessc less文件名 css文件名
E:\項目\blog-04-24\css> lessc style.less style.css

開始使用less

  完成了以上工做以後,咱們終於開始要進入主題啦,下面能我就只是講講基本的使用,詳細的使用你們仍是去看官網的吧,畢竟寫起來太長了,很耗費時間呢。

  變量:less中定義變量是用@變量名:值;的方式的

@bgColor:#0094ff; 
@color:#fff;
.demo{
    background-color:@bgColor;
    color:@color;
}

生成的css代碼:

.demo {
  background-color: #0094ff;
  color: #ffffff;
}

混合式寫法:

  混合能夠將一個定義好的class A輕鬆的引入到另外一個class B中,從而簡單實現class B繼承class A中的全部屬性。咱們還能夠帶參數地調用,就像使用函數同樣。

/*less*/
@bgColor:#0094ff; 
@color:#fff;
.demo{
    background-color:@bgColor;
    color:@color;
}
.header{
    border:1px solid #ededed;
    .demo;
}



/*輸出的css*/
.demo {
  background-color: #0094ff;
  color: #ffffff;
}
.header {
  border: 1px solid #ededed;
  background-color: #0094ff;
  color: #ffffff;
}

嵌套式寫法:

  咱們能夠在一個選擇器中嵌套另外一個選擇器來實現繼承,這樣很大程度減小了代碼量,而且代碼看起來更加的清晰。

/*less寫法*/
@bgColor:#0094ff; 
@color:#fff;
.demo{
    background-color:@bgColor;
    color:@color;
}
header{
    border:1px solid #ededed;
    .demo;
    h1 {
    font-size: 26px;
    font-weight: bold;
  }
  p { font-size: 12px;
    a { text-decoration: none;
      &:hover { border-width: 1px }
    }
  }
}


/*輸出的css*/
.demo {
  background-color: #0094ff;
  color: #ffffff;
}
header {
  border: 1px solid #ededed;
  background-color: #0094ff;
  color: #ffffff;
}
header h1 {
  font-size: 26px;
  font-weight: bold;
}
header p {
  font-size: 12px;
}
header p a {
  text-decoration: none;
}
header p a:hover {
  border-width: 1px;
}

函數 & 運算

運算提供了加,減,乘,除操做;咱們能夠作屬性值和顏色的運算,這樣就能夠實現屬性值之間的複雜關係。LESS中的函數一一映射了JavaScript代碼,若是你願意的話能夠操做屬性值。

/*less*/
@the-border: 1px;
@base-color: #111;
@red:        #842210;

#header {
  color: @base-color * 3;
  border-left: @the-border;
  border-right: @the-border * 2;
}
#footer { 
  color: @base-color + #003300;
  border-color: desaturate(@red, 10%);
}





/*css部分*/
#header {
  color: #333333;
  border-left: 1px;
  border-right: 2px;
}
#footer {
  color: #114411;
  border-color: #7d2717;
}

好了,我就講到這吧,詳細的你們能夠去官網上看,理解起來也是很是容易的 附上官網地址: http://less.bootcss.com/#

相關文章
相關標籤/搜索