簡體   English   中英

HTML 4.01中的“專有” HTML標簽

[英]“Proprietary” HTML tags in HTML 4.01

我的上一家僅使用4.01 DOCTYPE的公司決定基於專有標記的使用以以下形式添加一些新功能:

<pp:foo attrOne="something" attrTwo="something else"/>

出於某些目的在他們的.aspx頁中。 在一開始,他們破壞了很多Javascript,直到我懷疑這些專有標簽是自動關閉的時,它們(在某些情況下)導致文檔的其余部分被解釋為該元素的子級。 (我應該補充一點,無論如何我都不會在4.01中使用專有標簽,但這是在我的薪資等級之上做出的決定。)

根據我的預感,我建議他們將其更改為

<pp:foo attrOne="something" attrTwo="something else"></pp:foo>

然后所有壞掉的Javascript DOM操作又重新出現了。 我在任何地方都找不到這種行為的參考,而修復它只是我的幸運猜測。 我的問題是,有人知道為什么要這么做嗎?

您遇到了此問題,因為HTML 4.01不像您的第一個示例那樣支持自動關閉標簽。

W3C html驗證器給出了一些解釋:

根據文檔的DOCTYPE,可以至少兩種不同的方式解釋序列<FOO />。
對於HTML 4.01 Strict,“ /”終止標記<FOO(帶有隱含的“>”)。
但是,由於即使在存在HTML 4.01 Strict DOCTYPE的情況下,許多瀏覽器也無法以這種方式進行解釋,因此最好在純HTML文檔中完全避免使用它,而僅將其使用保留給使用XHTML編寫的文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM