XHTML

XHTML is de afkorting van Extensible HyperText Markup Language en is de opvolger van HTML 4.01. Uiteraard moet je eerst HTML leren voordat je XHTML kan gaan "leren" aangezien XHTML de opvolger is van HTML. Leren staat hier tussen aanhalingstekens omdat het helemaal niet moeilijk is. Je kan eigenlijk XHTML zien als een verfijnde en striktere versie van HTML.
Het is belangrijk dat je de broncodes van je documenten in XHTML schrijft in plaats van in HTML omdat, uiteindelijk, HTML vervangen zal worden door XHTML.

Een geldige XHTML broncode moet aan verschillende regels voldoen, deze zijn hieronder uitgelegd.

Lowercase

Lowercase betekent in kleine letters. De eerste regel van XHTML is namelijk dat alle tags lowercase moeten zijn. Bijgevolg is <TABLE> of <Table> ongeldig en is <table> het enige correcte.
Ook moeten de attributen en zijn waarden lowercase zijn.

<table ALIGN="CENTER">

Bovenstaande code is fout en moet veranderd worden in:

<table align="center">

Tags in de juiste volgorde afsluiten

Een andere belangrijke vereiste van XHTML is dat al de tags in de juiste volgorde afgesloten moeten worden.

<p><a href="http://www.eigenwebsitemaken.be">Eigen website maken</p></a>

Deze code is dus fout en moet veranderd worden in:

<p><a href="http://www.eigenwebsitemaken.be">Eigen website maken</a></p>

Alle tags sluiten

In XHTML moet men alle tags sluiten! In HTML zijn de meeste tags ook gesloten, bijvoorbeeld <a>...</a>. Maar in HTML geldt bijvoorbeeld ook:

<img src="vakantie.jpg">

Aangezien men in XHTML alle tags moet sluiten, wordt vorige code ongeldig en zal het aangepast moeten worden:

<img src="vakantie.jpg" />

Een tweede mogelijkheid om de foute code te verbeteren is:

<img src="vakantie.jpg"></img>

Ik raad echter de eerste methode om de tag te sluiten aan omdat deze korter is en dus minder lang duurt om te typen, het zal de broncode ook minder lang maken.

Quotes altijd verplicht

Quotes zijn aanhalingstekens die rond de waarde van een attribuut staan. Bij HTML is het toegelaten om deze quotes weg te laten indien deze waarde numeriek is. Bij XHTML is het echter zo dat alle waarden tussen quotes moeten staan. Bijgevolg is volgende code ongeldig:

<td width=50>

Bovenstaande code zal moeten veranderd worden in:

<td width="50">

Geen attributen minimaliseren

<option selected>

Bij deze code is selected het geminimaliseerd attribuut, bij XHTML wordt dit verboden en moet vorige code worden vervangen door:

<option selected="selected">

Deze regel geldt ook voor andere geminimaliseerde attributen zoals bijvoorbeeld checked.

Het id attribuut

Bij HTML was het vaak de gewoonte om het name attribuut te gebruiken, bijvoorbeeld bij volgende code:

<input type="text" name="invoer" />

Bij XHTML wordt het name attribuut vervangen door het id attribuut. Men bekomt dus volgende code:

<input type="text" id="invoer" />

Het is echter zo dat sommige — vooral oudere — webbrowsers dit attribuut niet ondersteunen. Daarom raad ik je sterk aan om beide attributen te gebruiken. Volgende code is dus perfect:

<input type="text" name="invoer" id="invoer" />

Doctype

Volgens de regels van XHTML is het verplicht om een doctype te gebruiken. Deze komt altijd op de eerste regel van de broncode te staan, zelfs dus veel de html tag! Er zijn 3 verschillende doctypes; strict, transitional en frameset.

  • Strict

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    Deze doctype wordt gebruikt voor zeer propere broncodes die zich zeer strikt houden aan de regels van XHTML en wordt gecombineerd met CSS stylesheets.

  • Transitional

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    Deze doctype gebruikt men wanneer men de pagina geschikt wilt maken voor browsers die geen CSS stylesheets ondersteunen.

  • Frameset

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

    Deze doctype is geschikt voor pagina's die gebruik maken van frames.

Ten slotte, als controle voor de geldigheid van je broncode, kan je je broncode laten valideren door W3C Markup Validation Service.