在SASS中,我可以将属性定义为mixin中的参数吗?

时间:2017-12-07 15:48:11

标签: css sass frontend css-preprocessor

我想写这样的东西:

$widthXl: 1000px
$widthSm: 500px
@mixin med ($prop, $xl, $sm)
  @media (max-width: $widthXl)
    &
      $prop: $xl
  @media (max-width: $widthSm)
    &
      $prop: $sm
a
  @include med(width, 600px, 300px)
b
  @include med(color, #000, #888)

得到这个:

@media (max-width: 1000px) {
  a {width: 600px}
  b {color: #000}
}
@media (max-width: 500px) {
  a {width: 300px}
  b {color: #888}
}

但是我的代码没有编译它。可能吗?

知道是否有人遇到同样的问题会很有趣。

如果我删除属性,代码工作正常。但我想创建复杂的解决方案。

1 个答案:

答案 0 :(得分:6)

您可以使用{ "sender_id": 7, "Sender_name": "Testchumthree Tester", "message": 42, "Sender_image": "https:\/\/graph.facebook.com\/v2.10\/281359099024687\/picture?type=normal", "timestamp": "0", "group_id": 50 } 等变量“插值”。

我的代码示例是scss而不是sass,我喜欢大括号。它应该编译相同。

#{$prop}

有些信息可以在the docs

中找到