1. 程式人生 > >CSS預處理語言-less 的使用

CSS預處理語言-less 的使用

ont lin github 使用方法 方便 維護 調用 easy blog

Less 是一門 CSS 預處理語言,它擴展了 CSS 語言,增加了變量、Mixin、函數等特性,使 CSS 更易維護和擴展。

Less 可以運行在 Node 或瀏覽器端。

Less的編譯處理

作為一門CSS預處理語言,它並不像CSS一樣能直接使用,而是需要編譯後使用,如何編譯呢,下面分node 和瀏覽器端兩種情況解釋。

瀏覽器端:

瀏覽器端使用less,只需要做如下兩步:

1.引如Less

使用link標簽引入less,需要註意的是 rel="stylesheet/less"

<link rel="stylesheet/less"
type="text/css" href="styles.less" />

2.引入less解析用的js文件

<script src="less.js" type="text/javascript"></script>

3.聲明解析,要在引入 less.js前進行聲明。

<script>

   less = {

    env: "development",

    async: false,

    fileAsync: false,

    poll: 1000, functions: {},

    dumpLineNumbers: 
"comments",     relativeUrls: false, rootpath: ":/a.com/"   }; </script>

完事,就這麽簡單,但是 由於編譯解析less需要消耗一定的性能,且渲染也會有延遲,所有推薦使用node或其他第三方工具進行編譯後使用。

需要註意的是 js文件必須要在less文件後引入。

less.js 下載地址在這裏

node端

1. 使用npm安裝less

$ npm install -g less

2.編譯輸出

使用命令行調用less編譯器進行編譯

$ lessc styles.less

這會輸出到stdout編寫CSS。將CSS結果保存到所選擇使用的文件中

$ lessc styles.less styles.css

輸出後你可以使用編譯的style.css 啦。

less的使用方法

1.註釋

   less 的註釋分為兩種: /* 註釋內容 */ 和 // 註釋內容 。

/* */ 為塊註釋 可以註釋一行或多行,

// 為行註釋,只能註釋一行,而且這種註釋在編譯處理時會被編譯掉。

2.變量

  less中很方便的一個功能就是定義變量,當css多處用到同一個值的時候,如果不用變量,那麽改動它需要改動100處,而使用變量的話,只需要修改變量的值便可以全局修改了,是不是很方便呢。

和PHP類似 [email protected],無論是定義還是使用,使用如下 :

// 定義變量 
@cell_width:100px;

//在使用的時候就可以這樣使用

.cell{
  width:@
cell_width;

}

3.混合

和css差別並不大,同樣使用 選擇器 後 帶大括號 的形式,牛逼的是大括號裏還可以寫 選擇器 +大括號 的形式,

在不考慮渲染優化的情況下可以無限套下去,但是考慮到瀏覽器渲染任務繁重,往往最多只套4層。


.body{
  width:100%;
.section{
    border:1px solid #000;
  }
}

/*
解析後的效果是下面這樣的
*/
.body{
  width:100%;
}
.body .section{
    border:1px solid #000;
  }

除了套用,還可以引用:


.section{
    border:1px solid #000;
  }
.body{
  width:100%;
   .section;
} /* 解析後的效果是下面這樣的 */ 

.body{
  width:100%;
  border:1px solid #000;
} 

除了以上的,還能使用傳參,哈哈哈

.border_radius(@radius:5px){
    -webkit-border-radius:@radius;
    -moz-border-radius:@radius;
    border-radius:@radius;  
}
.cell{
    width: 100%;
    //可以不傳參數,默認用5px 
    .border_radius(10px)
}

可以說是非常靈活了,隨便套隨便引。

了解了以上的這些,就可以在實戰中使用Less進行項目開發啦!

(完)

CSS預處理語言-less 的使用