Mã hóa ký tự trong HTML




Mã hóa ký tự là một phương thức chuyển đổi byte vào trong các ký tự. Để làm cho nó hợp lệ hoặc hiển thị một tài liệu HTML một cách chính xác, một chương trình phải chọn một mã hóa ký tự chính xác.

Bộ ký tự hoặc mã hóa ký tự được sử dụng thông dụng nhất trong máy tính là ASCII, và nó cũng là bộ ký tự được sử dụng rỗng rãi nhất cho mã hóa văn bản một cách tự động.

Mã hóa ASCII chỉ hỗ trợ các chữ cái Latin thường và in hoa, số từ 1-9 và một số ký tự thêm vào mà tổng cộng có 128 ký tự. Bạn có thể quan sát toàn bộ những ký tự này tại phần Mã hóa ký tự ASCII trong HTML.

Tuy nhiên, nhiều ngôn ngữ sử dụng lại sử dụng các ký tự Latin hoặc bộ ký tự hoàn toàn khác. ASCII không đề có biểu diễn của những ký tự này, vì thế bạn cần phải học về mã hóa ký tự nếu bạn muốn sử dụng bất cứ các ký tự Non-ASCII.

Tổ chức tiêu chuẩn Quốc tế (ISO) tạo một dãy các bộ ký tự để giải quyết các ký tự quốc gia khác nhau. Cho các tài liệu bằng tiếng Anh và hầu hết các ngôn ngữ phương Tây khác, bộ mã ký tụ ISO-8859-1 được hỗ trợ và sử dụng rộng rãi.

Dưới đây là danh sách các bộ ký tự được sử dụng trên Thế giới.

Bộ ký tự Miêu tả
ISO-8859-1 Bộ ký tự Latin phần 1
Bao gồm North America, Western Europe, Latin America, theCaribbean, Canada, Africa
ISO-8859-2 Bộ ký tự Latin phần 2
Bao gồm Eastern Europe
ISO-8859-3 Bộ ký tự Latin phần 3
Bao gồm SE Europe, Esperanto, và nhiều Ngôn ngữ khác
ISO-8859-4 Bộ ký tự Latin phần 4
Bao gồm Scandinavia/Baltics (và Ngôn ngữ khác không trong ISO-8859-1)
ISO-8859-5 Bộ ký tự Latin/Cyrillic phần 5
ISO-8859-6 Bộ ký tự Latin/Arabic phần 6
ISO-8859-7 Bộ ký tự Latin/Greek phần 7
ISO-8859-8 Bộ ký tự Latin/Hebrew phần 8
ISO-8859-9 Bộ ký tự Latin 5 phần 9
Giống ISO-8859-1 ngoại trừ các ký tự Turkish đổi thay vị trí của Icelandic
ISO-8859-10 Latin 6 Latin 6 Lappish, Nordic, và Eskimo
ISO-8859-15 Giống ISO-8859-1 nhưng thêm nhiều ký tự hơn
ISO-2022-JP Bộ ký tự Latin/Japanese phần 1
ISO-2022-JP-2 Bộ ký tự Latin/Japanese phần 2
ISO-2022-KR Bộ ký tự Latin/Korean phần 1

Sau đó Unicode Consortium đã phát minh một cách để chỉ tất cả ký tự của các ngôn ngữ khác nhau, thay cho các mã ký tự không tương thích với nhau.

Vì thế, nếu bạn muốn tạo các tài liệu mà sử dụng các ký tự từ các bộ ký tự khác nhau, bạn sẽ có thể làm được điều này bằng cách sử dụng một mã ký tự Unicode duy nhất.

Unicode xác định các mã mà có thể giải quyết với một chuỗi trong cách đặc biệt để tạo khoảng trống đủ cho các bộ ký tự lớn. Nó được biết như là UTF-8, UTF-16, và UTF-32. (UTF là viết tắt của Unicode Translation Format)

Bộ ký tự Miêu tả
UTF-8 Mỗi Byte là 8 Bit, và mỗi ký tự UTF-8 có thể dài từ 1 đến 4 Byte.
UTF-16 Mỗi "short" là 16 Bit, và mỗi ký tự UTF-16 có thể dài từ 1 hoặc 2 short.
UTF-32 Mỗi "long" là 32 Bit, và mỗi ký tự UTF-32 luôn luôn dài 1 long, được định dạng độ rộng cố định.

256 ký tự đầu tiên của bộ ký tự Unicode tương ứng với 256 ký tự của ISO-8859-1.

Theo mặc định, các bộ xử lý HTML 4 sẽ hỗ trợ UTF-8 và các bộ xử lý XML hỗ trợ UTF-8 và UTF-16; vì thế các bộ xử lý chuẩn XHTML nên hỗ trợ UTF-16.