Riferimento rapido

Cheatsheet Bug Storici di Internet Explorer (Archivio)

Guida storica ai bug noti di IE8 e precedenti: eventi change mancanti, errori di focus su label, anomalie hasLayout ed ereditarietà dell’opacità.

· Pubblicato

Guida di riferimento ai celebri bug di rendering e anomalie JavaScript incontrati mantenendo siti legacy per Internet Explorer (IE8).

Anomalie note di IE8 e soluzioni

1. Eventi change su controlli Radio e Checkbox

In IE8, l’evento change su <input type="checkbox"> e <input type="radio"> non scatta immediatamente al clic, ma solo alla perdita del focus.

  • Soluzione: Ascolta l’evento click invece di change per aggiornamenti immediati di stato.

2. Elementi <label> cliccabili che racchiudono input

In IE8, fare clic su una <label> che contiene un input non seleziona né attiva il controllo interno.

  • Soluzione: Assegna a ogni input un id="..." univoco e collegalo esplicitamente con <label for="...">.

3. Ereditarietà dell’opacità su discendenti posizionati

Impostare filter: alpha(opacity=50); su un elemento padre non si propaga ai figli con position: relative o position: absolute.

  • Soluzione: Applica la regola del filtro di opacità direttamente agli elementi figli posizionati.

4. Anomalie di attivazione hasLayout (IE6 / IE7)

Molti difetti di layout (contenuto che scompare, collassi del box-model) in IE6/7 avvenivano quando un elemento mancava di dimensioni interne di layout.

  • Soluzione: Attiva hasLayout usando zoom: 1; nel CSS.

Riferimenti

Argomenti correlati