Sass语言支持以下数据类型:数字:表示整数类型。字符串:在单引号''或双引号""中定义的字符序列。booleans:布尔类型,有true和false两个值。colors:用于定义颜色值。nulls:指定一个空值,即未知数据。lists:值类型的列表,表示以空格或逗号分隔的值。maps:从一个值映射到另一个值。numbers类型数字在CSS中被广泛使用,主要与单位结合使用,但在技术上仍然是数字。比如字体大小,长高,页边距等。Sass还有一个数字(numbers)类型,数字类型的值可以做一些加减乘除的运算。例子:比如定义一个变量$num,给这个变量赋一个数值:$num:24px;.xkd{font-size:$num-4;填充:$num+6px;宽度:$num*5;border-radius:$num/6;}编译成CSS代码:.xkd{font-size:20px;填充:30px;宽度:120px;border-radius:4px;}在上面的代码中,我们可以加上这个变量减法、乘法、除法。但是需要注意的是,在使用数字类型进行计算时,如果数值单位不兼容,会报错,比如12px+2em。执行代码后会报错Error:Incompatibleunits:'em'and'px'.,告诉我们单位不兼容。Sass中的string类型string可以用单引号''或者双引号""括起来,比如"hello"或者'hello',即使被空格括起来,它仍然是一个字符串。字符串也可以不用引号括起来,例如hello也代表一个字符串。例子:我们定义一个字符串类型的变量:$msg:"hello";.one{content:$msg;.two{内容:$msg+''+summer;}}编译成CSS代码:.one{content:"hello";}.one.two{content:"hellosummer";}booleans类型booleans类型是布尔类型,该类型只有两个值,即true和false。在Sass中,只有当值为false或null时才返回false。所有其他值返回true。示例:.one{a:type-of(true);b:类型(假);c:类型(10);d:type-of(null);}被编译成CSS代码:.one{a:bool;b:布尔值;c:数量;d:null;}上面代码中的type-of()函数用于检测一个值的数据类型。可以看到只有true和false的数据类型是布尔值。colortypeSass中的colortype表示颜色类型,可以包括所有的颜色值,如十六进制颜色值、颜色名称、rgb、rgba、hsl、hsla等。例子:$color1:pink;.one{color:$颜色1;background-color:$color1+blue;}编译成CSS代码:.one{color:pink;background-color:#ffc0ff;}从上面的代码可以看出,颜色值也是可以计算出来的。计算时,先将颜色值转换成十六进制值,再进行计算。nulls类型null类型是Sass中最基本的数据类型,代表一个空值,也就是说没有值。虽然说null没有任何意义,但是当我们使用length()函数返回长度时,返回值是1。这是因为null仍然代表一个真实的实体,但它不代表任何值。示例:$var:null;.one{类型:type-of($var);length:length($var);}编译成CSS代码:.one{type:null;length:1;}liststypeSass列表类型是一系列以空格或逗号分隔的值。示例:$padding:10px20px30px40px;$font:Arial,sans-serif,Helvetica;.one{padding:$padding;font-family:$font;}编译成CSS代码:.one{padding:10px20px30px40px;font-family:Arial,sans-serif,Helvetica;}除了简单的值,列表也可以嵌套。例如,下面的列表包含三个值而不是四个:$list:1,2100,3;等同于:$list:1,(2100),3;mapstype在Sass中,mapstype表示映射类型。通常以键值对(key/value)的形式出现。定义地图时,必须将整个地图括在括号()中,值之间用逗号分隔。在映射中,一个给定的键只能有一个关联值,但一个给定的值可以映射到许多不同的键。value值可以是任何数据类型,包括映射。示例:$color-map:(color1:#fa0000,color2:#fbe200,color3:#95d7eb);.one{color:map-get($color-map,color1);background-color:map-get($color-map,color2);}编译成CSS代码:.one{color:#fa0000;background-color:#fbe200;}在上面的代码中,创建了一个名为$color-map的映射,这个映射中有3个Key-value对,分别是不同的CSS颜色值。其中,map-get函数用于提供地图的值,可以接受两个参数,第一个参数是地图的名称,第二个参数是要获取的键值。
