標籤:

HTML5注釋標籤加不加「/」?

如圖,我搜索了一下,好幾個回答都是說HTML5中不再嚴格要求自閉標籤加「/」,我想問的是,諸如:

&

&

這類標籤算不算自閉合標籤?需不需要加「/」?或者更大的說,凡是只有一個&<&>括住的要不要加「/」?

我是在這個網頁自學的HTML5:HTML 標題 | 菜鳥教程

並沒有說那些是不是自閉合標籤~我在atom里加上了也沒有報錯。

還有一個問題是注釋標籤,我加了「/」後反而錯誤,把注釋內容給顯示出來了,結合上面的問題我搞不懂了......

補充下自己查閱到的資料:

出自Julie Meloni著,陳宗斌譯的HTML、CSS和JavaScript

百度到的一篇文章:HTML標籤,閉合還是不閉合? - 文章 - 伯樂在線

這樣看來自閉合標籤最好還是都加上「/」?(我更信書里的,書里說是為了兼容以前的東西),那麼注釋標籤為什麼沒有呢?


個人的習慣:

  1. 如果不需要關閉標籤的元素,我喜歡在後面添加「/」,比如&、&、&之類的標籤
  2. 如果需要關閉標籤的元素,我都會後面對應添加。比如&&

對於HTML注釋,不應該都是:& 這樣的嗎?


最後那篇文章是我翻譯的,其實你只要接受有些標籤不用閉合也不用自閉合這個設定,注釋標籤就沒什麼難以接受的。

翻看 HTML spec 會發現語法就是這麼規定的,如果一定要知道原因可能還需一番考究。

根據 SGML 的語法,所有以 &


有2個例外,一個是注釋,一個是DOCTYPE

注釋規定必須 & 這樣寫,不能多不能少

DOCTYPE 必須寫成&,它是標籤,但不屬於HTML標籤

HTML的自閉合標籤可加可不加 /,我習慣不加。如果需要兼容老瀏覽器推薦加上。

其實打開Chrome的devtool發現,就算自閉合的標籤加了 / 在審查元素的DOM樹里也不會把 / 顯示出來


在 HTML5 中,加不加 / 都可以,畢竟不是 xhtml,沒那麼嚴格。

就我個人習慣而言。

非閉合標籤如 & & 我不加 /。

閉合標籤如 &

&,不加就報錯,所以沒得選。


html5是對XHTML的撥亂反正。

在html4之後,行業里出來一種聲音,希望規範化html的寫法,要求一個html文檔必須是一個合法的xml文檔。這就是xhtml。

但是現在,業界的共識是xhtml過於繁瑣、累贅。html5規範要求無內容元素(如br) 不要寫閉合標籤,某些標誌性屬性,如checkbox的checked屬性不要有值等。

HTML5文檔不是xml文檔。


/**/

&


html5隻有容器有閉合標籤,像div/span/body這種能裝其他元素的。那麼問題來了,注釋是容器嗎?


推薦閱讀:

使用CSS能否用圓形圖片做到球體的旋轉效果?
為什麼大多數視頻網站都不用HTML5?
怎樣自定義並使用websocket子協議?
北京榮新IT培訓怎麼樣?
B站是否真的實現支持html5[高清]播放器?

TAG:HTML5 |