Guia de referência para os famosos erros de renderização e peculiaridades de JavaScript encontrados na manutenção de sites legados do Internet Explorer (IE8).
Peculiaridades conhecidas do IE8 e soluções
1. Eventos change em controles Radio e Checkbox
No IE8, o evento change em <input type="checkbox"> e <input type="radio"> não dispara imediatamente ao clicar; ele só dispara após perder o foco.
- Solução alternativa: Escute o evento
clickem vez dechangepara atualizações imediatas de estado.
2. Elementos <label> clicáveis envolvendo inputs
No IE8, clicar em um <label> que envolve um campo <input> falha ao alternar ou focar o controle interno.
- Solução alternativa: Dê a cada input um
id="..."único e associe-o explicitamente com<label for="...">.
3. Herança de opacidade em descendentes posicionados
Definir filter: alpha(opacity=50); em um elemento pai não se propaga para filhos com position: relative ou position: absolute.
- Solução alternativa: Aplique a regra de filtro de opacidade diretamente nos descendentes posicionados.
4. Peculiaridades do gatilho hasLayout (IE6 / IE7)
Muitos defeitos de layout (conteúdo desaparecendo, colapso do box model) no IE6/7 ocorriam quando um elemento não tinha dimensões internas de layout.
- Correção: Ative o
hasLayoutusandozoom: 1;no CSS.