sass的使用

一、sass

1.解决中文报错

    在ruby中找到engine.rb文件,在该文件require xxx 后边写上:

    Encoding.default_external = Encoding.find('utf-8')

2.作用域对混合以及继承的影响

    sass中:

        1)定义在作用域内部的混合,在外部无法访问,只能在内部访问

        2)定义在作用域内部的继承,在作用域外部是可以访问的,不管该选择器写在任何位置,都可以被继承到

    less中:

        1)less的混合与sass的继承比较像,less定义在作用域内部的混合,外部不能直接访问,需要通过命名空间进行访问

        2)less的方法和sass的混合比较像,less定义在作用域内部的方法,在外部不能直接访问,需要通过命名空间

3.占位符

    我们自定义一个选择器样式,用于继承,继承结束,我们不想要这个选择器了,删掉它

    此时可以使用占位符,表示定义一组临时属性,当编译结束就会被删除

    占位符只能用于标签选择器,其他选择器不能用

    语法:

    %div{}

    %mydiv{}

4.数字运算

    Sass中也有加减乘除运算,可以进行数字、变量之间的运算,可以带单位运算

    带有单位运算时:默认是px,哪个单位在前边,最终就以那个单位为标准

    除法有点特殊:

    1)加上()

    2)变量或者是函数的返回结果

    3)除法运算只是表达式的一部分

    满足以上任何一个条件都可以

5.色彩运算

    sass中支持色彩的加减乘除,注意除法要满足上边的数学运算中的条件

    16进制的色彩运算,每个通道进行独立运算,如果十六进制色彩每个通道的值大于255或小于0,不会影响其他通道,大于255取255,小于0取0

    在rgba模式下,进行运算时,要求透明度必须一致,否则无法运算,最终结果不会影响透明度

6.插值与字符串拼接

        插值:为了动态创建属性

        语法:

        #{$dir}

        字符串拼接:

        + 拼接两个字符串,没有''

        no + -repeat

        $re:-repeat

        no + $re;

7.

    语法:

    @if 定义if语句

    @else if 定义else if语句

    @else 定义else语句

    or 或 and 与 not 非

    判断相等使用:==

    <= >= < >

8.for循环

    语法:

    @for $i from start through end{

    //循环体

    }

    @for:定义for循环

    $i:循环变量

    start:$i的初始值,包括start

    end:$i的结束值,包括end

    from:从哪里开始

    through:到哪里结束

9.while循环

    语法:

    @while 条件{}

    $i : 0;

    @while $i < 20{

    //循环体

    $i:$i+1;

    }

10.三元运算符

    if(条件,true结果执行,false结果执行)

你可能感兴趣的:(sass的使用)