开发者社区> 问答> 正文

sass分割字符串

@mixin remCalc($property, $values...) {
$max: length($values);//返回$values列表的长度值
#{$property}: $max;
}
@include remCalc(background-position,0px 10px);
因为我传入的 $values参数 只能以空格分割,
有没有把values转成list的方法。

展开
收起
a123456678 2016-05-26 16:00:51 1901 0
1 条回答
写回答
取消 提交回答
  • 首先,诸如

    $lstA : 0px 10px;
    $lstB : (1,2),2; // 二维list
    这样用空格分隔的写法就是list……

    其次,你没有理解 多组值参数 与 list的 区别

    当你的形参写作如下形式时:

    $values...
    并不是把若干个实参都赋给 $values,而是分别赋值,实参之间用逗号(",")隔开。

    但是你实际上是使用空格分隔,这样,你的“若干个”参数会被编译器识别为一个参数(只是一个list),此时的length返回的实参数只能是1。我不知道你想要什么样的结果,也许这个是你需要的:

    @mixin remCalc($property, $values) {
    $max: length($values);//返回$values列表的长度值
    #{$property}: $max;
    }
    @include remCalc(background-position,0px 10px);
    另外,对list取长度也是用length函数的,这算一个坑吗。

    2019-07-17 19:16:25
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载