这是一个简短的回答你的问题:<强>你应该贬低你的HTML, CSS, JS < /强>。有一个易于使用的工具,叫做< a href = " http://gruntjs.com/ " >繁重< / >。它允许您很多任务自动化。其中< a href = " https://github.com/gruntjs/grunt-contrib-uglify " > JS < / >、< a href = " https://github.com/gruntjs/grunt-contrib-cssmin " > CSS < / >, < a href = " https://github.com/gruntjs/grunt-contrib-htmlmin " > HTML < / >缩小,< a href = " https://github.com/gruntjs/grunt-contrib-concat " >文件连接< / >和< a href = " https://github.com/gruntjs/grunt-contrib " >其他> < /。
答案写在这里非常过时,甚至有时候没有意义。很多事情改变了从旧2009,所以我将试着回答正确。
简短的回答——<强>你一定要贬低HTML < /强>。今天是微不足道的,给约< a href = " https://code.google.com/p/htmlcompressor/ " > < / > 5%的加速效果。时间回答阅读全部答案
回到以前人手动minifying css / js(通过运行它通过一些特定的工具贬低它)。是很难自动化进程,肯定需要一些技巧。知道现在很多高水平网站甚至不使用gzip(简单的),这是可以理解的,人们不愿在缩减html。
<强>为什么人缩减js,但不是html > < /强大?当你贬低JS,你做以下事情:
- remove comments
- remove blanks (tabs, spaces, newlines)
- change long names to short (
var isUserLoggedIn
to var a
)
这给很多改进甚至在以前。但在html中你无法改变长名字短,也几乎没有置评。唯一剩下的就是删除空格和换行。使只有少量的改进。
<强>写一个错误的论点是,因为内容是gzip,缩小没有意义。< / >强这是完全错误的。是的,gzip减少微小的改进是有道理的,但是你为什么要gzip评论,空白如果你能适当地修剪,gzip唯一的重要组成部分。它是一样的如果你有一个文件夹来归档一些废话,你永远不会使用,你决定就邮政而不是清理和邮政编码。
<强>为什么它没有意义的缩小的另一个论点是,它是乏味的。< /强> 2009年也许这是真的,但这次新工具出现后。现在你不需要手动贬低你的标记。与诸如< a href = " http://gruntjs.com/ " >繁重< / >是微不足道的安装< a href = " https://github.com/gruntjs/grunt-contrib-htmlmin " > grunt-contrib-htmlmin < / >(依赖于< a href = " http://kangax.github。io / html-minifier / " > HTMLMinifier由@kangax < / >)和配置它来贬低你的html。所有你需要的是2个小时学习繁重和配置,然后一切的一切都是自动完成在不到一秒。声音1秒(你甚至可以什么都不做自动化与< a href = " https://github.com/gruntjs/grunt-contrib-watch " > grunt-contrib-watch < / >)不是真的那么糟糕(即使gzip)大约有5%的改进。
<强>一个观点是,CSS和JS是静态的< / >强,和HTML服务器生成的所以你不能pre-minify它。2009年也是如此,但目前< a href = " https://twitter.com/ " > < / >和< a href = " https://www.facebook.com/ " > < / >网站多是看起来像一个页面应用程序,服务器是薄和客户做所有的路由、模板和其他逻辑。所以服务器只给你< a href = " http://www.json.org/ " > JSON < / >和客户端呈现它。这里有很多不同的html页面和模板。
为了完成我的想法:
- google is minifying html.
- pageSpeed is asking your to minify html
- it is trivial to do
- it gives ~5% of improvement
- it is not the same as gzip