这特别涉及SASS的罗盘框架。
我创建了一个精灵,也是一个渐变混合。是否可以将两者合并在同一个项目上,如果是这样的话?
@import "compass/css3";
@import "icon/*.png";
@include all-icon-sprites;
@mixin light-gradient {
@include background-image(linear-gradient(top, $dark 20%, $light 100%));
color: $dark;
text-shadow: $light;
}
button {
@include light-gradient;
@include icon-sprite(search);
}
更新
我已经提出了这个解决方案,任何人都可以改进吗?
@import "compass/css3";
@import "compass/utilities/sprites";
$icon: sprite-map("icon/*.png");
$light-gradient: linear-gradient(bottom, $shade-2 20%, $shade-3 100%);
$icon-search: sprite($icon, search) no-repeat;
button {
@include background($light-gradient, $icon-search);
}
答案 0 :(得分:6)
您可以使用$<map>-sprites
变量来获取sprite mixins生成的精灵地图,如此(基于您的原始示例):
@import "compass/css3";
@import "icon/*.png";
@include all-icon-sprites;
button {
@include background(linear-gradient(top, $dark 20%, $light 100%),
sprite($icon-sprites, search) no-repeat);
}
不一定非常优雅(如果有的话),但如果您选择接受它,则不是另一条路线。 :)