压缩 HTML、CSS 与 JavaScript
Minify 会缩小发送给浏览器的文档:多余的空白、注释和空行都会被去掉。如果页面缓存已启用,这一步在写入文件时就已完成,否则就通过前台的一个输出缓冲来完成。
三个开关
- 左侧边栏“速度”下面就是“Minify”这一项——三个开关在那里上下排成一列。
- “压缩 HTML”会移除 HTML 注释,其中 IE 条件注释予以保留,并缩减标签之间的空白以及文本中连续的空格。出厂状态为开启。
- “压缩内联 CSS”会精简 <style> 块:注释去掉,空白折叠,{ } : ; , 周围的字符收紧。出厂状态为关闭。
- “压缩内联 JS”会逐行精简内联的 <script> 块。出厂状态为关闭。
哪些内容不会被改动
- 带 src 属性的外部脚本,那里只有地址而没有代码
- 类型不同的脚本块,例如作为 application/ld+json 的 JSON-LD
- <pre> 和 <textarea> 中的内容
- 以 /*! 开头的 CSS 注释
JS 压缩不会把代码记号合并到一起。它只移除真正脚本块中的空行和缩进,以免弄坏 JavaScript 的自动分号补全。
输出缓冲在什么时候生效
没有页面缓存时,只有前台的 GET 请求会被缓冲;后台管理区和 Feed 不在其列。输出要从 255 个字符起才会被处理,而且必须包含一个闭合的 </html>。如果三个开关全部关闭,文档就保持原样。
在页面缓存启用的情况下,压缩只对允许被缓存的请求执行。已登录的用户和被排除的地址拿到的就是未经改动的 HTML。
这篇文章对您有帮助吗?