【问题标题】:Can I use SASS/SCSS variables to set class names? [duplicate]我可以使用 SASS/SCSS 变量来设置类名吗? [复制]
【发布时间】:2014-07-14 09:34:47
【问题描述】:

我正在尝试为网格布局创建一堆列,并且想知道是否可以使用 SASS/SCSS 混合自动计算宽度。

我正在写

@mixin setWidth($a, $b){
 width : ($a / $b)*100%;
}
.col-1-2{
 @include setWidth(1, 2);
}

这很好,但我只是想知道是否有办法让它更加干燥,通过使用变量名设置类并使用 mixin 创建类。

类似

@mixin setClass($a, $b){
  .col-$a-$b{
    width : ($a / $b)*100%;
  }
}

@include setClass(1, 2);

【问题讨论】:

  • 试过了,不行。 (反正我没想到会这样,因为语法看起来不正确,但我不确定它应该是什么。)
  • 错误是什么?
  • “.col-”后的 CSS 无效:预期为“{”,为“$a-$b{”
  • 您几乎可以在任何地方使用它们,包括属性名称。 github.com/zurb/foundation/blob/master/scss/foundation/…

标签: sass


【解决方案1】:

您只需要在变量#{$a}用于命名约定时插入它们

@mixin setClass($a, $b){
  .col-#{$a}-#{$b} {
    width : ($a / $b)*100%;
  }
}

@include setClass(1, 2);

一个例子:http://sassmeister.com/gist/8634660fa4b32f50b4c1

【讨论】:

    猜你喜欢
    • 2014-07-11
    • 2015-05-29
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    • 2014-03-06
    • 2013-07-09
    • 2013-11-03
    • 2011-12-29
    相关资源
    最近更新 更多