SCSS在mixin中的多个属性

onl*_*oon 3 css sass

看一下下面的例子:

@mixin placeholder ($color) {
  &.-moz-placeholder {
    color: $color;
  }

  &:-ms-placeholder {
    color: $color;
  }
}

@include placeholder(#999);
Run Code Online (Sandbox Code Playgroud)

但我想插入多个属性而不仅仅是占位符样式中的颜色.像这样:

@mixin placeholder ($properties) {
  &.-moz-placeholder {
    $properties;
  }

  &:-ms-placeholder {
    $properties;
  }
}

@include placeholder(color: #999, text-shadow: 1px 0px 0px #000);
Run Code Online (Sandbox Code Playgroud)

这是可能的,如果是这样的话怎么样?

hop*_*per 5

正如@dave建议的那样,你可以使用Sass的@content指令来完成这个任务.以下是使用该语法的示例:

@mixin placeholder {
  &.-moz-placeholder {
    @content;
  }

  &:-ms-placeholder {
    @content;
  }
}

@include placeholder {
  color: #999;
  text-shadow: 1px 0px 0px #000;
};
Run Code Online (Sandbox Code Playgroud)

请注意,要传递内容块,请使用花括号而不是括号.您可以在SASS文档中阅读更多内容.