前端css框架SASS使用教程,sass学习笔记

SASS用法指南

2012/06/21 · CSS · CSS

来源:阮一峰

学过CSS的人都明白,它不是生机勃勃种编制程序语言。

您能够用它支付网页样式,不过没办法用它编程。也正是说,CSS基本上是设计员的工具,不是技师的工具。在程序猿眼里,CSS是生龙活虎件很坚苦的事物。它从未变量,也尚无条件语句,只是生龙活虎行行单纯的叙说,写起来卓越麻烦。

图片 1

很当然地,有人就起头为CSS出席编制程序成分,那被称呼”CSS预微电脑“(css preprocessor卡塔 尔(英语:State of Qatar)。它的骨干考虑是,用风流倜傥种特意的编制程序语言,进行网页样式设计,然后再编译成符合规律的CSS文件。

各类”CSS预微机”之中,作者要好最心爱SASS,以为它有数不完优点,打算现在都用它来写CSS。下面是自身收拾的用法总计,供自个儿支付时参照,相信对别的人也会有用。

图片 2

一、什么是SASS

SASS是大器晚成种CSS的开荒工具,提供了重重方便的写法,大大节省了设计者的年月,使得CSS的成本,变得轻松和可保证。

本文化总同盟结了SASS的根本用法。小编的目的是,有了那篇小说,日常的平常选用就没有须求去看官方文书档案了。

二、安装和动用

2.1 安装

SASS是Ruby语言写的,但是双方的语法没有涉及。不懂Ruby,照样使用。只是必需先安装Ruby,然后再设置SASS。

只要你已经设置好了Ruby,接着在命令行输入上面包车型地铁吩咐:

JavaScript

  gem install sass

1
  gem install sass

下一场,就足以采纳了。

2.2 使用

SASS文件正是普通的文书文件,里面能够直接行使CSS语法。文件后缀名是.scss,意思为Sassy CSS。

上边包车型地铁授命,能够在显示器上展现.scss文件转载的css代码。(假使文件名称叫test。卡塔 尔(阿拉伯语:قطر‎

JavaScript

  sass test.scss

1
  sass test.scss

万大器晚成要将显得结果保存成文件,前面再跟三个.css文件名。

JavaScript

  sass test.scss test.css

1
  sass test.scss test.css

SASS提供八个编写翻译风格的选项:

* nested:嵌套缩进的css代码,它是暗许值。

* expanded:未有缩进的、扩充的css代码。

* compact:简洁格式的css代码。

* compressed:压缩后的css代码。

生儿育女条件个中,平日采纳最终一个精选。

JavaScript

sass --style compressed test.sass test.css

1
sass --style compressed test.sass test.css

SASS的官方网址,提供了四个在线调换器。你能够在那里,试运作上边包车型地铁各样例子。

三、基本用法

3.1 变量
SASS允许利用变量,全体变量以$以前。

JavaScript

$blue : #1875e7; div { color : $blue; }

1
2
3
4
$blue : #1875e7;
div {
color : $blue;
}

一旦变量必要镶嵌在字符串之中,就务须必要写在#{}之中。

JavaScript

$side : left; .rounded { border-#{$side}-radius: 5px; }

1
2
3
4
$side : left;
.rounded {
border-#{$side}-radius: 5px;
}

3.2 计算功用

SASS允许在代码中使用算式:

JavaScript

body { margin: (14px/2); top: 50px 100px; right: $var * 10%; }

1
2
3
4
5
body {
margin: (14px/2);
top: 50px 100px;
right: $var * 10%;
}

3.3 嵌套

SASS允许选取器嵌套。比方,上面的CSS代码:

CSS

div h1 { color : red; }

1
2
3
div h1 {
color : red;
}

能够写成:

CSS

div { hi { color:red; } }

1
2
3
4
5
div {
hi {
color:red;
}
}

品质也足以嵌套:

CSS

p { border-color: red; }

1
2
3
p {
border-color: red;
}

能够写成:

CSS

p { border: { color: red; } }

1
2
3
4
5
p {
border: {
color: red;
}
}

小心,border前面总得抬高冒号。

3.4 注释

SASS共有二种注释风格。

标准的CSS注释 /* comment */ ,会保留到编写翻译后的文本。

单行注释 // comment,只保留在SASS源文件中,编写翻译后被略去。

四、代码的任用

4.1 继承

SASS允许一个选拔器,世袭另三个选拔器。举例,现存class1:

CSS

.class1 { border: 1px solid #ddd; }

1
2
3
.class1 {
border: 1px solid #ddd;
}

class2要世袭class1,将在选拔@extend命令:

CSS

.class2 { @extend .class1; font-size:120%; }

1
2
3
4
.class2 {
@extend .class1;
font-size:120%;
}

4.2 Mixin

Mixin有一点像C语言的宏(macro卡塔 尔(阿拉伯语:قطر‎,是能够援引的代码块。

运用@mixin命令,定义一个代码块。

CSS

@mixin left { float: left; margin-left: 10px; }

1
2
3
4
@mixin left {
float: left;
margin-left: 10px;
}

应用@include命令,调用这么些mixin。

CSS

div { @include left; }

1
2
3
div {
@include left;
}

mixin的强有力的地方,在于可以钦命参数和缺省值。

CSS

@mixin left($value: 10px) { float: left; margin-right: $value; }

1
2
3
4
@mixin left($value: 10px) {
float: left;
margin-right: $value;
}

接收的时候,依照必要加入参数:

CSS

div { @include left(20px); }

1
2
3
div {
@include left(20px);
}

4.3 颜色函数
SASS提供了生龙活虎部分松手的水彩函数,以便生成连串颜色。

CSS

lighten(#cc3, 10%) // #d6d65c darken(#cc3, 10%) // #a3a329 grayscale(#cc3) // #808080 complement(#cc3) // #33c

1
2
3
4
lighten(#cc3, 10%) // #d6d65c
darken(#cc3, 10%) // #a3a329
grayscale(#cc3) // #808080
complement(#cc3) // #33c

4.4 插入文件

@import命令,用来插入外界文件。

CSS

@import("path/filename.scss");

1
@import("path/filename.scss");

借使插入的是.css文件,则如出生龙活虎辙css的import命令。

CSS

@import "foo.css";

1
@import "foo.css";

五、高端用法

5.1 条件语句

@if能够用来决断:

JavaScript

p { @if 1 1 == 2 { border: 1px solid; } @if 5 < 3 { border: 2px dotted; }   } 配套的还应该有@else命令:   @if lightness($color) > 四分一{ background-color: #000; } @else { background-color: #fff; }

1
2
3
4
5
6
7
p {
@if 1 1 == 2 { border: 1px solid; }
@if 5 &lt; 3 { border: 2px dotted; }   } 配套的还有@else命令:   @if lightness($color) &gt; 30% {
background-color: #000;
} @else {
background-color: #fff;
}

5.2 循环语句

SASS支持for循环:

JavaScript

@for $i from 1 to 10 { .border-#{$i} { border: #{$i}px solid blue; } }

1
2
3
4
5
@for $i from 1 to 10 {
.border-#{$i} {
border: #{$i}px solid blue;
}
}

也支持while循环:

JavaScript

$i: 6; @while $i > 0 { .item-#{$i} { width: 2em * $i; } $i: $i - 2; }

1
2
3
4
5
$i: 6;
@while $i &gt; 0 {
.item-#{$i} { width: 2em * $i; }
$i: $i - 2;
}

each命令,作用与for类似:

JavaScript

@each $member in a, b, c, d { .#{$member} { background-image: url("/image/#{$member}.jpg"); } }

1
2
3
4
5
@each $member in a, b, c, d {
.#{$member} {
background-image: url(&quot;/image/#{$member}.jpg&quot;);
}
}

5.3 自定义函数

SASS允许客户编写本人的函数。

JavaScript

@function double($n) { @return $n * 2; } #sidebar { width: double(5px); }

1
2
3
4
5
6
@function double($n) {
@return $n * 2;
}
#sidebar {
width: double(5px);
}

(完)

赞 2 收藏 评论

图片 3

1.mac 下sass景况配置

一、什么是SASS

 

SASS是大器晚成种CSS的开拓工具,提供了比相当多低价的写法,大大节约了设计者的年月,使得CSS的付出,变得轻便和可爱护。

本文化总同盟结了SASS的首要性用法。笔者的对象是,有了那篇作品,平日的貌似采取就不要求去看官方文书档案了。

gem 代理设置

 

设置Gem代理

二、安装和使用

 

2.1 安装

SASS是Ruby语言写的,然则相互的语法未有关联。不懂Ruby,照样使用。只是必得先安装Ruby,然后再安装SASS。

譬喻你已经设置好了Ruby,接着在命令行输入上面的命令:

  gem install sass

然后,就足以接纳了。

2.2 使用

SASS文件就是数见不鲜的文书文件,里面能够直接行使CSS语法。文件后缀名是.scss,意思为Sassy CSS。

下边包车型地铁一声令下,能够在显示器上突显.scss文件转发的css代码。(若是文件名字为test。卡塔尔国

  sass test.scss

假诺要将显得结果保存成文件,前面再跟三个.css文件名。

  sass test.scss test.css

SASS提供八个编写翻译风格的选项:

  * nested:嵌套缩进的css代码,它是暗中认可值。

  * expanded:未有缩进的、扩张的css代码。

  * compact:简洁格式的css代码。

  * compressed:压缩后的css代码。

生育意况个中,日常选择最后三个采摘。

  sass --style compressed test.sass test.css

您也足以让SASS监听有些文件或目录,风流倜傥旦源文件有改观,就自动生成编写翻译后的本子。

  // watch a file

  sass --watch input.scss:output.css

  // watch a directory

  sass --watch app/sass:public/stylesheets

SASS的官方网站,提供了一个在线转变器。你能够在那边,试运作上边包车型大巴各个例子。

 

先安装极端全局代理  export http_proxy=

三、基本用法

 

3.1 变量

SASS允许利用变量,全体变量以$开始。

  $blue : #1875e7; 

  div {
   color : $blue;
  }

假若变量需求镶嵌在字符串之中,就务须必要写在#{}之中。

  $side : left;

  .rounded {
    border-#{$side}-radius: 5px;
  }

3.2 总计成效

SASS允许在代码中运用算式:

  body {
    margin: (14px/2);
    top: 50px 100px;
    right: $var * 10%;
  }

3.3 嵌套

SASS允许接受器嵌套。比方,下面包车型地铁CSS代码:

  div h1 {
    color : red;
  }

能够写成:

  div {
    hi {
      color:red;
    }
  }

天性也能够嵌套,比方border-color属性,能够写成:

  p {
    border: {
      color: red;
    }
  }

潜心,border前面总得抬高冒号。

在嵌套的代码块内,能够行使&援用父成分。举例a:hover伪类,能够写成:

  a {
    &:hover { color: #ffb3ff; }
  }

3.4 注释

SASS共有二种注释风格。

标准的CSS注释 /* comment */ ,会保留到编写翻译后的文件。

单行注释 // comment,只保留在SASS源文件中,编写翻译后被略去。

在/*末尾加二个感叹号,表示那是"主要注释"。就算是减掉方式编写翻译,也会保留那行注释,平时能够用于注明版权新闻。

  /*! 
    首要注释!
  */

然后设置gem代理 gem install bootstrap-scss --http-proxy $http_proxy

四、代码的重用

 

4.1 继承

SASS允许二个选择器,世袭另一个采用器。举例,现成class1:

  .class1 {
    border: 1px solid #ddd;
  }

class2要世袭class1,就要采纳@extend命令:

  .class2 {
    @extend .class1;
    font-size:120%;
  }

4.2 Mixin

Mixin有一点像C语言的宏(macro卡塔尔国,是能够采纳的代码块。

应用@mixin命令,定义多少个代码块。

  @mixin left {
    float: left;
    margin-left: 10px;
  }

行使@include命令,调用这一个mixin。

  div {
    @include left;
  }

mixin的强有力的地方,在于能够钦命参数和缺省值。

  @mixin left($value: 10px) {
    float: left;
    margin-right: $value;
  }

使用的时候,依照须求出席参数:

  div {
    @include left(20px);
  }

上边是叁个mixin的实例,用来变化浏览器前缀。

  @mixin rounded($vert, $horz, $radius: 10px) {
style="font-size: 16px;">    border-#{$vert}-#{$horz}-radius: $radius;
style="font-size: 16px;">    -moz-border-radius-#{$vert}#{$horz}: $radius;
style="font-size: 16px;">    -webkit-border-#{$vert}-#{$horz}-radius: $radius;
  }

利用的时候,能够像下边那样调用:

  #navbar li { @include rounded(top, left); }

  #footer { @include rounded(top, left, 5px); }

4.3 颜色函数

SASS提供了部分内置的颜料函数,以便生成种类颜色。

  lighten(#cc3, 10%) // #d6d65c
  darken(#cc3, 10%) // #a3a329
  grayscale(#cc3) // #808080
  complement(#cc3) // #33c

4.4 插入文件

@import命令,用来插入外界文件。

  @import "path/filename.scss";

若果插入的是.css文件,则无差异于css的import命令。

  @import "foo.css";

学习网址:

一、什么是SASS

SASS是黄金时代种CSS的开荒工具,提供了数不尽方便的写法,大大节约了设计者的岁月,使得CSS的支出,变得轻巧和可珍惜。

本文化总同盟结了SASS的首要用法。作者的目的是,有了那篇小说,平日的平日选用就没有必要去看法定文档了。

二、安装和平运动用

2.1 安装

SASS是Ruby语言写的,不过互相的语法未有涉嫌。不懂Ruby,照样使用。只是必得先安装Ruby,然后再安装SASS。

风流浪漫经你曾经设置好了Ruby,接着在命令行输入下边包车型地铁一声令下:

gem install sass

接下来,就足以接收了。

2.2 使用

SASS文件便是平日的文书文件,里面能够直接选用CSS语法。文件后缀名是.scss,意思为Sassy CSS。

上边的授命,能够在显示屏上展现.scss文件转载的css代码。(假如文件名叫test。卡塔 尔(英语:State of Qatar)

sass test.scss

若是要将显示结果保存成文件,前面再跟一个.css文件名。

sass test.scss test.css

SASS提供几个编写翻译风格的选项:

* nested:嵌套缩进的css代码,它是暗中同意值。

* expanded:未有缩进的、扩张的css代码。

* compact:简洁格式的css代码。

* compressed:压缩后的css代码。

生产意况在那之中,经常接纳最终三个筛选。

sass --style compressed test.sass test.css

您也足以让SASS监听有些文件或目录,大器晚成旦源文书有退换,就自动生成编写翻译后的本子。

// watch a file

sass --watch input.scss:output.css

// watch a directory

sass --watch app/sass:public/stylesheets

SASS的官网,提供了一个在线转变器。你能够在此,试运作下边包车型客车各个例子。

三、基本用法

3.1 变量

SASS允许接受变量,全数变量以$开始。

$blue : #1875e7;

div {

color : $blue;

}

要是变量供给镶嵌在字符串之中,就务须需求写在#{}之中。

$side : left;

.rounded {

border-#{$side}-radius: 5px;

}

3.2 总括功用

SASS允许在代码中动用算式:

body {

margin: (14px/2);

top: 50px 100px;

right: $var * 10%;

}

3.3 嵌套

SASS允许接纳器嵌套。举个例子,上面包车型大巴CSS代码:

div h1 {

color : red;

}

能够写成:

div {

      hi {

         color:red;

       }

}

个性也能够嵌套,举个例子border-color属性,能够写成:

p {

     border: {

          color: red;

     }

}

介意,border后边总得抬高冒号。

在嵌套的代码块内,能够应用&引用父成分。举个例子a:hover伪类,能够写成:

a {

       &:hover { color: #ffb3ff; }

}

3.4 注释

SASS共有两种注释风格。

标准的CSS注释 /* comment */ ,会保留到编写翻译后的公文。

单行注释 // comment,只保留在SASS源文件中,编写翻译后被略去。

在/*末尾加一个感叹号,表示那是"首要注释"。即便是削减情势编写翻译,也会保留那行注释,平日能够用于注脚版权音讯。

/*!

关键注释!

*/

四、代码的录用

4.1 继承

SASS允许二个接纳器,继承另三个接受器。举例,现存class1:

.class1 {

border: 1px solid #ddd;

}

class2要世袭class1,就要选用@extend命令:

.class2 {

@extend .class1;

font-size:120%;

}

4.2 Mixin

Mixin有一点点像C语言的宏(macro卡塔尔,是足以选取的代码块。

应用@mixin命令,定义二个代码块。

@mixin left {

float: left;

margin-left: 10px;

}

动用@include命令,调用那些mixin。

div {

@include left;

}

mixin的有力之处,在于能够钦赐参数和缺省值。

@mixin left($value: 10px) {

float: left;

margin-right: $value;

}

使用的时候,依据要求插手参数:

div {

@include left(20px);

}

上边是四个mixin的实例,用来变化浏览器前缀。

@mixin rounded($vert, $horz, $radius: 10px) {

border-#{$vert}-#{$horz}-radius: $radius;

-moz-border-radius-#{$vert}#{$horz}: $radius;

-webkit-border-#{$vert}-#{$horz}-radius: $radius;

}

利用的时候,能够像下边那样调用:

#navbar li { @include rounded(top, left); }

#footer { @include rounded(top, left, 5px); }

4.3 颜色函数

SASS提供了一些放到的颜色函数,以便生成连串颜色。

lighten(#cc3, 10%) // #d6d65c

darken(#cc3, 10%) // #a3a329

grayscale(#cc3) // #808080

complement(#cc3) // #33c

4.4 插入文件

@import命令,用来插入外界文件。

@import "path/filename.scss";

假诺插入的是.css文件,则一点差异也未有于css的import命令。

@import "foo.css";

五、高档用法

5.1 条件语句

@if能够用来判别:

p {

@if 1 1 == 2 { border: 1px solid; }

@if 5 < 3 { border: 2px dotted; }

}

配套的还应该有@else命令:

@if lightness($color) > 30% {

background-color: #000;

} @else {

background-color: #fff;

}

5.2 循环语句

SASS支持for循环:

@for $i from 1 to 10 {

.border-#{$i} {

border: #{$i}px solid blue;

}

}

也支持while循环:

$i: 6;

@while $i > 0 {

.item-#{$i} { width: 2em * $i; }

$i: $i - 2;

}

each命令,作用与for类似:

@each $member in a, b, c, d {

.#{$member} {

background-image: url("/image/#{$member}.jpg");

}

}

5.3 自定义函数

SASS允许客户编写本人的函数。

@function double($n) {

@return $n * 2;

}

#sidebar {

width: double(5px);

}

(完)

五、高档用法

 

5.1 条件语句

@if可以用来判别:

  p {
    @if 1 1 == 2 { border: 1px solid; }
    @if 5 < 3 { border: 2px dotted; }
  }

配套的还会有@else命令:

  @if lightness($color) > 30% {
    
  } @else {
    background-color: #fff;
  }

5.2 循环语句

SASS支持for循环:

  @for $i from 1 to 10 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }

也支持while循环:

  $i: 6;

  @while $i > 0 {
    .item-#{$i} { width: 2em * $i; }
    $i: $i - 2;
  }

each命令,作用与for类似:

  @each $member in a, b, c, d {
    .#{$member} {
      background-image: url("/image/#{$member}.jpg");
    }
  }

5.3 自定义函数

SASS允许客户编写本身的函数。

  @function double($n) {
    @return $n * 2;
  }

  #sidebar {
    width: double(5px);
  }

原稿地址:

本文由星彩网app下载发布于前端技术,转载请注明出处:前端css框架SASS使用教程,sass学习笔记

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。