HTML文字セット
HTMLページを正しく表示するには、ブラウザは使用する文字セット(エンコーディング)を知っている必要があります。
例
<meta charset="UTF-8">
HTML文字セット
HTML5仕様は、Web開発者がUTF-8文字セットを使用することを推奨しています。
これは常にそうであるとは限りません。初期のWebの文字エンコードはASCIIでした。
その後、HTML2.0からHTML4.01まで、ISO-8859-1が標準の文字セットと見なされました。
XMLとHTML5により、UTF-8がついに登場し、多くの文字エンコードの問題を解決しました。
はじめに:ASCII
コンピュータデータは、電子機器にバイナリコード(01000101)として保存されます。
テキストの保存を標準化するために、情報交換のための米国標準コード(ASCII)が作成されました。0〜9の数字、大文字と小文字のアルファベット(az、AZ)、および!のような特殊文字をサポートするために、格納可能な文字ごとに一意の2進数を定義しました。$ +-()@ <> 、。
ASCIIは文字に7ビットを使用したため、128の異なる文字しか表現できませんでした。
ASCIIの最大の弱点は、英語以外の文字を除外することでした。
ASCIIは、特に大規模なメインフレームコンピュータシステムで現在も使用されています。
詳細については、完全なASCIIリファレンスをご覧ください。
Windowsの場合:Windows-1252
Windows-1252は、Windows95までのWindowsのデフォルトの文字セットでした。
これはASCIIの拡張であり、国際文字が追加されています。
フルバイト(8ビット)を使用して256の異なる文字を表します。
Windows-1252はWindowsのデフォルトであるため、すべてのブラウザでサポートされています。
詳細については、「完全なWindows-1252リファレンス」を参照してください。
HTML 4の場合:ISO-8859-1
HTML4で最も頻繁に使用される文字セットはISO-8859-1でした。
ISO-8859-1はASCIIの拡張であり、国際文字が追加されています。
例
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
HTML 4では、ISO-8859-1とは異なる文字セットを<meta>タグで指定できます。
例
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-8">
すべてのHTML4プロセッサはUTF-8もサポートしています。
例
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
ブラウザがISO-8859-1を検出すると、Windows-1252にはさらに32文字の国際文字があるため、通常はデフォルトでWindows-1252になります。
詳細については、以下を参照してください:完全なISO-8859-1リファレンス
HTML5の場合:Unicode UTF-8
HTML5仕様は、Web開発者がUTF-8文字セットを使用することを推奨しています。
例
<meta charset="UTF-8">
<meta>タグでは、UTF-8とは異なる文字セットを指定できます。
例
<meta charset="ISO-8859-1">
ユニコードコンソーシアムは、ISO-8859文字セットが制限されており、多言語環境と互換性がないため、UTF-8およびUTF-16標準を開発しました。
Unicode標準は、(ほぼ)世界中のすべての文字、句読点、および記号を対象としています。
すべてのHTML5およびXMLプロセッサは、UTF-8、UTF-16、Windows-1252、およびISO-8859をサポートしています。
詳細については、「完全なUnicodeリファレンス」を参照してください。