Sass中如何解决两个变量间小括号被忽略的问题?

clipboard.png

图片描述
如图,上图是sass编写的函数,下图是生成的结果,$prop与$val间的小括号被自动忽略掉了,如果$prop后有其它字符,则小括号就能被识别,故求问,该如何解决?

阅读 3k
2 个回答
//拼接括号就可以了
@mixin gradient($start,$stop,$attr:background,$dir:top,$way:linear){
    #{$attr}:#{$start};
    @each $core in $coreList{
        #{$attr}:-#{$core}-#{$way}-gradient +'('+(#{$dir},#{$start},#{$stop})+')';
    }
}

//效果如下
.gradient {
  background: #f2f2f2;
  background: -webkit-linear-gradient(top,#f2f2f2,#f8f8f8);
  background: -moz-linear-gradient(top,#f2f2f2,#f8f8f8);
  background: -o-linear-gradient(top,#f2f2f2,#f8f8f8);
  background: -ms-linear-gradient(top,#f2f2f2,#f8f8f8); }

圆括号里的值不需要内插,直接写变量名就好了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题