HTML 文字セット

HTML 文字セット

HTML ページを正しく表示するには、ブラウザが使用する文字セットを知る必要があります。

万年表示早期に使われた文字セットは ASCII

ASCII は 0-9 の数字、大文字と小文字の英字、および一部の特殊文字をサポートしています。

完全な ASCII リファレンスマニュアル

現代ブラウザのデフォルト文字セットは ISO-8859-1

多くの国で使用される文字は ASCII に含まれていないため、現代ブラウザのデフォルト文字セットは ISO-8859-1 です。

完全な ISO-8859-1 リファレンスマニュアル

ウェブページの文字セットを指定するタグ

ウェブページが ISO-8859-1 以外の文字セットを使用する場合、以下のように <meta> タグで指定する必要があります:

<meta charset="UTF-8">

ISO 文字セット

ISO 文字セットは、異なるアルファベットや言語に対して国際標準化機構(ISO)が定義した標準文字セットです。

以下に世界各地で使用されている異なる文字セットを示します:

文字セット 説明 使用範囲
ISO-8859-1 Latin alphabet part 1 北米、西ヨーロッパ、ラテンアメリカ、カリブ海、カナダ、アフリカ
ISO-8859-2 Latin alphabet part 2 東ヨーロッパ
ISO-8859-3 Latin alphabet part 3 SE Europe、エスペラント、その他雑多
ISO-8859-4 Latin alphabet part 4 スカンジナビア/バルト海(ISO-8859-1 に含まれない部分を含む)
ISO-8859-5 Latin/Cyrillic part 5 古代スラブ語のアルファベットを使用する言語、例えばブルガリア語、ベラルーシ語、ロシア語、マケドニア語
ISO-8859-6 Latin/Arabic part 6 アラビア文字を使用する言語
ISO-8859-7 Latin/Greek part 7 現代ギリシャ語、及びギリシャ語由来の数学記号
ISO-8859-8 Latin/Hebrew part 8 ヘブライ語を使用する言語
ISO-8859-9 Latin 5 part 9 トルコ語。トルコの文字がアイスランドの文字を置き換えた以外は、ISO-8859-1 と同じ
ISO-8859-10 Latin 6 ラップランド語、ゲルマン語、エスキモー北欧語
ISO-8859-15 Latin 9 (別名 Latin 0) ISO 8859-1 に類似。ユーロ記号およびその他いくつかの文字があまり使われない記号を置き換えた
ISO-2022-JP Latin/Japanese part 1 日本語
ISO-2022-JP-2 Latin/Japanese part 2 日本語
ISO-2022-KR Latin/Korean part 1 韓国語

Unicode 標準

上記の文字セットには容量制限があり、多言語環境に対応できないため、Unicode コンソーシアムは Unicode 標準を開発しました。

Unicode 標準は、世界中のすべての文字、句読点、および記号をカバーしています。Unicode は、どのようなプラットフォーム、プログラム、または言語でもテキストデータの処理、保存、交換が可能です。

Unicode コンソーシアム

Unicode コンソーシアムは Unicode 標準を開発しました。彼らの目標は、標準の Unicode 変換形式 (UTF) を使用して既存の文字セットを置き換えることです。

Unicode 標準は成功を収めており、XML、Java、ECMAScript (JavaScript)、LDAP、CORBA 3.0、WML で実装されています。多くのオペレーティングシステムおよびすべての現代のブラウザでも、Unicode はサポートされています。

Unicode コンソーシアムは、ISO、W3C、ECMA などの主要な標準化団体と協力しています。

よく使用される Unicode エンコーディング

Unicode はさまざまな文字セットに対応可能です。最もよく使用されるエンコーディングは UTF-8 と UTF-16 です:

文字セット 説明
UTF-8 UTF-8 の文字は 1-4 バイトの長さを持ちます。UTF-8 は Unicode 標準の任意の文字を表現できます。UTF-8 は ASCII と後方互換性があります。UTF-8 はウェブページや電子メールのための推奨エンコーディングです。
UTF-16 16 ビットの Unicode 変換形式は、全ての Unicode 指令表をエンコードできる可変文字エンコードです。UTF-16 は主にオペレーティングシステムや環境で使用されています。例えば、Microsoft の Windows 2000/XP/2003/Vista/CE 及び Java や .NET バイトコード環境などです。

提示

  • 最初の 256 の Unicode 文字セット文字は 256 の ISO-8859-1 文字に対応しています。
  • すべての HTML 4 ブラウザは UTF-8 をサポートしています。すべての XHTML および XML プロセッサは UTF-8 および UTF-16 をサポートしています!

Q&A

なぜ文字セットを指定する必要があるのですか?

ブラウザがウェブページ内の文字を正しく解釈し表示できるようにするためです。特に異なる言語や特殊文字を含むページでは重要です。

UTF-8 と UTF-16 の主な違いは何ですか?

UTF-8 は 1-4 バイトを使用して文字を表現し、ネットワーク伝送や電子メールに適しています。UTF-16 は固定長の 16 ビットエンコーディングで、オペレーティングシステムやアプリケーション環境に適しています。

なぜ現代のウェブページは UTF-8 エンコーディングを多く採用しているのですか?

UTF-8 はすべての Unicode 文字を表現でき、ASCII と後方互換性があり、スペースを節約するため、ウェブページや電子メールの推奨エンコーディング方式となっています。