要正确顯示一個 HTML 頁面,浏覽器必須知道要使用的字元集(字元編碼)。
在 HTML 中,正确的字元編碼是什麼?
HTML5 中預設的字元編碼是 UTF-8。
這并非總是如此。早期網絡的字元編碼是 ASCII 碼。
後來,從 HTML 2.0 到 HTML 4.01,ISO-8859-1 被認定為标準。
随着 XML 和 HTML5 的出現,UTF-8 也終于到來了,解決了大量的字元編碼問題。
下面是關于字元編碼标準的簡短概述。
計算機資訊(數字、文字、圖檔)在電子中是以二進制 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
參考手冊。
ANSI(也稱為 Windows-1252),是 Windows 95 及其之前的 Windows 系統中預設的字元集。
ANSI 是 ASCII 的擴充,它加入了國際字元。它使用一個完整的位元組(8 位)來表示 256 個不同字元。
自從 ANSI 成為 Windows 中預設的字元集,所有的浏覽器都支援 ANSI。
如需深入了解 ANSI,請檢視完整的 ANSI
由于大多數國家使用 ASCII 以外的字元,在 HTML 2.0 标準中,預設的字元編碼更改為 ISO-8859-1。
ISO-8859-1 是 ASCII 的擴充,它加入了國際字元。與 ANSI 一樣,它使用一個完整的位元組(8 位)來表示 256 個不同字元。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauAXbhx2LcNXZnFWbp9CXt92YuI2bv5Wdy5yd3d3Lc9CX6MHc0RHaiojIsJye.jpg)
當浏覽器在網頁中檢測到 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">
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauAXbhx2LcNXZnFWbp9CXt92YuI2bv5Wdy5yd3d3Lc9CX6MHc0RHaiojIsJye.jpg)
HTML5 中預設的字元集是 UTF-8。
所有的 HTML 4 處理器都支援 UTF-8,所有的 HTML5 和 XML 處理器都支援 UTF-8 和 UTF-16。
如需深入了解 ISO-8859-1,請檢視完整的 ISO-8859-1
由于以上所列的字元集是有限的,在多語言環境中是不相容的,是以 Unicode 聯盟(Unicode Consortium)開發了 Unicode 标準(Unicode Standard)。
Unicode 标準覆寫了(幾乎)所有的字元、标點符号和符号。
Unicode 使文本的處理、存儲和運輸,獨立于平台和語言。
如需深入了解 Unicode(UTF-8),請檢視完整的
Unicode 參考手冊。