2009-10-18 71 views
3

我剛剛從Google讀取this article。我一直認爲結束標記對於保持html文檔清潔並使其機器可讀是非常重要的。但他們推薦相反。省略html的可選標籤

您對此有何看法?

+3

我不會那樣做。它似乎很混亂。 – 2009-10-18 15:53:04

回答

9

谷歌是在一個有些異常的情況下他們服務,在頁面大小的任何微小的節能很快加起來他們的主要搜索頁面,這樣非常多份。這意味着對於他們來說,通過刪除封閉標籤和空白來減小頁面的尺寸是很經濟的,但要以維護困難爲代價。

你不是Google;它不太可能爲你付出代價。您會注意到,您鏈接到自己的Google頁面並沒有忽略它推薦的標籤,因爲它不是Google服務很多關鍵頁面之一。將它與www.google.com首頁的極端縮小比較。

用gzip/deflate壓縮,你就會得到已經大部分轉移最小尺寸;進一步減少標記是絕望的措施,除非你服務的負載將是一個不成熟的優化。

3

這完全取決於你的DOCTYPE。如果您使用HTML 4過渡,那麼是的,您可以放棄結束標記。如果你嚴格使用XHTML或HTML 4,那麼不要,關閉你的標籤。

+0

我沒看過,但HTML5是否需要endtags? – 2009-10-18 15:53:36

+1

HTML5不會改變這種情況; HTML樣式的序列化可以省略標籤,XHTML5序列化不能。 – bobince 2009-10-18 16:13:13

+0

我開發CMS應用程序。我總是會建議標籤正確關閉。因爲如果你有一天需要傳輸內容,那麼它很容易解析XML結構的東西,而不僅僅是結束。我想像括號這樣的標籤。他們有一個{和一個}。 – BerggreenDK 2011-06-16 10:06:12

0

只要你符合DTD,我同意爭取最大限度減少混亂。就個人而言,我從來沒有見過任何人使用

</br> 

解析器根據DTD將(應該)解析,所以它仍然將是「機器可讀」。

+2

事實上,人們使用縮短版本'
' – 2009-10-18 16:15:07

+0

我應該澄清。我從來沒有見過任何人做過類似

,通常我只是將其看作
。 – 2009-10-19 19:09:54

+2

注意在html中它是**禁止**來關閉一個'BR'元素。與其他元素(例如'P')相反,結束標記是可選的。 – 2010-06-30 01:39:30

0

即文章建議省略被更好表示爲一個單開始與標籤對的結束標記。由於它引用的標籤以及穿透標籤應該用作單例標籤,因此沒有結束標籤,因此這既不是最佳實踐建議,也不是錯誤的。我建議完全無視這篇文章,因爲它試圖推薦一種比完全有缺陷的做法更好的方法。

老實說,我不建議你採取任何提醒有關從谷歌標記爲他們選擇完全不顧任何標準如果能減少字符提供給最終用戶的數量。試圖驗證他們的任何代碼,並親自看看他們不是應該解決哪些標記最佳實踐的例子。

2

HTML規範允許您省略某些結束標記。一般而言,這些是不能自嵌套的標籤,因此結束標籤永遠不會含糊不清。就拿這個例子:

<p>A paragraph of text. 
<p>Another paragraph of text.</p> 

<div>A divider element... 
<div>Another divider element...</div> 

在第一個例子,當你到了第二<p>,這意味着前面的章節已經結束了,因爲你不能嵌套段落標記。在瀏覽器解釋,作爲:

<p>A paragraph of text.</p> 
<p>Another paragraph of text.</p> 

在第二個例子,但是第二<div>創建嵌套div元素,並且</div>關閉內部元件。無論你想要外部結束,你都需要添加另一個</div>

然而,說了這麼多,它可能會更容易關閉所有的標籤,你去避免出現任何問題。這取決於你將如何記住白名單。如果你忘記了,例如div必須總是關閉,那麼你的佈局不會結束。

正如bobince所說,gzip是一種無關緊要的東西。如果您有30個段落,則包含和不包含結束標記的版本之間的差異將爲120個字節。但是,如果兩者都被壓縮,差異將會很小 - 小於10個字節。我建議編寫HTML,不過你很舒服。