15:26
HTMLの文字コードの指定方法についての不思議
自分が作ってるサイトのページHome - CapoeiraでIEにて文字化けが発生すると言われていました。ちゃんと、HTMLのmetaタグにContentTypeを指定していたにも関わらずです。そこで、調べてみると、HTML Document Representationに載っていました。優先される順に書くと、
- An HTTP "charset" parameter in a "Content-Type" field.
- A META declaration with "http-equiv" set to "Content-Type" and a value set for "charset".
- The charset attribute set on an element that designates an external resource.
となっています。日本語訳から持ってくると、
- HTTPヘッダのContent-Typeフィールドの、charsetパラメータ。
- META要素で、http-equiv属性値がContent-Typeかつvalue属性の値にcharset情報があるもの。
- 外部リソースを指している要素に設定されているcharset属性値。
3番目は何をさしているのはよくわかりませんが、少なくとも1番目と2番目は逆であるべきだと思うのですが、なんでこのような順序になっているのでしょうか?管理者がcharset=euc-jpで設定していても、各HTMLの作成者がUTF-8で書いていれば、そちらを優先すべきだと思うのですが、なにか理由があるのでしょうか。ん〜不思議