84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
W3C驗證器(維基百科)不喜歡在非空元素上使用自閉合標籤(以“/>”結尾的標籤)。 (空元素是那些永遠不會包含任何內容的元素。)它們在HTML5中是否仍然有效?
/>
一些被接受的空元素範例:
一些被拒絕的非空元素範例:
W3C驗證器實際上接受空的自閉合標籤:作者最初遇到問題是因為簡單的拼字錯誤(使用了>而不是/> ;);然而,自閉合標籤在HTML5中並不完全有效,答案詳細闡述了不同HTML版本中的自閉合標籤問題。
>
自閉合的div將無法驗證。這是因為div是一個普通元素,而不是一個空元素。
根據HTML5規格,不能包含任何內容的標籤(稱為空白元素)可以自閉合*。這包括以下標籤:
area, base, br, col, embed, hr, img, input, link, meta, param, source, track, wbr
上述標籤上的「/」是完全可選的,因此與沒有區別,但是無效的。
*注意:外部元素也可以自閉合,但我認為這不在本答案的範圍內。
在理論上,HTML 4中,(是的,沒有任何>)的意思是(這導致的意思是>(即>)和的意思是hello)。我使用術語“理論上”是因為這是一個SGML規則,瀏覽器對其支援得非常差。支援非常少(我只在emacs-w3m中看到過它起作用),以至於規範建議作者避免使用這種語法。
(是的,沒有任何>)的意思是(這導致的意思是>(即>)和的意思是hello)。我使用術語“理論上”是因為這是一個SGML規則,瀏覽器對其支援得非常差。支援非常少(我只在emacs-w3m中看到過它起作用),以至於規範建議作者避免使用這種語法。
的意思是hello)。我使用術語“理論上”是因為這是一個SGML規則,瀏覽器對其支援得非常差。支援非常少(我只在emacs-w3m中看到過它起作用),以至於規範建議作者避免使用這種語法。
hello
在XHTML中,的意思是。這是適用於所有XML文件的XML規則。也就是說,XHTML通常以text/html的形式提供,這(至少在歷史上)由瀏覽器使用與以application/xhtml xml提供的文件不同的解析器處理。 W3C提供了關於XHTML作為text/html的相容性指南。 (基本上:只有在元素被定義為EMPTY(並且在HTML規範中禁止了結束標籤)時,才使用自閉合標籤語法)。
text/html
application/xhtml xml
在HTML5中,的意思取決於元素的類型:
自閉合的div將無法驗證。這是因為div是一個普通元素,而不是一個空元素。
根據HTML5規格,不能包含任何內容的標籤(稱為空白元素)可以自閉合*。這包括以下標籤:
上述標籤上的「/」是完全可選的,因此
與
沒有區別,但
是無效的。
*注意:外部元素也可以自閉合,但我認為這不在本答案的範圍內。
在理論上,HTML 4中,(是的,沒有任何的意思是
>
)的意思是
(這導致
的意思是
(即>
)和>
hello
)。我使用術語“理論上”是因為這是一個SGML規則,瀏覽器對其支援得非常差。支援非常少(我只在emacs-w3m中看到過它起作用),以至於規範建議作者避免使用這種語法。在XHTML中,
的意思是
。這是適用於所有XML文件的XML規則。也就是說,XHTML通常以text/html
的形式提供,這(至少在歷史上)由瀏覽器使用與以application/xhtml xml
提供的文件不同的解析器處理。 W3C提供了關於XHTML作為text/html
的相容性指南。 (基本上:只有在元素被定義為EMPTY(並且在HTML規範中禁止了結束標籤)時,才使用自閉合標籤語法)。在HTML5中,
的意思取決於元素的類型: