2011-10-06 105 views
4

剛剛意識到HTML符號,如:HTML符號魔術

& 

也將被瀏覽器識別的無

; 

我有,因爲這個問題:

&current 

被替換與

¤t 

你能澄清 - 爲什麼?

+0

你在哪裏看到'&curren'正在用'¤'更換? '[no-repro]'也許你實際上鍵入了'¤ t'(呈現爲't')或'&current;'(呈現爲't;')。 –

+1

@Matt - 不,這是現代瀏覽器中的標準化行爲。看到我的答案。 – Alohci

回答

2

一些爲了向後兼容的原因,指定的字符引用在不需要尾隨分號的情況下被識別。 &curren就是其中之一。

命名字符引用的完整清單,其中顯示那些不需要尾隨分號在這裏給出:https://www.w3.org/TR/html51/syntax.html#named-character-references

+0

很好,偵探 - 這是**答案。 –

+0

超級!男人謝謝你! –

1

瀏覽器儘可能清理垃圾。沒有規定說他們應該這樣做,或者他們必須這樣做,或者甚至認爲這是一個好主意。但是如果一些瀏覽器這樣做,那麼他們就會這樣做。

+1

有一條規則。它在HTML5規範中。 – Alohci

+0

...現在每個瀏覽器都完全支持這個功能嗎? –

3

因爲HTML中的任何&都應編碼爲&。因此,任何&本身將被解釋爲HTML實體的開始,並且瀏覽器嘗試糾錯(如果字符超出其允許序列,例如空格字符,則解析器可能試圖解釋該實體)。

每當您在HTML中使用&時,都會將其編碼爲&