2011-01-12 80 views
2

當編寫一個HTML文件,是可以接受使用直接的特殊字符,例如用變音符號下方爲常規文本的captial字母C:Ç或使用這種性格特徵的HTML Entity name&CcedilHTML和字符編碼VS HTML實體

我已經看到兩者都在實踐中使用,但肯定有規則來管理這種適當的使用方式,以及相對於另一種方式的優點。例如,這個網站維護這個角色的原始形式,但其他網站最終可能會將其渲染爲方塊。

+0

如果有疑問,如果需要這種耐心和你」不確定實體名稱,您始終可以使用數字實體:「Ç」(charcode 199)可以表示爲「Ç」(十進制)或「Ç」(十六進制)。該轉換可以通過簡單的轉換腳本完成。 – bart 2011-01-12 18:23:45

+0

你應該小心這一點,我已經看到網上的JavaScript在某種程度上混淆了轉換。 – Incognito 2011-01-12 18:40:03

回答

2

這一切都取決於文檔的字符編碼。如果您不確定是否應該使用常規文本或編碼版本,則可以通過W3C Validator運行您的頁面。

考慮以下代碼:

<html> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    <title>Stuff</title> 
</head> 
<body> 
<p>©</p> 
<p>&#169;</p> 
</body> 
</html> 

文件編碼設置爲UTF-8,當它驗證,它會返回一個錯誤:

Sorry, I am unable to validate this document because on line 7 it contained one or more bytes that I cannot interpret as utf-8 (in other words, the bytes found are not valid values in the specified Character Encoding). Please check both the content of the file and the character encoding indication.

4

如果使用UTF-8字符編碼,則大多數實體字符(除&amp;,&gt;&lt;之外)變得多餘。

如果你不使用UTF-8,那麼你需要一切的實體。

+0

「使用UTF-8編碼」在這裏意味着「以UTF-8編碼方式爲您的頁面提供服務」。 – 2011-01-12 16:11:59

6

真實人物:

  • 更容易,如果你的系統設置爲使用這些字符
  • 產生更多可讀的代碼語言輸入
  • 保存字節

HTML實體:

  • 讓你m礦石或更少忘記字符編碼

顯然,在HTML特殊含義(<&等)字符仍然需要通過實體來表示。