您现在的位置:首页 >> 前端 >> 内容

Sass中Interpolation#{}的用法

时间:2017/5/25 10:01:00 点击:

  核心提示:Sass中Interpolation#{}的用法1. 简单的栗子![这里写图片描述](https://img.blog.csdn.net/20170517212837283?watermark/2/t...

Sass中Interpolation#{}的用法

1. 简单的栗子

![这里写图片描述](https://img.blog.csdn.net/20170517212837283?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG9uZ3pob3VmZW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

2. 如何编译出 border: 2px dashed green;

scss语法:

$prop2: border;
@mixin longzhoufeng($wid, $sty, $col){
    #{$prop2}: #{$wid} #{$sty} #{$col}; //其实就是结合混合宏传多个参数;
}
.myInterpolation2{
    @include longzhoufeng(2px, dashed , green);
}

css语法:

.myInterpolation2 {
  border: 2px dashed green; }

如图:

![这里写图片描述](https://img.blog.csdn.net/20170517213634544?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG9uZ3pob3VmZW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

3. 结合 @each 多个值操作

scss语法:

@charset "UTF-8"; //不声明在ruby编译时会报错,因为下面有中文注释;
//$prop2: (padding, margin); //多个值用括号;
$prop3: padding, margin; //也可以这样;
@mixin longzhoufeng($side, $val){
    @each $prop in $prop3{ //遍历$prop2里的所有值(margin,padding)
        #{$prop}-#{$side}: $val; //注意'-'前后不能有空格;
    }
}
.myInterpolation3{
    @include longzhoufeng(left, 16px);
}

css语法

.myInterpolation3 {
  padding-left: 16px;
  margin-left: 16px; }

4. 构建选择器

scss语法:

@charset "UTF-8"; //不声明在ruby编译时会报错,因为下面有中文注释;
@mixin selector($c, $s, $i, $w, $d, $sc, $ic, $wc, $dc){
    .#{$c}-success{ background-color: $s; border-color:$sc; }
    .#{$c}-info   { background-color: $i; border-color:$ic; }
    .#{$c}-warning{ background-color: $w; border-color:$wc; }
    .#{$c}-danger { background-color: $d; border-color:$dc; }
}

.btn{
    color: #fff;
    @include selector(btn, #5cb85c, #5bc0de, #f0ad4e, #d9534f,
        #4cae4c, #46b8da, #eea236, #d43f3a);
}

css语法

.btn {
  color: #fff;
}
.btn .btn-success {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn .btn-info {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn .btn-warning {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn .btn-danger {
  background-color: #d9534f;
  border-color: #d43f3a;
}

/*# sourceMappingURL=main.css.map */

Tags:SA AS SS S中 
作者:网络 来源:知行合一