O que é?

O doctype é a maneira de você dizer para qualquer navegador como ele deve agir ao ler seu código HTML.

Uma estórinha…

Certa vez Joãozinho, programador web experiente e usuário de firefox, programou seu site vendo-o apenas no firefox. Ele já esperava que quando fosse abrir pelo Internet Explorer fosse acontecer alguns problemas de layout, normal, porém o que ele viu deixou-o perplexo… Seu site, todo seu trabalho de dias e horas estava totalmente quebrado. Xingou a Microsoft por seu software. Resolveu abrir no Opera, no Safari, no Google Chrome, e… Tudo estranho. Joãozinho ficou desesperado, arrancando seus cabelos, mas como programador experiente que é, parou. Saiu, se acalmou e foi avaliar seu código. Seu primeiro passo foi validar seu código via W3C e para sua surpresa, o erro era simples, faltava o DOCTYPE.

Moral da estória… preste atenção no que você faz!

Por que a falta do DOCTYPE no site do João zinho causou tantos problemas?

Porque cada browser tem um padrão próprio de renderizar o HTML sem DOCTYPE.

Bela estória . Mas me diga uma coisa, Que tipos de DOCTYPES existem e onde colocá-los em meu código?

Até onde sei são quatro tipos para cada compilação HTML (HTML 4.0, HTML 4,1, XHTML, etc).

Os DOCTYPES devem ser a primeira coisa que um browser lê em seu código HTMl, ou seja, na primeira linha, deve ser o primeiro pedaço de código HTML visto em uma página web, antes da tag <html>.

Declarações DOCTYPE são vitais para suas páginas funcionem corretamente em qualquer navegador web. Eles dizem que o navegador da versão da linguagem de marcação que você está usando para a página da web para processar corretamente.

HTML 4.01 é baseado no padrão generalizada Markup Language (SGML), um padrão ISO para documentos eletrônicos, de modo a declaração DOCTYPE refere-se a uma Document Type Definition (DTD), que especifica as regras para a sua linguagem de marcação preferido.

HTML 5 não se baseia numa SGML e, por conseguinte, não requerem uma referência a um DTD.

Quais são eles?

Strict, Transitional e Frameset.

DOCTYPEs da Linguagem HTML

O HTML 4.01 especifica três tipos de documento: Strict, Transitional e Frameset.

DTD HTML Strict

Usa-se para escrever código limpo, livre de misturas entre estilo e conteúdos. É usada em conjunto com estilos CSS (“Cascading Style Sheets”). Usa-se do seguinte modo:

  1. <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”&gt;

DTD HTML Transitional

A DTD HTML Transitional inclui tanto os elementos estruturais com os elementos de apresentação (desaconselhados porque misturam estilo com conteúdos.) Esta DTD deve ser usada quando somos obrigados a manter a compatibilidade com browsers que não suportam os estilos CSS na perfeição. Usa-se do seguinte modo:

  1. <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”&gt;

DTD HTML Frameset

A DTD HTML Frameset deve ser usada quando o documento contém molduras (“frames”.) Esta DTD consiste na DTD Transitional mais os elementos relacionados com as molduras (“frames”). Usa-se do seguinte modo:

  1. <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN” “http://www.w3.org/TR/html4/frameset.dtd”&gt;

DOCTYPEs da Linguagem XHTML

O XHTML 1.0 especifica quatro tipos básicos de documento XML: Strict, Transitional, Frameset e Basic.

DTD XHTML Strict

Usa-se para escrever código limpo, livre de misturas entre estilo e conteúdos. É usada em conjunto com estilos CSS (“Cascading Style Sheets”).

  1. <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”&gt;

DTD XHTML Transitional

A DTD XHTML Transitional junta os elementos estruturais com aqueles elementos que o W3C quer eliminar da linguagem porque misturam o estilo com os conteúdos. Esta DTD deve ser usada quando somos obrigados a manter a compatibilidade com browsers que não suportam estilos CSS na perfeição.

  1. <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;

DTD XHTML Frameset

Usa-se em documentos que contêm molduras (“frames”)

  1. <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”&gt;

DTD XHTML Basic

Versão básica do XHTML. Contém apenas os elementos indispensáveis para construir páginas úteis. Serve de base para construir outras linguagens da família XHTML, como o XHTML Mobile Profile, que foi concebido para criar páginas para a Internet Móvel.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s