【问题标题】:Sass mixin doesn't take value but variable name insteadSass mixin 不取值,取而代之的是变量名
【发布时间】:2014-11-21 03:41:36
【问题描述】:

我有简单的 calc mixin:

@mixin calc($what, $how, $that) {
    width: -webkit-calc($how- $that);
    width: -moz-calc($how - $that);
    width: calc($how- $that);
    width: $how;
}

我正在使用:

@include calc("width", 100%, 6px);

但编译后我得到:

  width: -webkit-calc($how- $that);
  width: -moz-calc($how - $that);
  width: calc($how- $that);
  width: 100%;

我做错了什么? 为什么只有最后一行可以?

提前致谢!

【问题讨论】:

    标签: sass mixins


    【解决方案1】:

    您需要使用Sass variable interpolator:

    @mixin calc($what, $how, $that) {
      width: -webkit-calc(#{$how}- #{$that});
      width: -moz-calc(#{$how}- #{$that});
      width: calc(#{$how}- #{$that});
      width: $how;
    }
    
    .sel {
      @include calc("width", 100%, 6px);
    }
    

    产量

    .sel {
      width: -webkit-calc(100%- 6px);
      width: -moz-calc(100%- 6px);
      width: calc(100%- 6px);
      width: 100%;
    }
    

    【讨论】:

    • 太棒了,谢谢,你能告诉我如何使用 $what 参数吗? (在mixin中使用它而不是“宽度”)
    • 同样的方法 - 只需将 mixin 中的 width 属性替换为 #{$what}
    猜你喜欢
    • 1970-01-01
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多