Web標準普及プロジェクト

文字コード宣言は行いましょう(CSS)

注意:文字コード宣言を何故行うべきなのか、 ということについては「文字コード宣言は行いましょう(HTML)」を参照してください。

CSSファイルで日本語というとピンと来ない人もいるかと思いますが、font-familyや、content等、 日本語を用いる可能性のあるプロパティも存在しています。 また、CSSファイル内にコメントを記述する場合は多くの人が日本語を使用すると思います。

日本語のプロパティ値を使う場合には文字コード宣言が無いとMozillaはそのプロパティの値を誤って解釈し、思い通りの表示にならないかもしれません。 また、コメント中の日本語が原因で最悪、そのCSSファイル内の指定が全て無効になってしまうかもしれません。 CSSファイルでもできる限り文字コードを宣言するようにしましょう。

CSSファイルでの文字コード宣言の仕方

CSSファイルでの文字コード宣言は次の様に行います。

ISO-2022-JP(いわゆるJIS)
@charset "iso-2022-jp";
Shift_JIS(WindowsやMacではこの文字コードがよく使われます)
@charset "shift_jis";
EUC-JP(UNIX系OSではこの文字コードがよく使われます)
@charset "euc-jp";

またこの文字コード宣言場所は必ずファイルの先頭で行う必要があり、 この前にいかなる文字の出現も認められていません。 ですから、たとえASCII文字のみであったとしても以下のような記述をしてはいけません。

/* charset */
@charset "iso-2022-jp";

なお、この文字コード宣言はHTMLファイル内のstyle要素内では宣言の必要がありません。 何故ならそのHTMLファイルはHTMLでの文字コード宣言を使って処理されるためです。