23時53分10秒 [Web関連]
スタイルシートの文字コードって普段あまり気にしないんですが、ちょっと気にした方が良さそうだという現象に遭遇しました。(^_^;)
アスキー文字(半角英数とか)しか使ってない場合は、SHIFT-JISだろうがUTF-8だろうが関係ないんですけど、コメントなどで日本語を使っている場合には注意が必要な気がします。
1つのページで1つしか外部スタイルシートを読まないこともありますが、複数のスタイルシートファイルを読ませる場合もよくあります。たとえば、以下のよーな感じで。
このとき、「style1.css」がSHIFT-JISコードで書かれていて、「style2.css」がUTF-8コードで書かれている……とかのよーに、2つのスタイルシートファイルの文字コードが異なる場合、Internet Explorerで正しくスタイルシートが読まれない場合があるようです。
シンプルなスタイルシートを2つ用意して実験してみたところ、何も問題は発生しなかったので(^_^;)、詳しい原因は分からないのですが…。たぶん、スタイルシート中に登場する日本語文字列の種類によって、問題が発生するのだろうと思います。
想像ですが、複数のCSSファイルの文字コードを一致させずに全部のCSSファイルをごっちゃにして解釈するんじゃないですかね?そのとき、ある特定の2バイト文字が、なんかCSSの文法を狂わすような文字に化けてしまって、そこのスタイルがうまく適用されなくなる…とか。
なんか、そんな気がします。
複数のCSSファイルを読ませる場合は、文字コードを一致させておいた方が良さそうです。滅多に発生しない現象かも知れませんが、それだけにもし発生したときに、原因を特定するのがかなり大変だと思います。(^_^;;;
CSSファイルの先頭で、ちゃんと文字コード名を記述すれば良いのかも知れません。(文字コードを合わせることで解決しちゃったので試してませんが…。)
この日記へのコメントはお気軽に! コメント数:0件
コメント数: 0件