簡體   English   中英

通過HTML Minifier添加新行的目的

[英]Purpose of adding new lines by HTML minifier

眾所周知,用於最小化響應的PHP模塊-最小化( https://code.google.com/p/minify/ ),作為最小化過程的第一步,它的作用並不明顯。 它將在每個打開的標簽之后,第一個屬性之前(如果存在)添加一個新行。

//在打開標簽的第一個屬性之前使用換行符(以限制行長)

我的問題是尋求指出此操作背后的實際原因 ,以及通過縮短行數而獲得的實際收益來證明縮小輸出中大量新字符的開銷是合理的情況。

我最近偶然發現JSON解析錯誤時發現了這種情況,原因尚不清楚。 縮小過程的一部分使JSON響應(包含html標記)無效。 內聯JS(包含標簽)時可能會遇到類似的問題。

這是在常見問題解答中

為什么CSS和HTML縮小器添加這么多換行符?

TL; DR:忽略它們。 它們不會增加輸出的大小,如果您絕對希望一行中的所有內容都必須使用另一種工具。

有傳言說某些源代碼控制工具和舊版瀏覽器不喜歡很長的行。 行短的壓縮文件也更容易區分。

由於兩個Minify類都是基於正則表達式的,因此計數字符然后嘗試重新建立上下文以添加換行符將非常困難/容易出錯。 相反,兩個類都盡可能在1個換行符(\\ n)之間交換1個空間,增加了換行符,但沒有增加字節。

如果您可以想到另一種安全有效的方法來限制這兩個工具中的行數而不增加字節數,請提交補丁,但這不是任何人都應該擔心的事情。

某些電子郵件服務器還會在1000個字符之后自動插入換行符,這會破壞此腳本生成的HTML的最小值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM