HTML versus XHTML
XHTML é uma versão do HTML mais rígida e baseada em XML.
O que é XHTML?
- XHTML significa E X Tennsible H yper T ext M arkup L anguage
- XHTML é uma versão mais rígida e baseada em XML do HTML
- XHTML é HTML definido como um aplicativo XML
- XHTML é suportado por todos os principais navegadores
Por que XHTML?
XML é uma linguagem de marcação onde todos os documentos devem ser marcados corretamente (ser "bem formados").
O XHTML foi desenvolvido para tornar o HTML mais extensível e flexível para trabalhar com outros formatos de dados (como XML). Além disso, os navegadores ignoram erros nas páginas HTML e tentam exibir o site mesmo que tenha alguns erros na marcação. Assim, o XHTML vem com um tratamento de erros muito mais rigoroso.
Se você quer estudar XML, por favor leia nosso Tutorial de XML .
As diferenças mais importantes do HTML
- <!DOCTYPE> é obrigatório
- O atributo xmlns em <html> é obrigatório
- <html>, <head>, <title> e <body> são obrigatórios
- Os elementos devem sempre ser aninhados corretamente
- Os elementos devem estar sempre fechados
- Os elementos devem estar sempre em minúsculas
- Os nomes dos atributos devem estar sempre em minúsculas
- Os valores dos atributos devem sempre ser citados
- A minimização de atributos é proibida
XHTML - <!DOCTYPE ....> é obrigatório
Um documento XHTML deve ter uma declaração XHTML <!DOCTYPE>.
Os elementos <html>, <head>, <title> e <body> também devem estar presentes, e o atributo xmlns em <html> deve especificar o namespace xml para o documento.
Exemplo
Aqui está um documento XHTML com um mínimo de tags obrigatórias:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title of document</title>
</head>
<body>
some content here...
</body>
</html>
Elementos XHTML devem ser aninhados corretamente
Em XHTML, os elementos devem sempre estar devidamente aninhados entre si, assim:
Correto:
<b><i>Some
text</i></b>
Errado:
<b><i>Some
text</b></i>
Elementos XHTML devem estar sempre fechados
Em XHTML, os elementos devem estar sempre fechados, assim:
Correto:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
Errado:
<p>This is a paragraph
<p>This is another paragraph
Elementos vazios XHTML devem sempre ser fechados
Em XHTML, os elementos vazios devem sempre ser fechados, assim:
Correto:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
Errado:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
Elementos XHTML devem estar em letras minúsculas
Em XHTML, os nomes dos elementos devem estar sempre em minúsculas, assim:
Correto:
<body>
<p>This is a paragraph</p>
</body>
Errado:
<BODY>
<P>This is a paragraph</P>
</BODY>
Os nomes dos atributos XHTML devem estar em letras minúsculas
Em XHTML, os nomes dos atributos devem estar sempre em minúsculas, assim:
Correto:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Errado:
<a HREF="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Os valores dos atributos XHTML devem ser citados
Em XHTML, os valores dos atributos devem sempre ser citados, assim:
Correto:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Errado:
<a href=https://www.w3schools.com/html/>Visit our HTML tutorial</a>
A minimização de atributos XHTML é proibida
Em XHTML, a minimização de atributos é proibida:
Correto:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
Errado:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />