さて、何かがおかしくなりました。中国が私の iepage の私のテスト用 style.css ファイルから始めようとしない限り、彼らは IE を嫌って右足で始めていると思いますが、とにかく。スタイルシートなしで読み込まれます - 悲しい :( Web インスペクタにアクセスすると、リンクされたすべてのファイルが [おそらく] 漢字 (瑨汭笠ऊ楷瑤...) で埋め尽くされていることがわかります。サーバー上のファイルを削除しようとしましたが、再アップロード. ローカル ファイルは問題ないように見えます.ファイルを直接ロードすると問題なく見えます.レンダリングなどを変更する必要があることは何もしていません.
3 に答える
それでわかったと思います。これは奇妙です。とにかく。
あなたの HTML をコピーしてローカル ファイルに貼り付けて実験しました。そして、それはうまくロードされました。UTF-8で保存しました。それから UTF-16 に変更したところ、まさにあなたが見ているものを手に入れることができました! わかる限り、ブラウザー (私にとっては Firefox for Linux) は、リンクされたファイルがすべて HTML と同じエンコーディングであると想定しています...
したがって、サーバー上のファイルはUTF-16であると想定しており、UTF-8に変更すれば問題ありません。それが修正されることを願っています!
PS: Firebug によると、明示的に指定していなくても、 HTMLはサーバーによって圧縮されます。しかし、ありがたいことに、それは問題を引き起こしているようには見えません。
iFrame に埋め込まれた PowerShell からエクスポートされた XML ファイルでも、同じ問題が発生しました。
IE10/11やEdgeでは問題ありませんでしたが、FirefoxやChromeではスタイルシートが読み込まれませんでした。
iFrame をロードする元のページは、スタイルシートと同じように UTF8 でエンコードされていました。ただし、XML ファイルは UTF16LE (PowerShell では「Unicode」) にエクスポートされました。XML ファイルが iFrame から読み込まれると、スタイルシートが漢字として読み込まれました。
PowerShellでエンコーディングを変換しました...
Get-Content C:\foldername\file.html -Encoding Unicode | Set-Content -Encoding UTF8 C:\foldername\file.html
...そしてうまくいきました!私の推測では、IE はすべてのファイルのエンコーディングを親と同じように処理する必要があります。これは、UTF16LE でエンコードされたファイルが UTF8 としてレンダリングされたことを意味します。Chrome と Firefox は明らかにそれを行いません。
私を正しい道に導いてくれたザビエル・ホルトに感謝します!