HTML 字符集


要正確顯示一個 HTML 頁面,瀏覽器必須知道要使用的字符集(字符編碼)。


HTML 字符集

在 HTML 中,正確的字符編碼是什么?

HTML5 中默認的字符編碼是 UTF-8。

這并非總是如此。早期網絡的字符編碼是 ASCII 碼。

后來,從 HTML 2.0 到 HTML 4.01,ISO-8859-1 被認定為標準。

隨著 XML 和 HTML5 的出現,UTF-8 也終于到來了,解決了大量的字符編碼問題。

下面是關于字符編碼標準的簡短概述。


在開始的時候:ASCII

計算機信息(數字、文字、圖片)在電子中是以二進制 1 和 0(01000101)進行存儲的。

為了規范字母數字字符的存儲,創建了 ASCII(全稱 American Standard Code for Information Interchange)。它為每個存儲字符定義了一個獨特的二元 7 位數字,支持 0-9 數字,大/小寫英文字母(a-z、A-Z)和一些特殊的字符,比如 ! $ + - ( ) @ < > 。

由于 ASCII 使用一個字節(7 位表示字符,1 位表示傳輸奇偶控制),所以它只能表示 128 個不同的字符。這些字符中有 32 個被保留作為其他控制目的使用。

ASCII 的最大的缺點是,它排除了非英文字母。

ASCII 今天仍然在廣泛使用,尤其是在大型計算機系統中。

如需深入了解 ASCII,請查看完整的 ASCII 參考手冊


在 Windows 中:ANSI

ANSI(也稱為 Windows-1252),是 Windows 95 及其之前的 Windows 系統中默認的字符集。

ANSI 是 ASCII 的擴展,它加入了國際字符。它使用一個完整的字節(8 位)來表示 256 個不同字符。

自從 ANSI 成為 Windows 中默認的字符集,所有的瀏覽器都支持 ANSI。

如需深入了解 ANSI,請查看完整的 ANSI 參考手冊


在 HTML 4 中:ISO-8859-1

由于大多數國家使用 ASCII 以外的字符,在 HTML 2.0 標準中,默認的字符編碼更改為 ISO-8859-1。

ISO-8859-1 是 ASCII 的擴展,它加入了國際字符。與 ANSI 一樣,它使用一個完整的字節(8 位)來表示 256 個不同字符。

Note 當瀏覽器在網頁中檢測到 ISO-8859-1 時,通常默認為 ANSI,因為除了 ANSI 有 32 個額外的字符這一點,其他方面 ANSI 基本等同于 ISO-8859-1。

如果 HTML 4 網頁使用了不同于 ISO-8859-1 的字符集,則需要在 <meta> 標簽中指定,如下所示:

實例

<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-8">

Note

HTML5 中默認的字符集是 UTF-8。
所有的 HTML 4 處理器都支持 UTF-8,所有的 HTML5 和 XML 處理器都支持 UTF-8 和 UTF-16。

如需深入了解 ISO-8859-1,請查看完整的 ISO-8859-1 參考手冊


在 HTML5 中:Unicode(UTF-8)

由于以上所列的字符集是有限的,在多語言環境中是不兼容的,所以 Unicode 聯盟(Unicode Consortium)開發了 Unicode 標準(Unicode Standard)。

Unicode 標準覆蓋了(幾乎)所有的字符、標點符號和符號。

Unicode 使文本的處理、存儲和運輸,獨立于平臺和語言。

HTML5 中默認的字符編碼是 UTF-8。

如需深入了解 Unicode(UTF-8),請查看完整的 Unicode 參考手冊