前言
首先你必须装了nodejs
初始化npm init,然后下一步下一步
npm init
安装插件
npm install gulp-autoprefixer gulp-concat gulp-minify-css gulp-rev gulp-rev-collector --save-dev
gulp-autoprefixer//增加前缀, gulp-concat//合并成一个文件, gulp-minify-css//合并成一行, gulp-rev//md5加密, gulp-rev-collector
新建文件gulpfile.js
var gulp = require('gulp')
var autoprefixer = require('gulp-autoprefixer');
var concat = require('gulp-concat');
var minifyCss = require('gulp-minify-css');
var rev = require('gulp-rev'); //- 对文件名加MD5后缀
var revCollector = require('gulp-rev-collector'); //- 路径替换
//处理css
gulp.task('autocss',function(){
gulp.src(['./css/ani.css','./css/style.css'])
.pipe(concat('index.min.css')) //- 合并文件
.pipe(autoprefixer()) //- 增加前缀
.pipe(minifyCss()) //- 合并成一行
.pipe(rev()) //- 文件名加MD5后缀
.pipe(gulp.dest('./dest/css/')) //- 转移到./dest/css目录
.pipe(rev.manifest()) //- 生成一个rev-manifest.json
.pipe(gulp.dest('./dest/css/rev'));
console.log('css编译完成并复制到"./dest/css"目录')
})
// 替换css名
gulp.task('rev', function() {
gulp.src(['./dest/css/rev/*.json', './html/index.html']) //- 读取 rev-manifest.json 文件以及需要进行css名替换的文件
.pipe(revCollector()) //- 执行文件内css名的替换
.pipe(gulp.dest('./')); //- 替换后的文件输出的目录
});
gulp.task('default', ['autocss', 'rev']);
雪碧图插件gulp-css-spriter
var gulp = require('gulp');
var spriter = require('gulp-css-spriter');
gulp.task('default',function(){
return gulp.src('./css/style.css') //- 获取含有雪碧图的css文件
.pipe(spriter({
'spriteSheet':'./dist/images/sprite.png', //- 合成雪碧图后存放到的路径
'pathToSpriteSheetFromCSS':'../dist/images/sprite.png' //- 修改css中图片的路径
}))
.pipe(gulp.dest('./dist/css')); //- 复制css到'./dist/css'目录
})
16 Feb 2017