gulp壓縮css,選用的依賴是gulp-clean-css,在壓縮大型項目時還對用到一個dom流壓縮文件選取的依賴gulp-dom-srccss
依賴安裝:npm i gulp-clean-csshtml
依賴安裝:npm i gulp-dom-srcnpm
gulpflie:gulp
var gulp = require("gulp"), htmlSrc = require("gulp-dom-src"),//在html頁面中選取文件合併壓縮 concat = require("gulp-concat "), cleancss = require('gulp-clean-css'); //壓縮css gulp.task('cssmin', function () { // 登陸頁面css壓縮 htmlSrc({file: './student/login.html', selector: 'link:not([href*="mobile"],[href*="examTitle"])', attribute: 'href'}) .pipe(concat('login.min.css')) .pipe(cleancss()) .pipe(gulp.dest('dist/css')); }); //執行方法 gulp.task('default', [ 'cssmin']);
在沒有 標籤的狀況下,cssmin方法可以完整的執行。可是在存在icon小圖標時,html選取css文件路徑時找到icon-link標籤後就不會日後執行。dom
形成的現象是:gulp壓縮完畢後不會報錯可是壓縮出來的css文件會少代碼ui
解決方法一:code
這個標籤寫在html文件全部link標籤的最後面htm
解決方法二:ip
htmlSrc選擇文件的時候把 標籤排除。如:it
htmlSrc({file: './student/login.html', selector: 'link:not([href*="mobile"],[href*="examTitle"])', attribute: 'href'})