4 回答

TA貢獻1862條經驗 獲得超6個贊
這是我前一段時間使用我網站上的“真實” CSS文件進行測試的結果。CSS Optimiser用于縮小。Ubuntu隨附的標準Linux存檔應用程序用于Gzipping。
原始:28,781字節
最?。?2,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比兩者兼而有之。
添加回答
舉報