gulp.spritesmith 在生成的 css 文件中抑制 "icon-" 前缀
gulp.spritesmith to supress "icon-" prefix in the generated css file
我正在使用 gulp.spritesmith 自动生成精灵图像和 css。一切正常,除了生成的 css 是 haivng "icon-" 前缀。我不想添加此前缀,因为我有现有的 HTML 标记并且我不想更改标记。
以下是我的 gulp 任务。
'use strict';
var gulp = require('gulp');
var spritesmith = require('gulp.spritesmith');
gulp.task('sprite', function () {
var spriteData =
gulp.src('./sprite/*.*') // source path of the sprite images
.pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.css'
}));
spriteData.img.pipe(gulp.dest("./css")); // output path for the sprite
spriteData.css.pipe(gulp.dest("./css")); // output path for the CSS
});
以下是我生成的 css.
.icon-icon1 {
background-image: url(sprite.png);
background-position: 0px 0px;
width: 120px;
height: 120px;
}
.icon-icon2 {
background-image: url(sprite.png);
background-position: -120px 0px;
width: 120px;
height: 120px;
}
请帮忙压制"icon-"。
您可以使用 gulp-replace 删除 "icon-" 前缀。
您的 sprite
任务的最后一行将变为
spriteData.css
.pipe(replace(/^\.icon-/gm, '.'))
.pipe(gulp.dest("./css"));
您也可以使用库的 cssSelector
。
cssOpts: {
cssSelector: function (sprite) {
return '.' + sprite.name;
}
}
我正在使用 gulp.spritesmith 自动生成精灵图像和 css。一切正常,除了生成的 css 是 haivng "icon-" 前缀。我不想添加此前缀,因为我有现有的 HTML 标记并且我不想更改标记。 以下是我的 gulp 任务。
'use strict';
var gulp = require('gulp');
var spritesmith = require('gulp.spritesmith');
gulp.task('sprite', function () {
var spriteData =
gulp.src('./sprite/*.*') // source path of the sprite images
.pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.css'
}));
spriteData.img.pipe(gulp.dest("./css")); // output path for the sprite
spriteData.css.pipe(gulp.dest("./css")); // output path for the CSS
});
以下是我生成的 css.
.icon-icon1 {
background-image: url(sprite.png);
background-position: 0px 0px;
width: 120px;
height: 120px;
}
.icon-icon2 {
background-image: url(sprite.png);
background-position: -120px 0px;
width: 120px;
height: 120px;
}
请帮忙压制"icon-"。
您可以使用 gulp-replace 删除 "icon-" 前缀。
您的 sprite
任务的最后一行将变为
spriteData.css
.pipe(replace(/^\.icon-/gm, '.'))
.pipe(gulp.dest("./css"));
您也可以使用库的 cssSelector
。
cssOpts: {
cssSelector: function (sprite) {
return '.' + sprite.name;
}
}