Sintaxe XHTML

Escrever código XHTML requer sintaxe pura do HTML

Mais regras de sintaxe do XHTML:

  • Os nomes dos atributos devem ser minúsculos
  • Os valores dos atributos devem ser entre aspas
  • Os atributos não podem ser abreviados
  • Use o atributo Id em vez do atributo name
  • O DTD do XHTML define elementos HTML obrigatórios

Os nomes dos atributos devem ser minúsculos

Isso está errado:

<table WIDTH="100%">

Isso está correto:

<table width="100%">

Os valores dos atributos devem ser entre aspas

Isso está errado:

<table width=100%>

Isso está correto:

<table width="100%">

Os atributos não podem ser abreviados

Isso está errado:

<input checked>
<input readonly>
<input disabled>
<option selected>
<frame noresize>

Isso está correto:

<input checked="checked" />
<input readonly="readonly" />
<input disabled="disabled" />
<option selected="selected" />
<frame noresize="noresize" />

A seguir está uma lista de atributos abreviados de HTML e suas versões no XHTML:

HTML XHTML
compact compact="compact"
checked checked="checked"
declare declare="declare"
readonly readonly="readonly"
disabled disabled="disabled"
selected selected="selected"
defer defer="defer"
ismap ismap="ismap"
nohref nohref="nohref"
noshade noshade="noshade"
nowrap nowrap="nowrap"
multiple multiple="multiple"
noresize noresize="noresize"

Substitua a propriedade name pela propriedade id

O HTML 4.01 define a propriedade name para os seguintes elementos: a, applet, frame, iframe, img e map.

Não é encorajado usar a propriedade name no XHTML, deve ser substituída pelo id.

Isso está errado:

<img src="picture.gif" name="picture1" />

Isso está correto:

<img src="picture.gif" id="picture1" />

Dica importante de compatibilidade:

Você deve adicionar um espaço extra antes do símbolo "/" para que seu XHTML seja compatível com os navegadores atuais.

Propriedade de idioma (lang)

A propriedade lang é aplicada a quase todos os elementos XHTML. Ela define o tipo de idioma do conteúdo interno do elemento.

Se você usar a propriedade lang em algum elemento, deve adicionar xml:lang adicional, assim:

<div lang="no" xml:lang="no">Heia Norge!</div>

Elementos XHTML obrigatórios

Todos os documentos XHTML devem conter uma declaração de tipo de arquivo (DOCTYPE declaration). Em documentos XHTML, os elementos html, head e body devem existir, e o elemento title deve estar dentro do elemento head.

Aqui está um modelo de arquivo XHTML minimizado:

<!DOCTYPE Doctype vai aqui>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Título vai aqui</title>
</head>
<body>
</body>
</html>

Dica:A declaração de tipo de arquivo não é parte do próprio documento XHTML. Não é um elemento XHTML e não possui tag de fechamento.

Dica:No XHTML, a propriedade xmlns dentro da tag <html> é necessária. No entanto, mesmo que o atributo xmlns não esteja presente no documento XHTML, o ferramental de verificação do w3.org não indicará erro. Isso porque, "xmlns=http://www.w3.org/1999/xhtml" é um valor fixo, e mesmo que você não o inclua no código, este valor será adicionado à tag <html>.

Você aprenderá mais sobre declarações de tipos de documentos XHTML no próximo capítulo.