sass变量

在各处看相关的文档,为了加深印象,就记录下来

全局变量和局部变量

sass中默认是全局变量

$color : green ;

p{ $color : red ; color : $color ; }此时color为red

a{ color : $color; } color为red

但也存在局部变量的特征:

p{ $color : red ; color : $color ; } 此时color为red

div{ color : $color ; } color未定义

变量默认值 !default

还没有切实用到这个性能,但是先记录一下再说吧

没有!default的情况

$color : red ;

$color : yellow ;

p{ color : $color ; }此时是yellow,因为代买从上到下执行,下方会覆盖上方的

有!default的情况

$color : red ;

$color : yellow !default ;

p{ color : $color ; }此时是red ,这种情况,默认是!default,如果在!default上方有赋值,就优先选择上方的

有一个新发现:!default的应用,在@import的时候有作用,比如写一个插件,在style.scss中,然后在正常的scss中需要引入这个插件,就需要在style.scss中定义变量的时候,用上!default,这样如果需要修改这个量,可直接在引入@import之前,写上这个变量修改后的值,便可直接取代!default的值

$imgstyle = 5px ;

@import ‘style.scss’

mixin片码段

@mixin box-sizing( $sizing ) { 

-webkit-box-sizing : $sizing ;

-moz-box-sizing : $sizing ;

box-sizing : $sizing ;

 }

引用:

.box-border{ border : 1px solid #ccc ; @include box-sizing( box-border ) }

编译之后:

.box-border{ 

border : 1px solid #ccc

 

-webkit-box-sizing : box-border ;

-moz-box-sizing : border : box-border ;

box-sizing : border : box-border ;

 }

变量后边加...

这是一个为CSS3设计的属性,比如css3中:box-shadow:0 0 3px rgba(0,0,0,0.3),inset 0 0 3px rgba(255,255,255,0.3);这是让@mixin给box-shadow传参数,就需要用到...了

@mixin box-shadow( $shadow... ){

-webkit-box-shadow:$shadow;

-moz-box-shadow:$shadow;

box-shadow:$shadow;

}

变量用#{}包裹

$btnClass : btn !default ;

$borderDirection : top !default ;

.#{$btnClass}{ border-#{borderDirection}:1px solid #ccc ; }

既可以被解析成.btn{ border-top : 1px solid #ccc ; }

多个变量一起声明

$myColor : red blue  !default;

a{

color:nth($myColor,1);

&:hover{ color:nth($myColor,2) ;}

}

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值