一小時學(xué)會less

less學(xué)習(xí)(學(xué)習(xí)筆記捧毛,取所需即可)

寫在前面:Less 是一門 CSS 預(yù)處理語言吼畏,它擴(kuò)展了 CSS 語言昔汉,增加了變量懈万、Mixin、函數(shù)等特性靶病,使 CSS 更易維護(hù)和擴(kuò)展会通。Less 可以運行在 Node 或瀏覽器端。

1娄周,注釋

//編譯后不保留

/**/編譯后保留

2涕侈,變量

        @color:red;
        .wrapper{
            width:200px;
            height: 200px;
            border: 1px solid @color;

如果需要定義屬性名和選擇器的變量,用的時候加{}花括號

變量的延遲加載

1540623406969.png

第六行中的變量@var煤辨,需要等到.brass這個塊里面所有的css加載完再在加載

并且當(dāng)前塊的變量只能找本塊及向上裳涛。不能調(diào)用子塊變量

記住就是簡單的字符替換,變量众辨,就是替換字符调违。結(jié)構(gòu)也是用空格表示子父之間dom

3,嵌套規(guī)則

除了子父級中的嵌套泻轰,當(dāng)想表示和本身是同一級的時候使用&

            .inner{
                @var: green;
                width:100px;
                height: 100px;
                border: 1px solid @color;
                &:hover{
                    background-color: black;
                }
            }
加了&等同于----(.inner:hover{樣式}),不加則為(.inner :hover)

4且轨,混合

混合就是將一系列屬性從一個規(guī)則集引入到另一個規(guī)則集的方式浮声。(反過來就是將一些共同的代碼提取出來放入一個規(guī)則中,然后再其他規(guī)則中套用這個規(guī)則使得代碼簡化旋奢,靈活化)

1泳挥,普通混合

2,不帶輸出的混合(就是將不需要輸出的規(guī)則后面加()如:.inner(){ width:200px至朗;})

3屉符,帶參數(shù)的混合(實參和形參不吻合會報錯)

4,帶參數(shù)并且有默認(rèn)值的混合

5锹引,帶多個參數(shù)的混合

6矗钟,命名參數(shù)(當(dāng)形參和實參個數(shù)不匹配,可以指定為具體的實參)

居中樣式規(guī)則集

        .juzhong(@w:100px,@h:100px,@c:red){
            width:@w;
            height: @h;
            border: 1px solid @c;
            position: absolute;
            left:50%;
            top:50%;
            margin-top:-250px;
            margin-left:-250px;
        }
        .wrapper{
            .juzhong(500px,500px);
            .inner{
                .juzhong(200px,200px,@c:pink);
            }
        }

7嫌变,匹配模式

引入外部less文件 @import './css/01.css'

匹配模式:當(dāng)簡單的混合不能滿足定制一些東西的時候吨艇。比如說需要一個可以設(shè)置方向和顏色的三角形。這個是不能簡單替換變量可以實現(xiàn)的腾啥。less中也沒有條件語句來判斷需要的是向上的邊框還是向下的东涡。就有了模式冯吓。將那些不參與定制的語句放到一個集合中,其他的寫成不同的模式疮跑。在調(diào)用 .trangle(L, 30px, red)時同時會調(diào)用.trangle(@_)组贺。

    <style type="text/less">
            .trangle(@_){
                width:0px;
                height:0px;
            }
            .trangle(L,@c,@w){
                border-width: @w;
                border-style: dashed solid dashed dashed;
                border-color: transparent @c transparent transparent;
            }
            .trangle(R,@c,@w){
                border-width: @w;
                border-style: dashed  dashed solid dashed;
                border-color: transparent transparent @c  transparent;
            }
            .wrapper{
                .trangle(L, 30px, red)
            }
        </style>
            <script src="less.js"></script>
    </head>
    <body>
        <div class="wrapper">
        </div>
    </body>

8,arguments變量(雞肋)

.border(@w,@s,@c){
    border: @arguments;
}
.wrapper{
    .border(1px,solid,red)
}
最后編譯:
.wrapper{
    border: 1px solid red;
}

less運算

在less中可以進(jìn)行加減乘除的運算

less中計算的雙方只需要一方帶有單位

width:(100+200px)

css原生計算:cacl(100px+100)實際是交給瀏覽編譯

less繼承

.wrapper .inner:nth-child(1){}

nth-child表示找到.inner的父元素(.wrapper)的子元素中第一個祖娘,并且class為.inner的

/* 在每組兄弟元素中選擇第四個 <p> 元素 */
p:nth-of-type(4n) {
  color: lime;
}

所以總結(jié)來說:nth-child和nth-of-type都是找和前面的元素同級的元素失尖。在less中,選中.wrapper下的第一個.inner應(yīng)該用&來寫表示同級

.wrapper{
    .inner{
        &:nth-child(1){
            
        }
    }
}
1541318319263.png

編譯后的css贿条,會創(chuàng)建一個組合的選擇器雹仿,加了all就會把這個類所有的狀態(tài)都加進(jìn)去


1541318374993.png

繼承和混合的區(qū)別

1,繼承的性能比混合高

2整以,繼承的靈活度比混合低(不能傳遞參數(shù))

less避免編譯

padding:~"cacl(100+10px)"

使用~“”包裹的語句less不會處理直接字符串輸出

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末胧辽,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子公黑,更是在濱河造成了極大的恐慌邑商,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凡蚜,死亡現(xiàn)場離奇詭異人断,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)朝蜘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門恶迈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人谱醇,你說我怎么就攤上這事暇仲。” “怎么了副渴?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵奈附,是天一觀的道長。 經(jīng)常有香客問我煮剧,道長斥滤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任勉盅,我火速辦了婚禮佑颇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘菇篡。我一直安慰自己漩符,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布驱还。 她就那樣靜靜地躺著嗜暴,像睡著了一般凸克。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上闷沥,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天萎战,我揣著相機(jī)與錄音,去河邊找鬼舆逃。 笑死蚂维,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的路狮。 我是一名探鬼主播虫啥,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼奄妨!你這毒婦竟也來了涂籽?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤砸抛,失蹤者是張志新(化名)和其女友劉穎评雌,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體直焙,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡景东,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了奔誓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片斤吐。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖厨喂,靈堂內(nèi)的尸體忽然破棺而出曲初,到底是詐尸還是另有隱情,我是刑警寧澤杯聚,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站抒痒,受9級特大地震影響幌绍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜故响,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一傀广、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧彩届,春花似錦伪冰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽靠柑。三九已至,卻和暖如春吓懈,著一層夾襖步出監(jiān)牢的瞬間歼冰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工耻警, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留隔嫡,地道東北人。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓甘穿,卻偏偏與公主長得像腮恩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子温兼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容