預(yù)編譯語(yǔ)言

預(yù)編譯語(yǔ)言 Sass Less Stylus之間的區(qū)別

  • Less是基于JavaScript,是在客戶端處理的。其缺點(diǎn)是比起SASS來(lái),可編程功能不夠,不過(guò)優(yōu)點(diǎn)是簡(jiǎn)單和兼容CSS。
  • Sass是基于Ruby,是在服務(wù)器端處理的。
  • Stylus主要用來(lái)給Node項(xiàng)目進(jìn)行CSS預(yù)處理支持。語(yǔ)法自由度很高。

了解 PostCSS

學(xué)習(xí)less

官網(wǎng)less

  • npm install -g less
  • lessc style.less style.css

嵌套規(guī)則

操作

  • LESS支持一些算術(shù)運(yùn)算,例如加號(hào)(+),減號(hào)( - ),乘法(*)和除法(/)
@fontSize: 10px;
.myclass {
 font-size: @fontSize * 2;
 color:green;
}

轉(zhuǎn)義

  • ?“some_text"中的任何內(nèi)容將顯示為 some_text
p {
  color: ~"green";
}

函數(shù)

  • 如圓函數(shù),floor函數(shù),ceil函數(shù),百分比函數(shù)等。
@color: #FF8000;
@width:1.0;
.mycolor{
color: @color;
 width: percentage(@width);
}

命名空間和訪問(wèn)器

  • 它用于將mixins分組在通用名稱下。 使用命名空間可以避免名稱沖突,并從外部封裝mixin組。
.class1 {
  .class2 {
    .val(@param) {
      font-size: @param;
      color:green;
    }
  }
}

.myclass {
  .class1 > .class2 > .val(20px);
}

變量范圍

  • 變量范圍指定可用變量的位置。 變量將從本地作用域搜索,如果它們不可用,則編譯器將從父作用域搜索。
@var: @a;
@a: 15px;

.myclass {
  font-size: @var;
  @a:20px;
  color: green;
}

導(dǎo)入

@import "http://www.w3cschool.cn/less/myfile.less";
@import (less, optional) "custom.css";

變量

  • @變量名:變量值

擴(kuò)展

  • &是父級(jí)選擇器的引用
  • Extend是一個(gè)LESS偽類,它通過(guò)使用:extend 選擇器在一個(gè)選擇器中擴(kuò)展其他選擇器樣式。
h2 {
  &:extend(.style);//給.style加上extend所在父級(jí)的樣式
  font-style: italic;
}
.style {
  background: green;
}
//編譯后
h2 {
  font-style: italic;
}
.style,
h2 {
  background: green;
}
.style:extend(.container, .img)
{
  background: #BF70A5;
}
.container {
  font-style: italic;
}
.img{
   font-size: 30px;
 }

.style {
  background: #BF70A5;
}
.container,
.style {
  font-style: italic;
}
.img,
.style {
  font-size: 30px;
}
 

混合

  • Mixins是一組CSS屬性,允許您將一個(gè)類的屬性用于另一個(gè)類,并且包含類名作為其屬性。
.p1{
  color:red;
}
.p2{
  background : #64d9c0;
  .p1();
}
.p3{
   background : #DAA520;
  .p1;
}

.p1 {
  color: red;
}
.p2 {
  background: #64d9c0;
  color: red;
}
.p3 {
  background: #DAA520;
  color: red;
}

混合參數(shù)

  • 參數(shù)mixin使用一個(gè)或多個(gè)參數(shù),通過(guò)參數(shù)和其屬性來(lái)擴(kuò)展LESS的功能,以便在混合到另一個(gè)塊時(shí)自定義mixin輸出。
.border(@width; @style; @color) {
    border: @width @style @color;
}

.myheader {
    .border(2px; dashed; green);
}

將規(guī)則集傳遞給Mixins

@detached-ruleset: {
    .mixin() {
        font-family: "Comic Sans MS";
        background-color: #AA86EE;
    }
};

.cont {
    @detached-ruleset();
    .mixin();
}


.cont {
  font-family: "Comic Sans MS";
  background-color: #AA86EE;
}

Mixin Guards

.mixin (@a) when (lightness(@a) >= 50%) {
   font-size: 14px;
}
.mixin (@a) when (lightness(@a) < 50%) {
   font-size: 16px;
}
.mixin (@a) {
   color: @a;
}
.class1 {
   .mixin(#FF0000)
}
.class2 {
   .mixin(#555)
}

.class1 {
  font-size: 14px;
  color: #FF0000;
}
.class2 {
  font-size: 16px;
  color: #555;
}

CSS Guards ???

@usedScope: global;
.mixin() {
  @usedScope: mixin;
  .cont when (@usedScope=global) {
    background-color: red;
    color: black;
  }
  .style when (@usedScope=mixin) {
    background-color: blue;
    color: white;
  }
  @usedScope: mixin;
}
.mixin();

.style {
  background-color: blue;
  color: white;
}

循環(huán)

.cont(@count) when (@count > 0) {
  .cont((@count - 1));
  width: (25px * @count);
}
div {
  .cont(7);
}

div {
  width: 25px;
  width: 50px;
  width: 75px;
  width: 100px;
  width: 125px;
  width: 150px;
  width: 175px;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 雨后 晴天 窗外 沒(méi)一片霧霾 路上 人潮如海 你我都不是那個(gè)例外 如果倒帶重來(lái) 不過(guò)是異想天開(kāi) 想不開(kāi) 才要想開(kāi) ...
    Singel行歌閱讀 209評(píng)論 0 3
  • 重男輕女的思想,我不知道在別的地方是怎么樣的。但我接觸到的,就是幾個(gè)例子,也讓我覺(jué)得很嚴(yán)重??赡苁窃谵r(nóng)村的原因,可...
    秋燃講故事閱讀 564評(píng)論 8 4
  • 今天在吳虹校長(zhǎng)的帶領(lǐng)下,我走進(jìn)了《未來(lái)學(xué)校離我們有多遠(yuǎn)?》。聆聽(tīng)著吳虹校長(zhǎng)熟悉而親切的聲音,我又一...
    通化496劉曉玲閱讀 142評(píng)論 0 2
  • 最近在追正午陽(yáng)光影業(yè)的電視劇《都挺好》,沒(méi)讀過(guò)原著,看之前以為是那種狗血都市生活劇,想著反正無(wú)聊就看看。都播了四...
    沈一木閱讀 850評(píng)論 0 1

友情鏈接更多精彩內(nèi)容