Sass变量的使用

作者: OnlyPiglet | 来源:发表于2019-01-31 21:46 被阅读5次
每日美图

介绍

Sass变量理解中我们学习了变量的相关知识。在本章我们将会针对Sass变量的理解看一些实例

实例

作用范围的不同

全局变量

@charset "UTF-8";


$basecolor : #FF0000;


.globalclass{

   $fontsize : 1.2rem !global;
  
}

.main{

  background-color: $basecolor;
  font-size: $fontsize;
  
}

编译后为

@charset "UTF-8";
.main {
  background-color: #FF0000;
  font-size: 1.2rem;
}

/*# sourceMappingURL=VariableScope.css.map */

我们可以看到不论是在嵌套外声明的内容,或者在嵌套内声明的变量加上!global 作用域都是全局的。

局部变量


.section-one{

   $backcolor : blue;

    background-color: $backcolor;

}

.section-two{

  $backcolor : red;

  background-color: $backcolor;

}

编译后的内容

.section-one {
  background-color: blue;
}

.section-two {
  background-color: red;
}

我们发现在section-one与section-two中声明的同名变量$backcolor是互不干扰的,如果去掉section-two中的声明直接使用的话会报如下错误

"Error: Undefined variable: \"$backcolor\".\A 

各位读者也可以尝试一下

不同类型变量的需要注意的地方

字符串

代码太多了这里就不展示了,不过有一点值得注意的

$font-family-one:"宋体";

.four{

  font:{
    family: #{$font-family-one};
  }

}

编译后

.four {
  font-family: 宋体;
}

发现引号没有了,这里我们使用了#{}占位符,有过编程经验的朋友应该很熟悉这种表达,占位符,顾名思义在一段代码中占据一定的地方,但内容是不确定,但是不管什么样的内容使用的占位符,有会有一些规则作用于改内容上,
当规则不同时则是不同类型的占位符,目前我们只需要关注 #{}占位符,我们可以总结出该占位符的规则之一就是字符串的引号会被去掉。

数字

数字其实没什么好说的

$font-size:1.2rem;

.number{

  font-size: $font-size;
}

编译后

.number {
  font-size: 1.2rem;
}

数组

一般数组用于padding 或者 margin 四边的设置tips:四边的顺序是12点钟方向顺时钟就是上/右/下/左
这里就不过多演示就看一种呀

$padding : 0 0 0 0;

编译后

.padding {
  padding: 0 0 0 0;
}

Map

$settings:(mask:1000,base:2000);

.mask{
  z-index: map_get($settings,mask);
}

编译后

.mask {
  z-index: 1000;
}

key和value为Sass任数据类型

布尔值

用于逻辑判断,基本不会出现在编译后的css文件中

//布尔型
$open:true;
$close:false;

空值

当某个样式的属性使用了null值那么该属性就不会被编译

//空值
$ifdisable:null;

.input{
    hidden:$ifdisable;
}

编译后什么都没有

颜色

颜色需要注意的是当16进制表达的颜色在压缩格式输出时又可能会产生变化

/*!颜色*/

$color:#FF0000;

.main{
  background-color: $color;
}

编译后会变为

/*!颜色*/.main{background-color:red}
/*# sourceMappingURL=Color.css.map */

正因为这种变化如果在使用颜色变量时一定要注意防止因为压缩格式编译后引发的变量出错。
本章中所有的源码可以点击链接下载

总结

熟能生巧撒。

相关文章

  • Sass学习笔记(1)

    1.变量 在Sass中使用$符号定义变量。 在sass可以直接使用变量: 注意,sass也有变量作用域,如果你在一...

  • sass基础语法

    SASS是SCSS3的新语法 SASS允许使用变量,所有变量以$开头。 SASS允许在代码中使用算式。 SASS允...

  • sass使用入门

    sass使用入门 1、使用变量 1.1 变量声明: 1.2 变量引用: 1.3变量使用中划线还是下划线: sass...

  • sass基础语法

    SASS是SCSS3的新语法 SASS允许使用变量,所有变量以$开头。 $red: red;div { color...

  • vue项目设置全局作用域scss变量

    vue-cli 2.0 使用sass-resources-loader解决Sass全局变量问题 安装 sass-r...

  • SASS预处理

    SASS预处理语言学习 定义变量 SASS允许使用变量,所有变量以$开头。 如果变量需要镶嵌在字符串之中,就必须需...

  • Sass变量的使用

    介绍 在Sass变量理解中我们学习了变量的相关知识。在本章我们将会针对Sass变量的理解看一些实例 实例 作用范围...

  • Sass笔记

    Sass笔记 变量 Sass可以让CSS也像程序语言一样拥有变量,可以把反复使用的CSS属性定义为变量,然后通过变...

  • Sass 语法特性 - 精简版

    Sass简述 sass基于Ruby语言开发而成 使用$符号来标识变量,可以大大减少了工作量 与CSS属性不同,变量...

  • Sass语言特性详解

    Sass简述 sass基于Ruby语言开发而成 使用$符号来标识变量,可以大大减少了工作量 与CSS属性不同,变量...

网友评论

    本文标题:Sass变量的使用

    本文链接:https://www.haomeiwen.com/subject/lublsqtx.html