Sách tham khảo HTML Unicode (UTF-8)

Unicode Consortium

Unicode Consortium đã phát triển tiêu chuẩn Unicode. Mục tiêu của họ là thay thế các bộ ký tự hiện có bằng định dạng chuyển đổi Unicode tiêu chuẩn (UTF).

Tiêu chuẩn Unicode đã đạt được thành công và được thực hiện qua HTML, XML, Java, JavaScript, email, ASP, PHP, v.v. Nhiều hệ điều hành và tất cả các trình duyệt hiện đại đều hỗ trợ tiêu chuẩn Unicode.

Unicode Consortium đã hợp tác với các tổ chức phát triển tiêu chuẩn hàng đầu (ví dụ như ISO, W3C và ECMA).

Bộ ký tự Unicode

Unicode có thể được thực hiện qua các bộ ký tự khác nhau. Mã hóa phổ biến nhất là UTF-8 và UTF-16:

Bộ ký tự Mô tả
UTF-8

Độ dài ký tự trong UTF8 có thể là 1 đến 4 byte.

UTF-8 có thể biểu diễn bất kỳ ký tự nào trong tiêu chuẩn Unicode.

UTF-8 tương thích ngược với ASCII. UTF-8 là mã hóa首选 cho email và trang web.

UTF-16

Định dạng mã hóa Unicode 16 bit là mã hóa ký tự dài thay đổi của Unicode, có thể mã hóa toàn bộ bộ ký tự Unicode repertoire.

UTF-16 được sử dụng trong các hệ điều hành và môi trường chính, chẳng hạn như Microsoft Windows, Java và .NET.

Chú thích:128 ký tự Unicode đầu tiên (khớp với ASCII) sử dụng mã hóa byte tám đơn, tám byte này có giá trị hệ hai như ASCII, vì vậy văn bản ASCII hiệu quả cũng trở thành mã hóa UTF-8 hiệu quả Unicode.

Lưu ý:HTML 4 hỗ trợ UTF-8. HTML 5 hỗ trợ UTF-8 và UTF-16!

Tiêu chuẩn HTML5: Unicode UTF-8

Do kích thước bộ ký tự trong ISO-8859 bị giới hạn và không tương thích với môi trường đa ngôn ngữ, nên Liên minh Unicode đã phát triển tiêu chuẩn Unicode.

Tiêu chuẩn Unicode (gần như) bao gồm tất cả các ký tự, dấu phẩy và biểu tượng trên thế giới.

Unicode hỗ trợ xử lý, lưu trữ và truyền tải văn bản độc lập với nền tảng và ngôn ngữ.

Mã hóa ký tự mặc định của HTML5 là UTF-8.

Nếu trang web HTML5 sử dụng bộ ký tự khác với UTF-8, thì nên chỉ định bộ ký tự đó trong thẻ <meta>, ví dụ:

Ví dụ

<meta charset="ISO-8859-1">

Sự khác biệt giữa Unicode và UTF-8

Unicode là bộ ký tự. UTF-8 là mã hóa.

Unicode là danh sách ký tự có số thập phân duy nhất (mã điểm). A = 65, B = 66, C = 67, ...。

Danh sách số thập phân này biểu thị chuỗi "hello": 104 101 108 108 111

Mã hóa là cách chuyển đổi những số này thành số hệ hai để lưu trữ trong máy tính:

Mã hóa UTF-8 sẽ lưu trữ "hello" như thế này (hệ số hai): 01101000 01100101 01101100 01101100 01101111

Mã hóaChuyển đổi số thành hệ số hai.Bộ ký tựChuyển đổi ký tự thành số.

Mã ký tự UTF-8 của HTML5

Dưới đây là danh sách một số mã ký tự UTF-8 được hỗ trợ bởi HTML5:

Mã ký tự Hệ số mười Hệ số mười sáu
C0 Controls và Basic Latin 0-127 0000-007F
C1 Controls và Latin-1 Supplement 128-255 0080-00FF
Latin mở rộng - A 256-383 0100-017F
Latin mở rộng - B 384-591 0180-024F
Chỉ hiệu cách khoảng 688-767 02B0-02FF
Ký hiệu dấu 768-879 0300-036F
Hy Lạp và Coptic 880-1023 0370-03FF
Cyrillic cơ bản 1024-1279 0400-04FF
Phụ bản Cyrillic 1280-1327 0500-052F
Ký hiệu ngữ pháp chung 8192-8303 2000-206F
Ký hiệu tiền tệ 8352-8399 20A0-20CF
Ký hiệu dạng chữ 8448-8527 2100-214F
Ký hiệu mũi tên 8592-8703 2190-21FF
Ký hiệu toán học 8704-8959 2200-22FF
Ký hiệu khung 9472-9599 2500-257F
Cấu hình khối 9600-9631 2580-259F
Hình dạng hình học 9632-9727 25A0-25FF
Ký hiệu đa dạng 9728-9983 2600-26FF
Dingbats 9984-10175 2700-27BF