是否可以在scss中呈现任意字符串?您可以呈现属性值:
/*source scss*/
$some-color: #123456;
a {color: $some-color;}
/*compiled css*/
a {color: #123456;}
或使用#{}
interpolation syntax的选择器/属性名称:
/*source scss*/
$some-class: 'my-awesome-link';
$some-attribute: border;
a.#{$some-class} {#{$some-attribute}-color: #000;}
/*compiled css*/
a.my-awesome-link {border-color: #000;}
但我不能使用以下内容:
/*source scss*/
$some-css: 'text-decoration:none;color:#000';
a {$some-css} //breaks
a {#{$some-css}} //breaks
这看起来像香草字符串处理和允许的非常微不足道的东西。我是否忽略了不同的语法,或者在当前的scss中是不可能的?
答案 0 :(得分:4)
你最接近你想要的是这样的:
@mixin property-list($list) {
@each $i in $list {
#{nth($i, 1)}: nth($i, 2);
}
}
$links: color red, border (1px solid);
a {
@include property-list($links);
}
编译为:
a {
color: red;
border: 1px solid;
}