【发布时间】:2016-04-21 01:10:25
【问题描述】:
我正在使用 gulp-svg-sprite 插件。
https://github.com/jkphl/gulp-svg-sprite
https://github.com/jkphl/svg-sprite
我已经有了我想要的类和样式:
.header {
background: grey;
&:after {
content: "";
display: block;
height: 30px;
width: 30px;
background: url(images/icon1.svg);
}
}
这是我的 gulp 任务:
spriteConfig = {
mode : {
css : {
bust : true,
render : {
scss : true
}
}
}
};
gulp.task('sprite', function() {
gulp.src('images/svg/*.svg')
.pipe(svgSprite(spriteConfig))
.pipe(gulp.dest('dest/'));
});
任务生成这种类型的 SASS:
%svg-common {
background: url("svg/sprite.css-c3700f6a.svg") no-repeat;
}
.svg-icon1 {
@extend %svg-common;
background-position: 50% 0;
}
.svg-icon1-dims {
width: 1024px;
height: 348px;
}
这并不理想,因为我需要导入这些我自己不会使用的 svg- 类,然后我需要使用 2 个扩展:
.header {
background: grey;
&:after {
content: "";
display: block;
@extend .svg-icon1;
@extend .svg-icon1-dims;
}
}
有没有一种方法可以生成 mixins,所以我可以有类似的东西:
.header {
background: grey;
&:after {
content: "";
display: block;
@include svg-icon1;
}
}
【问题讨论】: