Udostępnij za pośrednictwem


Program Internet Explorer 9 lub nowsza wersja może wygenerować nieprawidłowy kod HTML w trybie projektowania

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 obejście problemu z nieprawidłowym kodem HTML utworzonym przez program Internet Explorer 9 lub nowszą wersję w trybie projektowania.

Oryginalna wersja produktu: Internet Explorer 9 i nowsze wersje
Oryginalny numer KB: 2667114

Symptomy

Użytkownik ładuje następujący kod w programie Internet Explorer 9 lub nowszej wersji i renderuje go w trybie standardów programu Internet Explorer 9:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <title>HR</title>
    </head>
    <body contentEditable="true" onload="document.body.focus()">
        <hr>
    </body>
</html>

W tym scenariuszu istnieje możliwość, że tekst wpisany w elemencie edytowalnym jest zawarty w elemencie <hr>, co jest nieprawidłowe. Problem może wystąpić w następujących okolicznościach:

  • Kliknięcie myszy nie jest wykonywane w edytowalnym elemencie, który otrzymuje focus.
  • Jeśli tekst jest wpisywany po elemencie <hr>, można wpisać tekst wewnątrz elementu <hr> poprzez umieszczenie kursora za pomocą klawiszy strzałek.

Rozwiązanie

Aby obejść ten problem, użyj jednej z następujących opcji:

  1. Przed rozpoczęciem pisania kliknij myszą wewnątrz elementu.
  2. Umieść inny element, taki jak <div> lub <span>, bezpośrednio przed elementem <hr>.
  3. Renderuj stronę przy użyciu innego trybu dokumentu oprócz trybu standardów programu Internet Explorer 9 lub nowszego.