Para que seu código XHTML possa ser validado e interpretado corretamente, siga as seguintes regras:
Fechar todas as tags
Para escrever código XHTML válido, devemos fechar TODAS as tags. As tag que normalmente exigem fechamento como <p></p>, <td></td>. E as tags que no HTML não exigiam fechamento como <br>, <hr>, <img>.
Incorreto:
<br>
<img src=”image.jpg” alt=”foto x”>
Correto:
<br />
<img src=”image.jpg” alt=”foto x” />
Utilizar letras minúsculas para tags e atributos
Um documento XHTML deve ter TODAS as tags e seus respectivos atributos escritos com letra minúscula.
Incorreto:
<A href=”index.html” CLASS=internal>
Correto:
<a href=”index.html” class=”internal”>
Colocar entre aspas valores dos atributos
Todos os valores dos atributos XHTM devem estar entre aspas.
Incorreto:
<table width=100%>
Correto:
<table width=”100%”>
Não permitir atributos sem valores
Todos os atributos devem ter valor definido
Incorreto:
<dl compact>
<input checked>
<input readonly>
<input disabled>
<option selected>
<frame noresize>
Correto:
<dl compact=”compact”>
<input checked=”checked” />
<input readonly=”readonly” />
<input disabled=”disabled” />
<option selected=”selected” />
<frame noresize=”noresize” />
Atributo ID substitui o atributo NAME
O HTML 4.01 define um atributo NAME para elementos como a, applet, frame, iframe, img, e map. No XHTML, o atributo NAME foi descontinuado, sendo substituído pelo atributo ID. Para manter a compatibilidade com browsers mais antigos, aconselha-se utilizar os dois atributos.
Incorreto:
<img src=”figura.gif” name=”figura1″ />
Correto:
<img src=”figura.gif” id=”figura1″ />
<img src=”figura.gif” id=”figura1″ name=”figura1″ />
Não utilizar tags e atributos HTML descontinuados
Algumas tags e atributos que são permitidos no HTML 4.01 Transitional e no XHTML 1.0 Transitional não são permitidos no XHTML 1.0 Strict (e no HTML 4.01 Strict). Alguns exemplos são: tags <font>, <center>; atributos alink, align, width, height (para alguns elementos), e background.
Incorreto:
<b>destaque</b>
Correto:
<strong>destaque</strong>
Declarar o DOCTYPE do documento
Você deve informar um DTD na primeira linha do seu documento XHTML.
O DTD ou Doctype (Document Type Definition) tem como função informar ao browser que tipo de documento será visualizado.
A estrutura de um documento XHTML é:
<!DOCTYPE …>
<html>
<head>
<title>… </title>
</head>
<body> … </body>
</html>
Existem 3 tipos de Doctype:
Strict
Este tipo é utilizado quando o código do documento é 100% XHTML. O XHTM 1.0 Strict não permite marcação de apresentação como a tag <font> ou o atributo bgcolor <table bgcolor=”#006633″>. Por isso força a separação entre estrutura (XHTML) e apresentação (CSS). É tido entre os desenvolvedores como Doctype “radical” pois não permite nenhuma desconformidade com o padrão XHTML.
<!DOCTYPE html
PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
Transitional
Este é o tipo mais utilizado. Ele permite a utilização de tags e atributos de formatação, tornando o documento compatível com browsers que não suportam CSS.
<!DOCTYPE html
PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
Frameset
Este tipo é indicado quando você está utilizando FRAMES em seu site.
<!DOCTYPE html
PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>