torutkのブログ

ソフトウェア・エンジニアのブログ

ダウンロードしたJavaSE 6 Documentation(日本語)をIEで開くと真っ白

クローズなネットワーク環境でソフトウェア開発をするため、Java SE 6 DocumentationをダウンロードしてPCに入れて参照しています。普段Firefoxで参照しているので気にしたことはなかったのですが、IE8を使ってダウンロードしたJava SE 6 Documentation(日本語訳)のトップページを開くと、真っ白で何も表示されません。このときIEの[表示]メニュー→[エンコード]を開くと[日本語(シフトJIS)]が選択状態になっています。問題が生じるページはUTF-8です。[エンコード]メニューでUTF-8を指定するとコンテンツが表示されます。

なお、一つ下のAPIドキュメントのファイルは表示されました。

真っ白ページのHTMLソースをIEで表示させると以下になります。

<head>
<META http-equiv="Content-Type" content="text/html; charset=utf8">
<title>JDK 6 繝峨く繝・繝。繝ウ繝・/title>

ネットで検索してよく見かける対策

  • title要素よりMETA要素を先に書く

というのはパスしていますが、それではだめでした。

IEの[表示]メニュー→[エンコード]で、自動選択をクリックすると、表示されるようになります。また、[表示]メニュー→[エンコード]を選択すると、自動選択の前にチェックマークが付くようになります。

推測ですが、この現象からIE8はローカルファイルを開くと

  • METAタグのcharsetは無視し、
  • エンコードの自動選択が指定されてないときはShift JISと決め打ちし、
  • 自動選択が選択していると、IEで判定したエンコーディングとして扱う

という動きのようです。