gulp-htmlmin压缩html的gulp插件实例代码


Posted in Javascript onJune 06, 2016

通过一条命令用Npm安装gulp-htmlmin:

npm install gulp-htmlmin --save-dev

安装完毕后,打开gulpfile.js文件,我们里面编写一个task用来专门压缩html,并对html进行一系列的处理:

var gulp = require('gulp');
var htmlmin = require('gulp-htmlmin');
gulp.task('html',function(){
var options = {
collapseWhitespace:true,
collapseBooleanAttributes:true,
removeComments:true,
removeEmptyAttributes:true,
removeScriptTypeAttributes:true,
removeStyleLinkTypeAttributes:true,
minifyJS:true,
minifyCSS:true 
};
gulp.src('app/**/*.html')
.pipe(htmlmin(options))
.pipe(gulp.dest('dest/')); 
});

我们看到task里面有个设置选项,分别介绍一下他们的属性的作用:

1.collapseWhitespace:从字面意思应该可以看出来,清除空格,压缩html,这一条比较重要,作用比较大,引起的改变压缩量也特别大;

2.collapseBooleanAttributes:省略布尔属性的值,比如:<input checked="checked"/>,那么设置这个属性后,就会变成 <input checked/>;

3.removeComments:清除html中注释的部分,我们应该减少html页面中的注释。

4.removeEmptyAttributes:清除所有的空属性,

5.removeSciptTypeAttributes:清除所有script标签中的type="text/javascript"属性。

6.removeStyleLinkTypeAttributes:清楚所有Link标签上的type属性。

7.minifyJS:压缩html中的javascript代码。

8.minifyCSS:压缩html中的css代码。

总之,压缩Html的原则就是清除没用的代码,删除本就默认值的属性,将html压缩的最小,这样才能提高项目运行的性能。

Javascript 相关文章推荐
关于jquery ajax 调用带参数的webservice返回XML数据一个小细节
Jul 31 Javascript
javascript的字符串按引用复制和传递,按值来比较介绍与应用
Dec 28 Javascript
简单漂亮的js弹窗可自由拖拽且兼容大部分浏览器
Oct 22 Javascript
js 弹出框只弹一次(二次修改之后的)
Nov 26 Javascript
jQuery后代选择器用法实例
Dec 23 Javascript
基于jQuery实现网页进度显示插件
Mar 04 Javascript
JS处理json日期格式化问题
Oct 01 Javascript
jquery实现的伪分页效果代码
Oct 29 Javascript
AngularJS 作用域详解及示例代码
Aug 17 Javascript
vue-router 中router-view不能渲染的解决方法
May 23 Javascript
Nuxt默认模板、默认布局和自定义错误页面的实现
May 11 Javascript
Vuex实现购物车小功能
Aug 17 Javascript
node.js cookie-parser 中间件介绍
Jun 06 #Javascript
JavaScript 对象字面量讲解
Jun 06 #Javascript
省市联动效果的简单实现代码(推荐)
Jun 06 #Javascript
js获取新浪天气接口的实现代码
Jun 06 #Javascript
浅谈Sublime Text 3运行JavaScript控制台
Jun 06 #Javascript
浅谈Jquery中Ajax异步请求中的async参数的作用
Jun 06 #Javascript
浅谈String.valueOf()方法的使用
Jun 06 #Javascript
You might like
session在PHP大型web应用中的使用
2011/06/25 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
JavaScript 学习笔记(十一)
2010/01/19 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
12种不宜使用的Javascript语法整理
2013/11/04 Javascript
JS判断是否360安全浏览器极速内核的方法
2015/01/29 Javascript
jQuery实现跨域
2015/02/03 Javascript
javascript给span标签赋值的方法
2015/11/26 Javascript
jQuery xml字符串的解析、读取及查找方法
2016/03/01 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
Bootstrap3.3.7导航栏下拉菜单鼠标滑过展开效果
2017/10/31 Javascript
IE11下使用canvas.toDataURL报SecurityError错误的解决方法
2017/11/19 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
vue如何获取自定义元素属性参数值的方法
2019/05/14 Javascript
Django内容增加富文本功能的实例
2017/10/17 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
对Python 除法负数取商的取整方式详解
2018/12/12 Python
Python实现分段线性插值
2018/12/17 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
使用css3 属性如何丰富图片样式(圆角 阴影 渐变)
2012/11/22 HTML / CSS
荷兰包包购物网站:The Little Green Bag
2018/03/17 全球购物
速比涛英国官网:Speedo英国
2019/07/15 全球购物
文员个人求职自荐信
2013/09/21 职场文书
医学院四年学习生活的自我评价
2013/11/06 职场文书
QQ空间主人寄语大全
2014/04/12 职场文书
关工委先进个人事迹材料
2014/05/23 职场文书
我是一名护士演讲稿
2014/08/28 职场文书
审计局2014法制宣传日活动总结
2014/11/01 职场文书
合作协议书格式范本
2016/03/21 职场文书
应用最多的公文《通知》如何写?
2019/04/02 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
导游词之青岛太清宫
2019/12/13 职场文书
星际争霸 Light vs Action 一场把教主看到鬼畜的比赛
2022/04/01 星际争霸