Modo quirks no IE 6 e no IE 7

Rodar o IE 7 em “modo quirks” é uma opção para aqueles desenvolvedores que desejam igualar o modo de renderização e equalizar o controle do seu documento para todas as versões do IE, colocando todas elas naquele modo antigo de renderizar e fazendo com que todos os demais navegadores rodem em “modo complacente com as standards”. Esta é provvavelmente uma opção a que poucos farão uso, mas está documentada para efeitos de complementar este trabalho.

De acordo com o time de desenvolvedores do IE 7 (IE blog), ele terá um comportamento idêntico ao IE 6 quando rodar em modo quirks, para fins de retro compatibilidade. Nós não testamos este modo de renderização exaustivamente.

Como ativar o modo quirks

Alguns doctypes (Sivonen; Gutfeldt; Bergevin) ou a inclusão da declaração <xml> ativam o “modo quirks”, também chamado de modo de retro compatibilidade, no IE 6. Neste caso o IE 6 comporta-se como o IE 5.5, e apresenta os mesmos bugs, problemas e comportamentos do seu irmão mais antigo.

No IE 7, a declaração <xml> não mais altera o modo de renderização (Campbell). Autores que desejam todas as versões do IE inclusive a versão IE7 rodando em modo quirks (sem afetar os demais navegadores), não mais poderão contar com a adição da declaração <xml> para conseguir este objetivo. Contudo, inserindo um comentário antes do doctype (mas, depois da declaração <xml>) ativará o modo quirks no IE7, conforme mostrado a seguir:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- ... um comentário inserido aqui, leva o IE7 para o modo quirks -->
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

O modo quirks pode ainda ser ativado quando a codificação do documento for em HTML 4.01, pela inserção de um comentário antes da DTD e isto colocará em modo de retro compatibilidade tanto o IE 6 como o IE 7.

  1. <!-- comentário para modo quirks no IE6 e IE7 -->
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "https://www.w3.org/TR/html4/strict.dtd">

Verificando o modo de renderização

Algumas vezes não é óbvio o modo de renderização que se encontra um navegador. Para o IE digite na barra de endereços do navegador o seguinte :

  1. javascript:alert(document.compatMode)

Você pode adicionar aos seus favoritos no IE um link que quando clicado mostra o modo de renderização em que se encontra o navegador. O link é este: QorS Mode. Para adicionar aos seus favoritos, clique com o botão direito do mouse sobre o link e no menu que se abre escolha adicionar aos favoritos.

Referências

Markus Mielke:
Call to action: The demise of CSS hacks and broken pages
Henri Sivonen:
Activating the Right Layout Mode Using the Doctype Declaration
Matthias Gutfeldt:
Doctypes and their respective layout mode
Holly Bergevin:
Rendering Mode and Doctype Switching
Alastair Campbell:
Internet Explorer 7 doctype behaviour

Este capítulo sobre o modo quirks faz parte do artigo O conceito haslayout do IE .

Criado em:
2005-08-15
Atualizado em:
2006-04-15
Editores:
Holly Bergevin
Ingo Chao
Bruno Fassino
John Gallant
Georg Sørtun
Philippe Wittenbergh
Contatos:
spam.layout@satzansatz.de
Copyright:
Trabalho publicado sobre diretrizes da Creative Commons license.