less語法

1.使用

客戶端使用

    <link rel="stylesheet/less" type="text/css" href="style.less">
    <script src="less.js" type="text/javascript"></script>

注意:less文件需要在less.js前引入

2.變量

    @nice-blue:#5B83AD;
    #header{
            color:@light-blue;
                }

輸出

    #header{
    color:#5B83AD;
    }

注意:less中變量是“常量“只能定義一次

混合

    .common{
        margin:0 auto;
    }

如果需要在其他class中引用通用屬性集,需要這樣做

    .class{
        color:#fff;
        .common;
    }

不帶參數(shù)的屬性集合會在css中顯示方法

    .common(){
        margin:0 auto;
       }

引用該樣式同上.class

帶參數(shù)混合

    #id(@radius){
        border-radius:@radius;
    }

引用

    .main{
        #id(5px);
    }

還可以給參數(shù)設置默認值

    #id(@radius:5px){
        border-radius:@rdius;
    }

引用該樣式同上.main

arguments變量

@arguments包含所有傳遞進來的參數(shù),如果不想單獨處理每一個參數(shù)的話可以這樣寫
好像用到的地方不多

    .border_arg(@w:30px,@c:red,@bd:solid){
        border:@arguments;
}

引用

    .border_width{
        .border_arg;
}

css顯示

    .border_width{
        border:30px red solid;
}

模式匹配

    .pos(r){
        position:relative;
    }
    .pos(a){
        position:absolute;
    }
    .pos(f){
        position:fixed;
    }

匹配引用

    .box{
        width:100px;
        .pos(f);
    }    

輸出

    .box{
        width:100px;
        position:fixed;
    }

導引表達式

    .box1(@a)when(lightness(@a)>=50%){
        background-color:black;
    }
    .box1(@a)when(lightness(@a)<50%){
        background-color:white;
    }

引用

.class{
        .box1(#ddd)
    }

css輸出

    .class{
        background-color:black;
    }

嵌套規(guī)則

    #header{
        color:black;
        .navigation{
            font-size:12px;
        }
        .logo{
            width:300px;
            &:hover{text-decoration:none;}
        }
    }

css顯示

    #header{
        color:black;
        }
    #header .navgation{
        font-size:12px;
       }
    #header .navgation:hover{
            text-decoration:none;
    }

注意 & 符號的使用串聯(lián)選擇器,而不是寫后代選擇器,就可以用到&了

函數(shù)

https://www.css88.com/doc/less/functions/#type-functions-isnumber

命名空間

為了更好的組織css或者為了更好地封裝,將一些變量或者混合模塊打包起來,以便重復使用

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

引用

    .calss a{
        #id> .button;
    }

CSS顯示

    .class a{
        display:block;
        border:1px solid black;
    }
    .class a:hover{
        background-color:white;
    }

作用域

less中的作用域和其他編程語言非常類似,首先會從本地查找變量或者混合模塊,如果沒有找到的話會去腹肌作用域中查找,知道找到為止

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

注釋

css形式的注釋在less中依然是保留的:

    /* 這是一個css中顯示的注釋*/
    //這是一個不會在css中顯示的注釋
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容