Escolhendo o DOCTYPE corretamente
Publicado por Rafael Vergani | em Web Standards | Data 31 Dec 2009
Tags: doctype, html, Web Standards
0
Em tempos de Web Standards, muitos desenvolvedores web esquecem de declarar o Doctype corretamente ou usam o Doctype padrão sugerido pelo editor preferido.
O que é um Doctype?
Segundo as especificações do W3C, o Doctype é responsável por informar ao navegador qual é a versão HTML ou XHTML que está sendo usada no site.
Existem vários tipo de HTML, cada um com suas regras de sintaxe.
Se você não declarar o Doctype do seu arquivo (x)HTML, o navegador do usuário vai tentar “adivinhar” qual é o Doctype, se ele errar, o seu site será renderizado incorretamente e vai ser exibido de forma defeituosa na tela do navegador. E isso é inadmissível.
O Doctype deve ser declarado logo no início do arquivo, antes da tag <html>.
Tipos de Doctype
HTML 4.01 Strict:
<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01//EN”
“http://www.w3.org/TR/html4/strict.dtd”>
HMTL 4.01 Transitional:
<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>
HTML 4.01 Frameset:
<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN”
“http://www.w3.org/TR/html4/frameset.dtd”>
XHTML 1.0 Strict:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
XHTML 1.0 Transitional:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
XHTML 1.0 Frameset:
<!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”>
Qual Doctype escolher?
A primeira escolha é entre HTML e XHTML. Esta questão é complicado pois envolve dezenas de ideologias confusas, então deixaremos essa parte pra outra hora. Na dúvida escolha HTML.
Strict
Escolhendo o DOCTYPE Strict significa que o seu código está seguindo todos os padrões web, sem nenhum erro de validação, sem tags ou atributos como <font>, <body bgcolor=”red”>, etc. Declarações deste tipo devem ficar no arquivo CSS.
Transitional
Com o Transitional você pode cometer alguns erros e usar tags de atributos e declarações. É uma transição entre a forma antiga (incorreta) de escrever e a nova(correta).
Frameset
Utilizada por desenvolvedores que insistem em utilizar frames em seus projetos. Frames são horríveis tanto para usuários, que não conseguem salvar suas páginas nos favoritos corretamente, quanto para os mecanismos de busca, que não vão indexar direito suas páginas.
Conclusão
Sem dúvida nenhuma a melhor opção é o Doctype Strict.
Se por um motivo ou outro você ainda usa Transitional ou Frameset, por favor melhore seu código e torne-se um Strict.
Inspiração: Choosing the Best Doctype for your Website
Rafael Vergani

