XHTML syntaks

At skrive XHTML kode kræver ren HTML syntaks.

Flere XHTML syntaksregler:

  • Egenskabsnavne skal være små bogstaver
  • Egenskabsværdier skal angives med citationstegn
  • Egenskaber kan ikke forkortes
  • Brug Id-egenskaben i stedet for name-egenskaben
  • XHTML DTD definerer obligatoriske HTML-elementer

Egenskabsnavne skal være små bogstaver

Dette er forkert:

<table WIDTH="100%">

Dette er korrekt:

<table width="100%">

Egenskabsværdier skal angives med citationstegn

Dette er forkert:

<table width=100%>

Dette er korrekt:

<table width="100%">

Egenskaber kan ikke forkortes

Dette er forkert:

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

Dette er korrekt:

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

Her er en liste over HTML's kortformet egenskaber samt deres tilpasninger i 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"

Erstat name-egenskaben med id-egenskaben

HTML 4.01 definerer name-egenskaben for følgende elementer: a, applet, frame, iframe, img, og map.

Det er ikke anbefalet at bruge name-egenskaben i XHTML, du bør bruge id i stedet.

Dette er forkert:

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

Dette er korrekt:

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

Vigtig kompatibilitetsadvarsel:

Du skal tilføje en ekstra tom mellemrum før "/"-symbolet for at sikre, at dit XHTML er kompatibelt med nutidens browsere.

Sprog egenskab (lang)

Lang-egenskaben (lang) anvendes på næsten alle XHTML-elementer. Den definerer typen af sprog, som indholdet i elementet bruger.

Hvis du bruger lang-egenskaben på et element, skal du tilføje et ekstra xml:lang, sådan her:

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

Påtvungne XHTML-elementer

Alle XHTML-dokumenter skal have en filtype-deklaration (DOCTYPE-deklaration). Der skal være html, head, og body-elementer i et XHTML-dokument, og title-elementet skal være placeret inden for head-elementet.

Her er et minimaliseret XHTML-filskabelon:

<!DOCTYPE Doctype goes here>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title goes here</title>
</head>
<body>
</body>
</html>

Ved visning:Filtype deklaration er ikke en del af XHTML-dokumentet selv. Det er ikke en XHTML-element, og det har ingen afsluttende tag.

Ved visning:I XHTML er xmlns-attributten inden for <html>-mærket obligatorisk. Selvom XHTML-dokumentet ikke har denne egenskab, vil w3.orgs valideringstool ikke vise en fejl. Dette skyldes, at "xmlns=http://www.w3.org/1999/xhtml" er en fast værdi, og denne værdi tilføjes automatisk til <html>-mærket, selvom du ikke inkluderer den i koden.

Du vil lære mere om XHTML dokumenttype deklarationer i det næste kapitel.