2014-12-04 38 views
3

如果您查看主頁的來源,那麼在DOCTYPE之前會有大約14個換行符。對於在Seller Central登錄的頁面,我看到了超過400個!在頁面的組件之間,通常會有20個換行符,有時更多。爲什麼亞馬遜在其HTML中有這麼多的空白空間?

爲了證明我不是做這件事:

A screenshot of Chrome's source viewer, displaying the DOCTYPE declaration on the 445th line.

亞馬遜似乎是狂熱的速度,所以我懷疑他們會被無意這樣做,尤其是DOCTYPE之前。 (其他東西可能是一個格式良好的FOR循環,選擇不顯示每個迭代的某個模板,也許?)

他們可以在應用程序的邏輯準備好開始吐出代碼之前啓動連接,並且「流「有些空白?

+1

不知道,你得問問他們。但它可能是爲了補償瀏覽器錯誤。例如如果總大小<= 512字節,IE將不會顯示您的錯誤頁面。 – 2014-12-04 19:31:45

+0

的確如此,但是爲每一個成功的頁面做到這一點看起來很奇怪。 – Tigt 2014-12-04 19:33:46

+3

可能也會使「不同的能力」遠離源頭。你的平均腳本kiddy會嘗試通過查看源代碼來「破解」頁面,並且遇到空的窗口。 「zomg,亞馬遜是神奇的,可以隱藏他們的html!」 – 2014-12-04 19:35:08

回答

1

我猜測他們試圖僞造「第一個字節」的短響應時間。

許多web速度測試(ej:http://www.webpagetest.org)肯定會向瀏覽器發送快速的第一個字節,可能搜索引擎也會重視此度量標準,因爲這被認爲是一個小的「處理時間」。

在頁面內容被計算出來的時候打印一些空格可以讓瀏覽器快速瀏覽並且可以將「第一個字節」的時間從0.5秒減少到0.0秒。

或者它可能只是一個bug :)

相關問題