BOOTSTRAP DAY06

一、scss运算
  1.数字:加减乘除,取整等运算(+,-,*,/,%),如果必要会在不同单位间转换值(前提是scss能转)
    ex:
      $my_width:5%;
      $my_max_width:$my_width*4;
      $other_size:$my_width+$my_max_width;
   (1)注意加法
     +也可以用于连接字符串
     p:before{
    content:"Microsoft"+yahei;
     }
     如果用有引号的字符串去连接无引号的字符串,运算结果是有引号的,相反,无引号的字符串去连接有引号的字符串,
     运算结果则没有引号。
   (2)除法运算

     ex:
       div{
    font-size:10px/80px;
    $width:1000px;
    width:$width/2;
    height:
       }
     /在css中通常起到分隔数字的用途,同时也赋予除法的功能。
      以下情况/被视为除法运算:
        1、如果值,或值的一部分,是变量或者是函数的返回值
    2、如果值被圆括号包裹时
    3、如果值是算术运算的一部分

    (3)运算表达式与其他连用是,用空格做连接符
      ex:
      p{
    margin:5px+10px auto;
      }
    (4)在有引号的文本字符串中使用#{}插值语句可以添加动态的值。
      p:before{
    content:"I am #{5+15}years old";
      }

  2.颜色:颜色值的运算是分段计算的,也就是分别计算红色,绿色,以及蓝色的值
      p{color:#010203+#040506};
    计算:01+04=05
          02+05=07
          03+06=09
    结果:color:#050709;
    值包含alpha(透明度),必须有相等的alpha值才能进行运算,因为算术运算不会作用于alpha.
    rgba(125,25,10,.5)+rgba(245,65,90,.6)
    
    练习:定义两个变量分别为10px和20px,两个变量相加后乘以2,将结果赋值给p选择启动width属性。
      $my_width1:10px;
      $my_width2:20px;
      p{
        width:($my_width1+$my_width2)*2;
      }

二、函数
  1.scss定义了多种函数,有些甚至可以通过普通的css语句调用。
    ex:rgba(10,30,40,.7); 在普通的css中也可以使用
    1.颜色
      rgba();
      hsl(hue,saturation,lightness);
         hue:色调,取值0-360,0-120红色,120-240绿色,240-360蓝色
     saturation:饱和度,取值为0%-100%
     lightness:亮度,取值0%-100%
    2.数字函数
      round(value) 将数值进行四舍五入,转换成最接近的整数。
      ceil(value) 向上取整
      floor(value) 向下取整
      min(num1,num2...) 找出数值间的最小值
      max(num1,num2...) 找最大值
      random(); 获取随机数
    3.字符串函数
      unquote(string) 删除字符串的引号
      quote(string) 添加字符串的引号
      To-upper-case(string) 将字符串

    4.自定义函数
      scss支持自定义函数使用关键词 @function定义,并能在任何属性或scss中使用,需要调用 @return 输出结果
      语法:
        @function 函数名($n){
      @return 运算表达式;
    }
      练习:
        定义一个带参函数getSize($n),函数体内定义两个变量,值分别为60px和10px,函数最终返回$n乘以最大宽度
    加上$n-1乘以最小值的结果,并将结果赋值给header元素的高宽属性
    @function getSize($n){
        $max_width=60px;
        $min_width=10px;
        @return $n*$max_width+($n - 1)*$min_width
    }
     header{
        height:getSize(2);
        width:getSize(4);
     }
    5.控制指令
      1.当 @if 的表达式返回值不是false或null时,表示条件成立,执行{}内的代码
        ex:
    p{
      @if 1+1=2{border-radius:5px;}
      @if 5<3 {border-radius:10px;}
      @if null {border-radius:20px;}
    }
      2. @if 声明后面可以跟多个 @else if 声明,或者一个 @else声明
        ex:
      $type:moon;
      nav{
        @if $type==sun{
            color:yellow;
        } @else if $type==mars{
            color:red;
        } @else if $type==moon{
            color:blue;
        } @else{
            color:black;
        }
      }
    练习:声明一个函数,在函数中判断如果参数大于1返回值为200px;如果参数等于1返回值为100px,否则返回0,
    并在div元素上调用函数,查看运行结果
    $

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值