html-minifier中文文档
HTMLMinifier是一个高度可配置的、经过良好测试的、基于javascript的HTML缩小器。参见相应的博客文章,了解它的工作原理、每个选项的描述、测试结果和结论。在线测试套件。还可以看到相应的Ruby包装器和节点。js, Grunt插件,Gulp模块,Koa中间件包装和Express中间件包装。对于类似lint的功能,请查看HTMLLint。
与其他解决方案相比,HTMLMinifier是如何与其他的解决方案相比较的呢? HTMLMinifier(第一个结果是在谷歌搜索“HTMLMinifier”)和htmlcompressor.com和最小化?
| Site | Original size (KB) | HTMLMinifier | minimize | Will Peavy | htmlcompressor.com |
|---|---|---|---|---|---|
| 46 | 43 | 46 | 48 | 46 | |
| HTMLMinifier | 133 | 104 | 112 | 116 | 111 |
| New York Times | 214 | 145 | 163 | 162 | 152 |
| BBC | 237 | 194 | 229 | 235 | 222 |
| Stack Overflow | 248 | 195 | 204 | 212 | 201 |
| Bootstrap CSS | 272 | 260 | 269 | 229 | 269 |
| 348 | 260 | 313 | 345 | 313 | |
| Amazon | 405 | 349 | 390 | 403 | n/a |
| Wikipedia | 471 | 440 | 456 | 471 | 455 |
| NBC | 646 | 613 | 642 | 646 | n/a |
| Eloquent Javascript | 870 | 815 | 840 | 864 | n/a |
| ES6 table | 4580 | 3898 | 4333 | n/a | n/a |
| ES6 draft | 5720 | 5103 | 5253 | n/a | n/a |
大多数选项在默认情况下是禁用的,压缩【参数】
| Option | Description | Default |
|---|---|---|
caseSensitive |
以区分大小写的方式处理属性(适用于定制的HTML标记) | false |
collapseBooleanAttributes |
从布尔属性中省略属性值。 | false |
collapseInlineTagWhitespace |
Don't leave any spaces between display:inline;elements when collapsing. Must be used in conjunction with collapseWhitespace=true |
false |
collapseWhitespace |
在显示之间不要留下任何空格:内联;崩溃时的元素。必须与折叠空间结合使用=true ? | false |
conservativeCollapse |
总是折叠到1个空间(永远不要完全删除它)。必须与折叠空间结合使用=true ? | false |
customAttrAssign |
允许支持自定义属性分配表达式的正则表达式数组。 (e.g. '<div flex?="{{mode != cover}}"></div>') |
[ ] |
customAttrCollapse |
Regex指定自定义属性以从(例如/ng-class/)删除新行。 | |
customAttrSurround |
允许支持自定义属性包围表达式的正则表达式数组(e.g. <input {{#if value}}checked="checked"{{/if}}>) |
[ ] |
customEventAttributes |
允许为minifyJS支持自定义事件属性的正则表达式数组(例如,ng-click) | [ /^on[a-z]{3,}$/ ] |
decodeEntities |
尽可能使用直接的Unicode字符。 | false |
html5 |
根据HTML5规范分析输入。 | true |
ignoreCustomComments |
当匹配时,允许忽略某些注释的正则表达式数组。 | [ /^!/ ] |
ignoreCustomFragments |
当匹配时,允许忽略某些片段的正则表达式数组(例如<?php……吗?>,{ {…} },等等)。 | [ /<%[\s\S]*?%>/, /<\?[\s\S]*?\?>/ ] |
includeAutoGeneratedTags |
插入由HTML解析器生成的标记。 | true |
keepClosingSlash |
保留单例元素的末尾斜杠。 | false |
maxLineLength |
指定最大行长度。压缩的输出将在有效的HTML分割点上被换行。 | |
minifyCSS |
缩小CSS样式元素和样式属性(usesclean-css) | false (could betrue, Object,Function(text)) |
minifyJS |
在脚本元素和事件属性中缩小JavaScript(使用UglifyJS) | false (could betrue, Object,Function(text, inline)) |
minifyURLs |
在各种属性中缩小url(使用relateurl) | false (could beString, Object,Function(text)) |
preserveLineBreaks |
当标记之间的空格包括换行符时,总是崩溃到1行中断(永远不要完全删除)。必须与折叠空间结合使用=true ? | false |
preventAttributesEscaping |
防止属性值的溢出。 | false |
processConditionalComments |
通过minifier处理条件评论的内容。 | false |
processScripts |
通过minifier(例如text/ng-template、text/x-handlebars-template等)来处理脚本元素类型的字符串数组。 | [ ] |
quoteCharacter |
用于属性值的引用类型('or') | |
removeAttributeQuotes |
在可能的情况下删除引号。 | false |
removeComments |
带HTML注释 | false |
removeEmptyAttributes |
删除所有的属性,只有whitespace-only的值。 | false (could betrue,Function(attrName, tag)) |
removeEmptyElements |
删除所有含有空内容的元素。 | false |
removeOptionalTags |
删除可选的标记 | false |
removeRedundantAttributes |
当值匹配默认值时删除属性。 | false |
removeScriptTypeAttributes |
从脚本标签中删除type="text/javascript"。其他类型的属性值是完整的。 | false |
removeStyleLinkTypeAttributes |
从style和link标签中删除type="text/css"。其他类型的属性值是完整的。 | false |
removeTagWhitespace |
尽可能在属性之间移除空间。注意,这将导致无效的HTML! | false |
sortAttributes |
根据频率属性进行排序 | false |
sortClassName |
按频率分类样式类。 | false |
trimCustomFragments |
在ignoreCustomFragments周围调整空白区域。 | false |
useShortDoctype |
用short (HTML5) doctype替换doctype。 | false |
排序属性/样式类
像sortAttributes和sortClassName这样的缩小器选项不会影响输出的纯文本大小。但是,它们形成了长时间重复的字符链,可以提高HTTP压缩中使用的gzip压缩率。
英文文档链接:https://github.com/kangax/html-minifier#user-content-options-quick-reference
html-minifier中文文档的更多相关文章
- Phoenix综述(史上最全Phoenix中文文档)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/users/6cb45a00b49c/latest_articles 网上关于P ...
- Chart.js中文文档-雷达图
雷达图或蛛网图(Radar chart) 简介 A radar chart is a way of showing multiple data points and the variation bet ...
- Knockout中文开发指南(完整版API中文文档) 目录索引
a, .tree li > span { padding: 4pt; border-radius: 4px; } .tree li a { color:#46cfb0; text-decorat ...
- ReactNative官方中文文档0.21
整理了一份ReactNative0.21中文文档,提供给需要的reactnative爱好者.ReactNative0.21中文文档.chm 百度盘下载:ReactNative0.21中文文档 来源: ...
- java中文文档官方下载
一直在寻找它,今天无意之间终于发现它了! http://download.oracle.com/technetwork/java/javase/6/docs/zh/api/overview-summa ...
- Spring中文文档
前一段时间翻译了Jetty的一部分文档,感觉对阅读英文没有大的提高(*^-^*),毕竟Jetty的受众面还是比较小的,而且翻译过程中发现Jetty的文档写的不是很好,所以呢翻译的兴趣慢慢就不大了,只能 ...
- jQuery 3.1 API中文文档
jQuery 3.1 API中文文档 一.核心 1.1 核心函数 jQuery([selector,[context]]) 接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素. jQ ...
- jQuery EasyUI API 中文文档 - ComboGrid 组合表格
jQuery EasyUI API 中文文档 - ComboGrid 组合表格,需要的朋友可以参考下. 扩展自 $.fn.combo.defaults 和 $.fn.datagrid.defaults ...
- jQuery EasyUI API 中文文档 - ValidateBox验证框
jQuery EasyUI API 中文文档 - ValidateBox验证框,使用jQuery EasyUI的朋友可以参考下. 用 $.fn.validatebox.defaults 重写了 d ...
- Weex中文文档
这里整理当前已译出的Weex中文文档,如需查阅完整Weex文档,请访问http://alibaba.github.io/weex/doc/ . 同时也欢迎大家参与Weex中文文档翻译 [Guide] ...
随机推荐
- Android控件使用FragmentTabHost,切换Fragment;
大部分APP的主界面都很类似,要么底部导航的,要么就是侧滑菜单,还有底部导航+侧滑菜单的:底部导航实现大概有几种方式: TabHost+Fragment RadioGroup+Fragment Fra ...
- 关于tp5自动过滤index.php
在public/.htaccess 中输入这段代码即可实现过滤index.php <IfModule mod_rewrite.c> Options +FollowSymlinks -Mul ...
- cookies的常见方式
cookie有如下特点 保存在客户端,一般由浏览器负责存储在本地. 通常是加密存储的,不过由于存储在本地,很难保证数据不被非法访问,并不怎么安全,所以cookies中不宜保存敏感信息,如密码等. 哪些 ...
- 【学习】通用函数:快速的元素级数组函数【Numpy】
通用函数(即ufunc)是一种对ndarray中的数据执行元素级运算的函数.可以将其看做简单函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器. sqrt 和 exp为一元(unary ...
- py库:把python打包成exe文件(pyinstaller)
http://blog.csdn.net/be_quiet_endeavor/article/details/73929077 用Pyinstaller把Python3.4程序打包成可执行文件exe ...
- [leetcode]335. Self Crossing
You are given an array x of n positive numbers. You start at point (,) and moves x[] metres to the n ...
- 阿里云RDS读写分离数据查询延迟解决
mysql使用RDS做数据主从读写分离.在使用的过程中发现部分业务对其他服务以来严重.但是由于系统不是采用微服务的架构,造成部分数据插入数据库后,后续操作读取数据库没有查询到前面插入的数据.查看阿里云 ...
- TTS
CLASS_SpVoice: TGUID = '{96749377-3391-11D2-9EE3-00C04F797396}'; http://blog.sina.com.cn/s/blog_4fce ...
- Digital Twin的8种解读!
国际8大主流厂商对digital twin的理解,很有必要来一次汇总! 据IDC预测,2017年世界上将有40%的大型生产商都会应用虚拟仿真技术来为他们的生产过程进行建模,Digital Twin可以 ...
- 使用jQuery+huandlebars防止编码注入攻击
兼容ie8(很实用,复制过来,仅供技术参考,更详细内容请看源地址:http://www.cnblogs.com/iyangyuan/archive/2013/12/12/3471227.html) & ...