segunda-feira, março 08, 2010

Diferenças do HTML5 / HTML4 parte 1 - Geral

Depois de ler alguns artigos, ler documentação oficial e agora o texto da W3C sobre a diferença do HTML 5 com relação ao 4, blogs etc, incluindo bom senso de padronização, farei a seguir um resumo só com a real diferença da especificação atual (que ainda não está fechada).
Este primeiro post refere-se ao documento em geral.

#1 - XML: Trate como um documento XML - incluindo suas regras de estrutura do documento. Apesar de permitir certas displicências, aplique as boas práticas do XHTML sempre que puder no seu documento HTML:
  • tags em minúscula;
  • atributos com valores e com aspas;
  • tags vazias finalizadas com "/";
  • etc.

#2 - DOCTYPE: Para dizer que um documento é HTML, basta, no início do documento:
<!DOCTYPE html>

#3 - Tag HTML: Pode ou não possuir a tag [html], mas é altamente recomendável.

#4 - Idioma: Recomenda-se informar o idioma do documento. Para isso use a tag [html] (dã...):
<html lang="pt">

#5 - Charset: Para informar a codificação de caracteres, basta, no [header]:
<meta charset="UTF-8" />

#6 - Outros ML: O HTML5 permite MathML e SVG com as tags [math] e [svg] especificamente:
<svg><circle r="50" cx="50" cy="50" fill="green" /></svg>

#7 - Microdata: Pode-se usar microdata, se referindo com o atributo "itemscope" dentro de um elemento pai, e especificando os itens dentro dele. Os atributos são: "itemid", "itemprop", "itemref", "itemscope" e "itemtype".

#8 - Entidades: O tratamento das entidades e símbolos continuam os mesmos (& + entidade ou [# + ascii] + ;).

Exemplo (mescla de alguns exemplos da W3C):


<!doctype html>
<html lang="pt">
<head>
<meta charset="UTF-8" />
<title>Exemplo HTML5 - parte 1</title>
</head>
<body>
<section>
<p>
A green circle:
<svg> <circle r="50" cx="50" cy="50" fill="green" /> </svg>
</p>
</section>
<section itemscope itemtype="http://blablabla.org/galera">
<h1 itemprop="name">Astrogildo</h1>
<p itemprop="desc">Astrogildo - um cara legal!</p>
<img itemprop="img" src="img/astro.jpg" alt="Falhou..." title="Astrogildo na rave" />
</section>
</body>
</html>

Nenhum comentário: