Sass 变量

Sass 变量

变量用于存储一些信息,它可以重复使用。

Sass 变量可以存储以下信息:

  • strings
  • numbers
  • colors
  • booleans
  • lists
  • nulls

Sass 变量使用 $ 符号,后跟名称,以声明变量:

Sass 变量语法:

$variablename: value;

以下实例设置了四个变量:myFont, myColor, myFontSize, 和 myWidth。变量声明后我们就可以在代码中使用它:

Sass 代码:

$myFont: Helvetica, sans-serif;
$myColor: red;
$myFontSize: 18px;
$myWidth: 680px;

body {
  font-family: $myFont;
  font-size: $myFontSize;
  color: $myColor;
}

#container {
  width: $myWidth;
}

将以上代码转换为 CSS 代码,如下所示:

CSS 代码:

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}

#container {
  width: 680px;
}



Sass 作用域

Sass 变量的作用域只能在当前的层级上有效果

如下所示 h1 的样式为它内部定义的 green,p 标签则是为 red:

SCSS Syntax:

$myColor: red;

h1 {
  $myColor: green;
  color: $myColor;
}

p {
  color: $myColor;
}

将以上代码转换为 CSS 代码,如下所示:

h1 {
  color: green;
}

p {
  color: red;
}


使用 !global

当然 Sass 中我们可以使用 !global 关键词来设置变量是全局的:

SCSS 代码:

$myColor: red;

h1 {
  $myColor: green !global;
  color: $myColor;
}

p {
  color: $myColor;
}

现在 p 标签的样式就会变成 green。

将以上代码转换为 CSS 代码,如下所示:

CSS Output:

h1 {
  color: green;
}

p {
  color: green;
}

提示: 所有的全局变量我们一般定义在同一个文件,如:"_globals.scss",然后我们使用 @include 来包含该文件。