HTML contro XHTML
XHTML è una versione di HTML più rigorosa e basata su XML.
Che cos'è XHTML?
- XHTML sta per E X tensible Hyper Text M arkup L anguage
- XHTML è una versione di HTML più rigorosa e basata su XML
- XHTML è HTML definito come un'applicazione XML
- XHTML è supportato da tutti i principali browser
Perché XHTML?
XML è un linguaggio di markup in cui tutti i documenti devono essere contrassegnati correttamente (essere "ben formati").
XHTML è stato sviluppato per rendere l'HTML più estensibile e flessibile per funzionare con altri formati di dati (come XML). Inoltre, i browser ignorano gli errori nelle pagine HTML e provano a visualizzare il sito Web anche se presenta alcuni errori nel markup. Quindi XHTML viene fornito con una gestione degli errori molto più rigorosa.
Se vuoi studiare XML, leggi il nostro Tutorial XML .
Le differenze più importanti dall'HTML
- <!DOCTYPE> è obbligatorio
- L'attributo xmlns in <html> è obbligatorio
- <html>, <head>, <title> e <body> sono obbligatori
- Gli elementi devono sempre essere annidati correttamente
- Gli elementi devono essere sempre chiusi
- Gli elementi devono essere sempre in minuscolo
- I nomi degli attributi devono essere sempre in minuscolo
- I valori degli attributi devono essere sempre citati
- La minimizzazione degli attributi è vietata
XHTML - <!DOCTYPE ....> è obbligatorio
Un documento XHTML deve avere una dichiarazione XHTML <!DOCTYPE>.
Devono essere presenti anche gli elementi <html>, <head>, <title> e <body> e l'attributo xmlns in <html> deve specificare lo spazio dei nomi xml per il documento.
Esempio
Ecco un documento XHTML con un minimo di tag richiesti:
<!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>
Gli elementi XHTML devono essere nidificati correttamente
In XHTML, gli elementi devono sempre essere correttamente annidati l'uno nell'altro, in questo modo:
Corretta:
<b><i>Some
text</i></b>
Sbagliato:
<b><i>Some
text</b></i>
Gli elementi XHTML devono essere sempre chiusi
In XHTML, gli elementi devono essere sempre chiusi, in questo modo:
Corretta:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
Sbagliato:
<p>This is a paragraph
<p>This is another paragraph
Gli elementi vuoti XHTML devono essere sempre chiusi
In XHTML, gli elementi vuoti devono essere sempre chiusi, in questo modo:
Corretta:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
Sbagliato:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
Gli elementi XHTML devono essere in minuscolo
In XHTML, i nomi degli elementi devono essere sempre in minuscolo, in questo modo:
Corretta:
<body>
<p>This is a paragraph</p>
</body>
Sbagliato:
<BODY>
<P>This is a paragraph</P>
</BODY>
I nomi degli attributi XHTML devono essere in minuscolo
In XHTML, i nomi degli attributi devono essere sempre in minuscolo, in questo modo:
Corretta:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Sbagliato:
<a HREF="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
I valori degli attributi XHTML devono essere citati
In XHTML, i valori degli attributi devono sempre essere citati, in questo modo:
Corretta:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
Sbagliato:
<a href=https://www.w3schools.com/html/>Visit our HTML tutorial</a>
La minimizzazione degli attributi XHTML è vietata
In XHTML, la minimizzazione degli attributi è vietata:
Corretta:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
Sbagliato:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />