Een naslagwerk voor historisch beruchte weergavefouten en JavaScript-eigenaardigheden bij het onderhouden van oude Internet Explorer (IE8)-websites.
Bekende IE8-eigenaardigheden & Oplossingen
1. change-events op Radio- & Checkbox-besturingselementen
In IE8 wordt het change-event op <input type="checkbox"> en <input type="radio"> niet direct bij een klik afgevuurd, maar pas wanneer de focus verdwijnt.
- Oplossing: Luister naar het
click-event in plaats vanchangevoor directe statusupdates.
2. Klikbare <label>-elementen rondom invoervelden
In IE8 werkt het klikken op een <label> dat een invoerveld omsluit niet om het binnenste element te schakelen of te focussen.
- Oplossing: Geef elke input een uniek
id="..."en koppel deze expliciet via<label for="...">.
3. Opacity-overerving op gepositioneerde nakomelingen
Het instellen van filter: alpha(opacity=50); op een ouderelement wordt niet overgeërfd door kindelementen met position: relative of position: absolute.
- Oplossing: Pas de opacity-filterregel rechtstreeks toe op gepositioneerde kindelementen.
4. hasLayout-triggereigenaardigheden (IE6 / IE7)
Veel lay-outfouten (verdwijnende inhoud, instortend box-model) in IE6/7 traden op wanneer een element interne lay-outafmetingen miste.
- Oplossing: Activeer
hasLayoutmetzoom: 1;in CSS.