4 回答
TA贡献1862条经验 获得超6个赞
这是我前一段时间使用我网站上的“真实” CSS文件进行测试的结果。CSS Optimiser用于缩小。Ubuntu随附的标准Linux存档应用程序用于Gzipping。
原始:28,781字节
最小:22,242字节
压缩:6,969字节
最小+ Gzip:5,990字节
我个人的观点是首先选择Gzipping,因为那显然是最大的不同。至于缩小,这取决于您的工作方式。您必须保留原始CSS文件才能进行进一步的编辑。如果它不麻烦您在每次更改后将其最小化,那就去做。
(注意:还有其他解决方案,例如,在为文件提供服务时通过minifier的“按需”运行它,并将其缓存在文件系统中。)
TA贡献1887条经验 获得超5个赞
测试时要当心:这两个CSS片段很小,因此它们无法从GZIP压缩中受益-仅添加GZIP的小标头会损失所获得的收益。实际上,您不会有这么小的CSS文件,并且不必担心对其进行压缩。
minify + gzip压缩的不仅仅是gzip
原始问题的答案是,是的,minify + gzip将获得比gzip更大的压缩率。对于任何不平凡的示例(例如,超过数百字节的任何有用的JS或CSS代码),都是如此。
有关有效的示例,请获取可压缩且未压缩的Jquery源代码,并使用gzip对其进行压缩并进行查看。
值得一提的是,与优化的CSS相比,JavaScript的缩小带来的好处要大得多,但仍然有好处。
推理:
GZIP压缩是无损的。这意味着它必须存储所有文本,包括确切的空格,注释,长变量名等,以便以后可以完美地复制它们。另一方面,缩小是有损的。如果您缩减代码,那么您将从代码中删除许多此类信息,而剩下的GZIP则需要保留。
缩小会不必要地丢弃空格,仅出于语法原因在必要时保留空格。
缩小删除评论。
代码缩编可以在没有副作用的情况下用较短的名称替换标识符名称。
代码最小化可能会对代码进行微不足道的“编译器优化”,这只有通过实际解析代码才能实现
CSS最小化可以消除冗余规则或合并具有相同选择器的规则。
TA贡献1797条经验 获得超6个赞
你是对的。
缩小与gzip压缩是不同的(如果是这种情况,它们将被称为相同)。例如,用gzip压缩是不一样的:
var myIncrediblyLongNameForThisVariableThatDoesNothingButTakeUpSpace = null;
比缩小最终得到类似:
var a = null;
当然,在大多数情况下,我会说最好的方法是先缩小Gzip,再缩小Gzip,而不只是缩小或gzipping,尽管有时取决于代码,有时缩小或gzipping比两者兼而有之。
添加回答
举报