来自 计算机前端 2019-10-19 10:26 的文章
当前位置: 美高梅4858官方网站 > 计算机前端 > 正文

SASS用法指南,前端css框架SASS使用教程

SASS用法指南

2012/06/21 · CSS · CSS

来源:阮一峰

学过CSS的人都理解,它不是一种编制程序语言。

您能够用它支付网页样式,不过没有办法用它编制程序。约等于说,CSS基本上是设计员的工具,不是技术员的工具。在技师眼里,CSS是一件很费劲的东西。它从不改变量,也从未条件语句,只是一行行单纯的陈述,写起来特别辛苦。

图片 1

很自然地,有人就从头为CSS出席编制程序成分,这被喻为”CSS预管理器“(css preprocessor)。它的骨干思索是,用一种专门的编制程序语言,实行网页样式设计,然后再编写翻译成正常的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

一、什么是SASS

 

SASS是一种CSS的开荒工具,提供了好些个利于的写法,大大节约了设计者的小时,使得CSS的支付,变得轻易和可保证。

正文化总同盟结了SASS的首要用法。笔者的对象是,有了那篇文章,常常的貌似选取就无需去看合匈牙利(Magyarország)语档了。

 

二、安装和选用

 

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的官方网站,提供了三个在线转变器。你能够在这里边,试运作上面包车型地铁各样例子。

 

本文由美高梅4858官方网站发布于计算机前端,转载请注明出处:SASS用法指南,前端css框架SASS使用教程

关键词: