width: $width;

变量支持块级作用域,嵌套规则内定义的变量只能在嵌套规则内使用( 局部变量 ),不在嵌套规则内定义的变量则可在任何地方使用(全局变量)。将局部变量转换为 全局变量可以添加 !global 声明

#main {
  $width: 5em !global;
  width: $width;
#sidebar {
  width: $width;
#main {
  width: 5em;
#sidebar {
  width: 5em;

2.数据类型 

支持 6 种主要的数据类型:

  • 数字,1, 2, 13, 10px
  • 字符串,有引号字符串与无引号字符串,"foo", 'bar', baz
  • 颜色,blue, #04a3f9, rgba(255,0,0,0.5)
  • 布尔型,true, false
  • 空值,null
  • 数组 (list),用空格或逗号作分隔符,1.5em 1em 0 2em, Helvetica, Arial, sans-serif
  • maps, 相当于 JavaScript 的 object,(key1: value1, key2: value2)

支持数字的加减乘除、取整等运算 (+, -, *, /, %)

以下三种情况 / 将被视为除法运算符号:

  • 如果值,或值的一部分,是变量或者函数的返回值
  • 如果值被圆括号包裹
  • 如果值是算数表达式的一部分
font: 10px/8px; // Plain CSS, no division $width: 1000px; width: $width/2; // Uses a variable, does division width: round(1.5)/2; // Uses a function, does division height: (500px/2); // Uses parentheses, does division margin-left: 5px + 8px/2px; // Uses +, does division font: 10px/8px; width: 500px; height: 250px; margin-left: 9px;

圆括号可以用来影响运算的顺序:

width: 1em + (2em * 3); width: 7em;

如果需要使用变量,同时又要确保 / 不做除法运算而是完整地编译到 CSS 文件中,只需要用 #{} 插值语句将变量包裹。

$font-size: 12px; $line-height: 30px; font: #{$font-size}/#{$line-height}; font: 12px/30px;

 颜色值运算 (Color Operations)

颜色值的运算是分段计算进行的,也就是分别计算红色,绿色,以及蓝色的值:

color: #010203 + #040506;

计算 01 + 04 = 05 02 + 05 = 07 03 + 06 = 09,然后编译为

color: #050709;

数字与颜色值之间也可以进行算数运算,同样也是分段计算的,比如

color: #010203 * 2;

计算 01 * 2 = 02 02 * 2 = 04 03 * 2 = 06,然后编译为

color: #020406;

需要注意的是,如果颜色值包含 alpha channel(rgba 或 hsla 两种颜色值),必须拥有相等的 alpha 值才能进行运算,因为算术运算不会作用于 alpha 值。

color: rgba(255, 0, 0, 0.75) + rgba(0, 255, 0, 0.75); color: rgba(255, 255, 0, 0.75);

+ 可用于连接字符串

cursor: e + -resize; // 这种是无符号字符 cursor: e-resize;

注意,如果有引号字符串(位于 + 左侧)连接无引号字符串,运算结果是有引号的,相反,无引号字符串(位于 + 左侧)连接有引号字符串,运算结果则没有引号。

p:before {
  content: "Foo " + Bar;
  font-family: sans- + "serif";
p:before {
  content: "Foo Bar";
  font-family: sans-serif; 

运算表达式与其他值连用时,用空格做连接符:

margin: 3px + 4px auto; margin: 7px auto;

在有引号的文本字符串中使用 #{} 插值语句可以添加动态的值(类似于vue的双花括号): 

p:before {
  content: "I ate #{5 + 10} pies!";
p:before {
  content: "I ate 15 pies!"; }

空的值被视作插入了空字符串:

$value: null;
p:before {
  content: "I ate #{$value} pies!";
p:before {
  content: "I ate pies!"; 
有以下四个设置:
 vue-scss-variable-scan.globalPath :SCSS扫描变量的路径(默认值:src / ** / *。scss)
 vue-scss-variable-scan.globalExcludePath :SCSS扫描变量的排除路径。(默认值:“”)
 vue-scss-variable-scan.addCustomCssProperty :此扩展仅支持css的某些属性,如果要支持更多属性,则可以在此设置添加一些属性。(默认:[])(PS:默认支持:[“背景”,“边框”,“颜色”,“宽度”,“高度”,“字体大小”,“填充”,“边距”])
 vue-scss-variable-scan.excludeCssProperty :如果您不
                                    SCSS编译环境安装:live-sass-compiler、node sass;嵌套语法:选择器嵌套、属性嵌套、&父选择器;注释;变量运算;混入 @mixin 和 @inclue;占位选择器 % 和 继承 @extend;插值语法 #{};流程控制@if@for@each@while;内置函数;自定义函数 @function;导入@import;模块导入 @use;模块转发 @forward
                                      SCSS之所以便利,是因为它具有了编程语言的某些特性。
  让原本规则刻板的CSS变的灵活起来,下面介绍一下SCSS的作用域概念。
  几乎所有编程语言都有作用域概念的涉及,原理大同小异,SCSS的也是如此。
  SCSS变量具有两种作用域类型:
  (1).全局作用域。
  (2).局部作用域。
  默认情况下,定义在选择器之内的变量为局部变量,定义在选择器之外...
在 Vue 将 data 变量反映到 css 变量上也是大势所趋。
Vue2 用法
在以前的 Vue2 ,我们通常使用计算属性反映 data 变量到 css :
<template>
  <div :style="cssVars">
    <p class="text">测试文本</p>
</template>
                                    名词解释li {font-size: 33px;height: 344px;}上面整段代码,叫做一个规则,一个规则包括选择符、大括号、声明,声明包括属性名、属性值。一个声明包括属性名、属性值。font-size就是属性名,有时候叫属性33px就是属性值,有时候叫值变量$变量也有作用域,是块级作用域。变量可以被重新赋值,就像编程语言那样。只有下述情况才适合使用变量:该值至少重复出现了三次;该值至少可...
                                    模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。 在 trigger 为’axis’ 的时候,会有多个系列的数据,此时可以通过{a0}, {a1}, {a2} 这种后面加索引的方式表示系列的索引。 不同图表类型下的{a},{b},{c},{d}含义不一样。 其变量{a}, {b}, {c}, {d}在不同图表类型下代表数据含义为:
u 折线(区域)图、柱状(条形)图、K线图: {a}(系列名称),{b}(类目值),{c}(数值), {d}(无)
u 散点图(气泡)图
                                    作者:小猪努力学前端https://juejin.cn/post/7055101823442485255前言今时不同往日,能叫我们切图仔的只能是我们自己!在JavasScrip框架满天飞的...