#
“http-equiv="content-type"”
“http-equiv="content-type"”が指定された“meta”要素は文書の文字エンコーディングを指定します。
文書が“iframe”要素の“srcdoc”属性に記述された文書ではなく、BOMで始まらず、HTTPヘッダーの“Content-Type”で文字エンコーディングが明示されていない場合は“meta”要素で文字エンコーディングを指定する必要があります。
ここで指定する文字エンコーディングは実際に文書を保存した時に選択した文字エンコーディングと一致する必要があります。不一致の場合はブラウザで表示した時に文字化けしたり、セキュリティーホールになる可能性もあります。
現行の仕様ではHTML文書の文字エンコーディングはUTF-8(“utf-8”)であるべきとされます。
文字エンコーディングを指定する“meta”要素は文書の最初から1024バイト以内に配置しなければなりません。
“charset”属性を指定した“meta”要素でも文字エンコーディングの指定ができますが、文字エンコーディングを指定する“meta”要素を一つの文書に複数配置することはできません。
サンプルコード
#
属性と値
属性 | 値 | ||
---|---|---|---|
属性 | 説明 | 値 | 説明 |
必須属性 | |||
http-equiv="" | プラグマディレクティブの定義 | content-type | 文書の文字エンコーディング |
content="" | 文書の文字エンコーディング | text/html; charset=utf8 | UTF-8 |
任意属性 | |||
グローバル属性 |
“charset”属性の値は文書のMIMEタイプ(“text/html”)の後にセミコロン(“;”)、任意の数の空白文字を挟んでエンコーディング名(“utf-8”)を記述します。
#