,這種寫法也就是所謂的自關閉,在XML中是完全合法的寫法。如果你熟悉XML相關的開發,可能也習慣這種寫法,想著XML中任何不含子節點的元素都可以這樣寫,那麼XHTML中沒有內容的標籤也都"/> ,這種寫法也就是所謂的自關閉,在XML中是完全合法的寫法。如果你熟悉XML相關的開發,可能也習慣這種寫法,想著XML中任何不含子節點的元素都可以這樣寫,那麼XHTML中沒有內容的標籤也都">

首頁 >web前端 >html教學 >XHTML標籤的自關閉的寫入方法應該注意的問題_HTML/Xhtml_網頁製作

XHTML標籤的自關閉的寫入方法應該注意的問題_HTML/Xhtml_網頁製作

WBOY
WBOY原創
2016-05-16 16:45:28923瀏覽

XHTML裡面的img標記應該這樣寫:,這種寫法也就是所謂的自關閉,在XML中是完全合法的寫法。如果你熟悉XML相關的開發,可能也習慣這種寫法,想著XML中任何不含子節點的元素都可以這樣寫,那麼XHTML中沒有內容的標籤也都可以這樣寫。 XHTML中理論上當然允許任何標籤以自關閉的方法來書寫,然而瀏覽器相容性卻帶來了新問題,那就是IE無法正確識別某些標籤的自關閉寫法。 字串8
請嘗試輸入以下XHTML程式碼並在IE中瀏覽:

hello world

,你會發現只能看到前面的hello而不見後面的world,這事情讓人挺無法解釋的吧。可能有不少人都曾經遇到過這個問題,並且花了幾個小時在上面都找不到合理的解釋。 字串4
解釋源自另外一段類似的程式碼:

hello world

,你在IE中看看其顯示效果,能夠得到合理的解釋了嗎?我們能夠看到前面的hello正常顯示了,而後面的world則顯示在textarea裡面,這證明IE並沒有正確識別textarea標籤已經自關閉了,而是當它沒有關閉,並將後面的內容識別為textarea內部的內容。
這時候我們就明白前面那段程式碼為什麼看不到後面的world了,因為它被當作script的一部分來辨識了。這就說明了,在我們使用XHTML時並不能好像XML那樣隨意的使用自關閉的寫法,只有少數原本不需要關閉的標籤可以用自關閉的寫法,其他標籤即使沒有任何內容最好也用成對的關閉寫法。
最後要提醒大家的是,其實弱智的parser不只IE有,很多地方都可能碰到由於parser不嚴謹而引起的問題,所以我們在書寫XHTML的時候還是要遷就一些老HTML繼承下來的習慣,不能好像真的XML那樣自以為符合標準了就隨意寫。不相信?那麼再試一個吧:

hello
world

,留意IE與Opera中的顯示效果。
XHTML一些相關的規範:
1.所有的標記都必須要有一個對應的結束標記
2.所有標籤的元素和屬性的名字都必須使用小寫
3.所有的XML標記都必須合理嵌套
4.所有的屬性必須用引號""括起來
5.把所有 6.給所有屬性賦一個值
7.不要在註釋內容中使“--”
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn