CSS スタイルを使用する Web ページがインターネット エクスプローラーで正しく表示されない

警告

廃止され、サポート対象外となった Internet Explorer 11 デスクトップ アプリケーションは、特定のバージョンの Windows 10 で Microsoft Edge の更新プログラムを通じて完全に無効になります。 詳細については、「Internet Explorer 11 デスクトップ アプリの廃止に関する FAQ」をご覧ください。

この記事では、CSS スタイル Web ページがインターネット エクスプローラーで正しく表示されない問題を説明する手順について説明します。

元の製品バージョン:インターネット エクスプローラー
元の KB 番号: 262161

現象

Web ページのスタイルが見つからないか、インターネット エクスプローラーでページが読み込まれたときに正しく表示されません。

注:

この問題は、Web ページがインライン スタイル シートを使用しているか、カスケード スタイル シートを指しているかに関係なく発生する可能性があります。

次のエラー メッセージが表示される場合もあります。

探しているページが移動されたか、名前が変更されている可能性があります。

原因

この問題は、インターネット エクスプローラーで次の条件が満たされているために発生します。

  • 最初の 31 スタイル タグの後のすべてのスタイル タグは適用されません。
  • 最初の 4,095 ルール以降のすべてのスタイル ルールは適用されません。
  • ルールを使用して他の @import スタイル シートをインポートする外部スタイル シートを継続的にインポートするページでは、深さ 3 つ以上のスタイル シートは無視されます。

詳細

ネットワーク モニター ツールは、インターネット エクスプローラーが問題が発生しているページを受信しているときに TCP リセットが発生することを示している可能性があります。 元の要求が POST 要求であった場合、インターネット エクスプローラーは別の POST 要求を生成します。 または、インターネット エクスプローラーは代わりに GET 要求を送信できます。

このスタイル タグの制限は、.xsl ファイルを使用した .xml ファイルの表示にも影響する可能性があります。 .xsl ファイルにスタイル タグがドキュメント内に埋め込まれている場合、.xml ファイルを表示しようとすると、次のエラー メッセージが表示されます。

インターネット エクスプローラーインターネット サイトを開くことができませんでした。
file://c:\aaa.xml

[OK] をクリックすると、次のエラー メッセージが表示されます。

ページを表示できない

「問題を再現する手順」セクションで提供されているコード サンプルでは、スタイル シートが動的に作成され、次のエラー メッセージが生成されます。

ランタイム エラーが発生しました。
デバッグしますか?

行: 8
エラー: 引数が無効です。

スタイル シートが動的に適用されず、代わりにスタイル> タグまたは.css ファイルを介して<適用されている場合、無効な引数エラー メッセージは生成されません。 この場合、31 番目のスタイル シートの後のすべてのスタイル シートは無視されます。

問題の再現手順

次のコード サンプルを HTML ページに貼り付けます。 コード サンプルを実行します。 31 番目のスタイル タグが適用された後にエラーが生成されます。

<html>
    <head>
        <script>
            function fnCreateStyleSheets() {
                for (i = 1; i <= 32; i++) {
                    document.createStyleSheet()
                    StyleSheetCount.innerText = "Total Style Sheets = " + i
                }
            }
        </script>
    </head>
    <body onLoad="fnCreateStyleSheets()">
        <div id="StyleSheetCount"></div>
    </body>
</html>

関連情報

詳細については、次の Microsoft Developer Network (MSDN) Web サイトを参照してください。