Pergunta

Muitas vezes vemos <!DOCTYPE ...> da seguinte forma:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

O que é a funcionalidade do !DOCTYPE?

Foi útil?

Solução

A utilização mais significativa das DOCTYPE é mudar um navegador entre Quirks Mode e Modo de Padrões tornando .

Esta funcionalidade surgiu por causa da tradução "quebrado" em versões antigas do IE. Percebeu-se que se a Microsoft apenas "fixa" o IE lotes motor de renderização de sites existentes não processar corretamente. Assim, o modo como funciona é se você colocar qualquer declaração DOCTYPE válida em tudo na sua página o pressuposto é que você sabe o que está fazendo e seu navegador irá processar de uma forma compatível com padrões, e se você não colocar um em que irá processar no antigo caminho "errado".

Esta foi originalmente feito em IE para o Mac, mas este comportamento é o mesmo em todas as versões do IE desde IE5, e Firefox, Chrome, Safari e Opera.

O que o DOCTYPE é deveria para ser um Tipo de Documento Definição . HTML é subconjunto de SGML (como é XML). O DTD diz um analisador que sintaxe que você estiver usando. Assim, em uma página web o seu DOCTYPE deve coincidir com a versão do HTML que você está usando.

Outras dicas

Ele diz ao validador qual versão do HTML que você está usando. Um navegador usar esta informação para processar a página corretamente.

Aqui estão versão correta do DOCTYPE:

  • HTML 4.01 Strict, Transitional, Frameset

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    
  • XHTML 1.0 Strict, Transitional, Frameset

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    
  • XHTML 1.1

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    
  • HTML5

    <!DOCTYPE html>
    

Ele informa ao navegador qual versão do HTML ele está carregando fazendo o tempo de carga um pouco mais rápido que o navegador sabe o que esperar.

O doctype é um padrão definido pelo W3C - quando você ouve sobre os padrões de desenvolvimento web baseada isso é o que eles estão falando. A idéia de usar o doctype é você criar HTML válido que segue o doctype.

Se você é inteligente você pode realmente escrever seu próprio tipo de documento.

A principal (prático) propósito de DOCTYPEs é forçar IE de "modo peculiaridades" para o "modo compatível com os padrões", ambos euphemisms para "Modo terrivelmente quebrado" e "o modo ligeiramente quebrado" (respectivamente).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top