我正在使用指南针在SASS上工作。我已经创建了一些mixins但是仍然有一个mixin我无法使它工作。那是用户选择的。我知道我可以使用@import“compass / css3 / user-interface”导入它;但那不是重点。为什么我的'手工'@mixin用户选择($ value){..}似乎不起作用?有没有已知的原因?
@mixin user-select($value) {
-webkit-user-select: $value;
-moz-user-select: $value;
-ms-user-select: $value;
-o-user-select: $value;
user-select: $value;
}
.myclass {
@include user-select(none);
}
答案 0 :(得分:1)
似乎对我来说很好.. 您可以尝试这种方法:
@mixin user-select($select) {
@each $pre in -webkit-, -moz-, -ms-, -o- {
#{$pre + user-select}: #{$select};
}
#{user-select}: #{$select};
}
.myclass {
@include user-select(none);
}
答案 1 :(得分:0)
您甚至可以进一步概括这一步骤。
$PREFIXES: -webkit-, -moz-, -ms-, -o-, '';
@mixin prefix-template($var, $value, $prefixes:$PREFIXES) {
@each $pre in $prefixes { #{$pre + $var}: #{$value}; }
}
@mixin user-select($value) {
@include prefix-template(user-select, #{$value});
}
@mixin animation($value) {
@include prefix-template(animation, #{$value});
}