CSS Validatorでutf-8のエラーが出たら...

ただいま当サイトのデザイン&コーディング真っ最中なのですが、CSSファイルを何度W3C CSS Validatorにかけても行頭の「@charset "UTF-8″;」が『文法解析エラーが発生しました』と警告を受けてしまうので、非常に困っておりました。

保存エンコード形式間違えたかな?と思ったのですが、Dreamweaver(以下DW)で開いてもterapadで開いても秀丸で開いてもちゃんとutf-8になっている...。

何やっても直らないので、google先生に聞いてみました。

やっぱり同じようなことで困っている人はいるものですね。ちぷろぐさんにナイスヒント!(というか答え)がありました。

問題は、「BOM」でした...。
あーなるほど。気づかないわけですよ...。

UTF-8(UTF-16も)にはエンコードが2種類あるわけなんですね。「UTF-8」と「UTF-8N」。
「UTF-8N」「UTF-8」のほうがBOM付きです。
なんというややこしさ。しょぼいテキストエディタでは設定すらできないのですよ。

ちなみにDWには設定がありました。
ファイルを新規保存する際に、一番下に「Unicode Signature(BOM)を含める」というチェックボックスがあるので、通常のBOMを含まない「UTF-8」にしたい場合は、チェックを外して保存です。
もし既に「UTF-8N」になってしまっているようなら、中のソースだけどこかに一時待避して思い切ってファイルを新規作成しましょう。
DWでは既にBOMの付いているファイルは直らないようです。

というわけで、再度バリデータをかけ直したら見事『おめでとうございます! この文書は正当なCSSとして検証できました!』のお言葉を頂けました。
まぁ、こんなことでもないとあんまりnot Validになったりはしないのですけどね。(負け惜しみ)

  • コメント(0)
  • トラックバック(0)
  • Mixi Check
  • はてなブックマーク数 はてなブックマークコメント

Track back

このエントリーのトラックバックURL

Your Comment





Tag Cloud

About

drop

Author:飴(drop)

web技術に関するtipsや主にweb関連のニュースなどをメモ的に記していきます。

このサイトについて

RSS購読