文字コードがUTF-8だとフォント指定が無視される
仕事でWebサイトの編集作業をしていて、つまづいた。
CSSファイルやhtmlファイルのどこにもフォント指定がないのに、なんで英数字だけセリフ付きフォントなのか?WindowsでIEなら普通はMS P ゴシックになるはずだが・・・。
いろいろとググッてみて原因解明。文字のエンコードがUTF-8が原因だった。
CSSのfont-family:ヒラギノとMS Pゴシックとメイリオの悩ましい関係 : webデザイナーのナナメガキから引用
まず、font-familyを何も指定しないと、だいたいのブラウザではデフォルトで設定されているフォントで表示されるのだが、文字コードがUTF-8だとWindowsのIE6で英数文字が「Times New Roman」になってしまう。※文字コードがShift_JISやEUC-JPの場合はデフォルトのフォントで表示される。
以前に別の人が編集していたファイルだったので、ちゃんと確認していなかったのですぐに気が付かなかった。おそらく理由があってUTF-8にしていたと思うのだが、特に問題もなさそうだったので、Shift-JISに変更。変更する際に「特定の記号なんかが文字化けするかもしれないぜ!」とアラートが出で一瞬ためらったが、そのままポチっと変換。
文字化けしてないか調べるのは後回しにして、一応フォント指定の問題はひとまず解決。
[Link]