Sintassi XHTML

Scrivere codice XHTML richiede una sintassi HTML pulita

Ulteriori regole di sintassi XHTML:

  • Il nome dell'attributo deve essere in minuscolo
  • Il valore dell'attributo deve essere racchiuso tra virgolette
  • Gli attributi non possono essere abbreviati
  • Usare l'attributo Id al posto dell'attributo name
  • Il DTD di XHTML definisce l'uso obbligatorio degli elementi HTML

Il nome dell'attributo deve essere in minuscolo

Questo è sbagliato:

<table WIDTH="100%">

Questo è corretto:

<table width="100%">

Il valore dell'attributo deve essere racchiuso tra virgolette

Questo è sbagliato:

<table width=100%>

Questo è corretto:

<table width="100%">

Gli attributi non possono essere abbreviati

Questo è sbagliato:

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

Questo è corretto:

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

Di seguito è elencato un elenco di attributi abbreviati di HTML e la loro versione in 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"

Sostituisci l'attributo name con id

HTML 4.01 definisce l'attributo name per i seguenti elementi: a, applet, frame, iframe, img e map.

Non si incoraggia l'uso dell'attributo name in XHTML, dovrebbe essere sostituito con id.

Questo è sbagliato:

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

Questo è corretto:

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

Suggerimento importante di compatibilità:

Dovresti aggiungere uno spazio extra prima del simbolo "/" per garantire la compatibilità del tuo XHTML con i browser moderni.

Proprietà di lingua (lang)

L'attributo lang si applica praticamente a tutti gli elementi XHTML. Definisce il tipo di lingua utilizzata per il contenuto degli elementi.

Se si utilizza l'attributo lang in un elemento, deve essere aggiunto xml:lang aggiuntivo, come segue:

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

Elementi XHTML obbligatori

Tutti i documenti XHTML devono avere una dichiarazione di tipo di file (DOCTYPE declaration). Nei documenti XHTML devono essere presenti gli elementi html, head, body, e l'elemento title deve essere posizionato all'interno dell'elemento head.

Ecco un modello di file XHTML minimizzato:

<!DOCTYPE Dovrebbe andare qui il Doctype>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Titolo va qui</title>
</head>
<body>
</body>
</html>

Suggerimento:La dichiarazione del tipo di file non fa parte del documento XHTML stesso. Non è un elemento XHTML e non ha etichette di chiusura.

Suggerimento:In XHTML, l'attributo xmlns all'interno del tag <html> è obbligatorio. Tuttavia, anche se l'attributo non è presente nel documento XHTML, gli strumenti di verifica di w3.org non segnalano errori. Questo perché "xmlns=http://www.w3.org/1999/xhtml" è un valore fisso, che viene aggiunto al tag <html> anche se non è incluso nel codice.

Imparerai di più su XHTML Document Type Declaration nel capitolo successivo.