Sass

Sass声明变量,作用域

2016-07-20  本文已影响156人  Timson

Sass声明变量

前段时间由于公司需要开发react-native的app 着手动工,所以耽误了文章的更新。
希望大家可以谅解!

声明变量

在sass中,声明变量和javascript一样简单,属于弱类型语言。
不需要init string boolean 等等
只需要一个 $ 符号就可以了
例如

$fontSize:16px;

此外这里有一个小提示:声明变量的时候必须要初始化
所谓的初始化就是赋初始值

这里有一个错误的例子:

$fontSize;

这样写的报错就是

Invalid CSS after "$font": expected ":", was ";"

变量值

由于sass最终编译出来的都是css,所以你的赋值可以是各种类型值
如:

$fontFamily:Helvetica, sans-serif;
$bgColor: #333;
$fontSize:14px;
body{
    font-family:$fontFamily;
    font-size:$fontSize;
    background-color:$bgColor;
}

Sass作用域

在这里就不说什么是作用域,作用域的作用了,不懂的童鞋们就百度一下就可以找到了

作用域的运用

在sass中的作用域是块级作用域。

if{}else{}
for(){}
while(){}
......

这些通常都会用到的就不多做解释了

在sass中还有一种比较特殊的作用域就是嵌套时候的作用域
如:

body{
    $bg:#333;
    background-color:$bg;
    .inSizeContainer{
        background-color:$bg;
    };
};
.outSizeContainer{
    background-color:$bg;
};
......

这样写是会报错的!

我们看这段代码

$bg是定义在body标签里面的

.outSizeContainer是在boddy的外面

所以在.outSizeContainer里面的$bg是找不到这个变量,所以就报错了

但是.inSizeContainer是在body里面,所以是可以访问到$bg这个变量,所以不会导致报错

上一篇下一篇

猜你喜欢

热点阅读