Kurzreferenz

Legacy Internet Explorer Bugs Spickzettel (Archiv)

Historisches Nachschlagewerk für berüchtigte Bugs in IE8 und älter: fehlende change-Events, Label-Fokusprobleme, hasLayout-Eigenheiten und Opacity-Vererbungsfehler.

· Veröffentlicht

Ein Nachschlagewerk für historisch berüchtigte Rendering-Fehler und JavaScript-Eigenheiten bei der Wartung von Legacy-Internet-Explorer-Websites (IE8).

Bekannte IE8-Eigenheiten & Workarounds

1. change-Events bei Radio- & Checkbox-Steuerelementen

Im IE8 wird das change-Event bei <input type="checkbox"> und <input type="radio"> nicht sofort beim Klicken ausgelöst, sondern erst nach dem Fokusverlust.

  • Workaround: Hören Sie bei Radio- und Checkbox-Inputs auf click statt auf change, um sofortige Zustandsaktualisierungen zu erhalten.

2. Klickbare <label>-Elemente um Eingabefelder

Im IE8 schlägt das Klicken auf ein <label>, das ein Eingabefeld umschließt, beim Umschalten oder Fokussieren des inneren Steuerelements fehl.

  • Workaround: Geben Sie jedem Input eine eindeutige id="..." und verknüpfen Sie es explizit mit <label for="...">.

3. Opacity-Vererbung bei positionierten Kindelementen

Das Setzen von filter: alpha(opacity=50); auf einem Elternelement wird nicht auf Kindelemente mit position: relative oder position: absolute vererbt.

  • Workaround: Wenden Sie die Opacity-Filterregel direkt auf positionierte Kindelemente an.

4. hasLayout-Trigger-Eigenheiten (IE6 / IE7)

Viele Layout-Fehler (verschwindende Inhalte, Box-Model-Zusammenbrüche) im IE6/7 traten auf, wenn einem Element interne Layout-Dimensionen fehlten.

  • Lösung: Aktivieren Sie hasLayout mittels zoom: 1; im CSS.

Referenzen

Verwandte Themen