Strona sieci Web używająca stylów CSS nie jest poprawnie renderowana w programie Internet Explorer

Ostrzeżenie

Wycofana, nieobsługiwana aplikacja klasyczna Internet Explorer 11 ma zostać trwale wyłączona za pośrednictwem aktualizacji aplikacji Microsoft Edge dla niektórych wersji systemu Windows 10. Aby uzyskać więcej informacji, zobacz artykuł pt. Często zadawane pytania dotyczące wycofywania aplikacji klasycznej Internet Explorer 11.

Ten artykuł zawiera kroki ułatwiające opisanie problemu polegającego na tym, że strona sieci Web stylów CSS nie jest poprawnie renderowana w programie Internet Explorer.

Oryginalna wersja produktu: Internet Explorer
Oryginalny numer KB: 262161

Symptomy

Brak stylów na stronie internetowej lub wyglądają niepoprawnie podczas ładowania strony w programie Internet Explorer.

Uwaga

Ten problem może wystąpić, jeśli strona internetowa używa wbudowanego arkusza stylów lub wskazuje kaskadowy arkusz stylów.

Może również zostać wyświetlony następujący komunikat o błędzie:

Strona, którą szukasz, mogła zostać przeniesiona lub jej nazwa została zmieniona.

Przyczyna

Ten problem występuje, ponieważ w programie Internet Explorer są spełnione następujące warunki:

  • Wszystkie tagi stylu po pierwszych 31 tagach stylu nie są stosowane.
  • Wszystkie reguły stylu po pierwszych 4095 regułach nie są stosowane.
  • Na stronach, które używają reguły do ciągłego @import importowania zewnętrznych arkuszy stylów, które importują inne arkusze stylów, arkusze stylów, które mają więcej niż trzy poziomy głębokości, są ignorowane.

Więcej informacji

Narzędzie do monitorowania sieci może wskazywać, że resetowanie protokołu TCP występuje, gdy program Internet Explorer odbiera stronę, na którą występuje problem. Następnie program Internet Explorer generuje kolejne żądanie POST, jeśli oryginalne żądanie było żądaniem POST. Program Internet Explorer może również wysłać żądanie GET.

To ograniczenie tagu stylu może również wpływać na wyświetlanie plików .xml przy użyciu plików xsl. Gdy plik xsl zawiera tagi stylu osadzone w dokumencie, podczas próby wyświetlenia pliku .xml zostanie wyświetlony następujący komunikat o błędzie:

Program Internet Explorer nie może otworzyć witryny internetowej:
file://c:\aaa.xml

Po kliknięciu przycisku OK zostanie wyświetlony następujący komunikat o błędzie:

Nie można wyświetlić strony

Przykładowy kod podany w sekcji Kroki odtwarzania problemu dynamicznie tworzy arkusze stylów i generuje następujący komunikat o błędzie:

Wystąpił błąd środowiska uruchomieniowego.
Czy chcesz debugować?

Linia: 8
Błąd: Nieprawidłowy argument.

Jeśli arkusze stylów nie są stosowane dynamicznie, ale zamiast tego są stosowane za pomocą <tagów stylów> lub plików .css, komunikat o błędzie Nieprawidłowy argument nie jest generowany. W tym przypadku wszystkie arkusze stylów po trzydziestu pierwszych arkuszach stylów są ignorowane.

Kroki prowadzące do odtworzenia problemu

Wklej poniższy przykład kodu na stronie HTML. Uruchom przykład kodu. Po zastosowaniu tagu trzydziestu pierwszych stylów jest generowany błąd.

<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>

Informacje

Aby uzyskać więcej informacji, zobacz następujące witryny sieci Microsoft Developer Network (MSDN):