Modos HTML e "peculiaridades" vs. "conformidade com padrões": explique e diga por que devemos nos importar?

16

Qual é a diferença entre o modo "peculiaridades" e o modo "conformidade com padrões" ao criar páginas da Web em HTML?

Como saber ao operar em um modo versus o outro? Por que as pessoas - ou seja, webmasters, web designers e desenvolvedores - se preocupam em escolher o modo de conformidade com os padrões em vez do modo quirks?

O modo quirks é sempre justificável ao desenvolver novo conteúdo?

Chris W. Rea
fonte

Respostas:

11

Aqui está provavelmente o melhor artigo sobre o modo quirks que eu encontrei. Pessoalmente, tento sempre usar o modo padrão sempre que possível, pois ele tem as melhores chances de funcionar com a maioria dos navegadores.

txwikinger
fonte
5

Se você desenvolver no modo quirks, estará solicitando efetivamente ao navegador que imite os erros anteriores ao IE6. Isso é realmente algo que você quer fazer?

A Wikipedia explica os conceitos básicos do modo de ativar peculiaridades, mas há vários casos especiais que não são abordados. O link fornecido pelo txwikinger fornece uma boa explicação da história e das principais diferenças.

Jukka Korpela explica as diferenças em mais detalhes e também como verificar o modo de compatibilidade:

Verificando o modo Para verificar em qual modo (Quirks x Padrões) um navegador está,

No Firefox, use o comando Visualizar / Informações da Página (e veja o painel Geral); ou se você tiver a extensão Web Developer, basta verificar um ícone na barra de ferramentas (terceiro ícone à direita).

Para o IE, digite javascript: alert (document.compatMode) na barra de endereço e verifique se a janela pop-up diz CSS1Compat (indicando o modo Standards) ou BackCompat (indicando o Quirks Mode); Como alternativa, faça o download e instale o Bookmarklet simples do Quirks ou Standards Mode.

Vale a pena notar que muitos navegadores têm dois modos diferentes do modo quirks - quase modo padrão e modo padrão. Infelizmente, o IE6 e o ​​IE7 são executados apenas no modo quase padrão; portanto, se você precisar oferecer suporte a esses navegadores, é tentador tentar usar o modo quase padrão em todos os navegadores . No entanto, é provavelmente melhor desenvolver-se de acordo com os padrões e tentar corrigir as peculiaridades do navegador. O HTML5 oferecerá apenas o modo estrito; portanto, você deve tentar desenvolver isso para compatibilidade futura.

Casebash
fonte
2

Descobri que, se você estiver usando redefinições ou estruturas de CSS, se não incluir o doctype para alternar os navegadores afetados (geralmente IE7 e IE8) para o Modo Standards, muitas coisas posicionais começarão a dar errado. É quase sempre melhor definir a declaração de tipo de documento e usar o Modo de Padrões.

Mark Hatton
fonte
1

O modo Quirks é onde um navegador não processa as páginas conforme o esperado pela especificação HTML. Em um ponto, navegadores web ganhou o que é essencialmente um interruptor - a inclusão de um tipo de documento no topo de uma página. Na ausência desse tipo de documento, o navegador entra no modo peculiar. A presença de um tipo de documento válido força o navegador ao modo padrão, o modo "correto".

É preferível usar o modo de padrões - portanto, use um doctype! - para avançar, pois isso garante que suas páginas funcionem correta e consistentemente no maior número possível de navegadores.

Grant Palin
fonte
1

O Modo Quirks faz com que o IE 6 e 7 processem CSS de maneira diferente do que os padrões dizem que deveriam.

O modo Standards torna o IE 6 e 7 renderizar CSS mais próximo dos padrões do que o Quirks Mode e, portanto, mais próximo de como o Firefox, Safari, Chrome, Opera e IE 8/9 o tornam.

Usar o modo de padrões significa que você tem menos problemas antigos e estranhos do IE em mente quando tenta fazer uma página em pânico funcionar. Isso significa que você pode usar livros como CSS: The Definitive Guide, de Eric Meyer, para pesquisar o que sua página deveria estar fazendo. O Modo Quirks do IE não possui o mesmo tipo de documentação abrangente.

Paul D. Waite
fonte
1

É a escolha entre:

  • Mecanismo IE5 (ou emulação bug por bug)
  • Algo mais moderno (melhor esforço em não-IE, longa história no IE8 ...)

Se você gosta de escrever CSS como se fosse 1999, sem centralizar o trabalho corretamente, use peculiaridades.

Kornel
fonte