XHTML-Syntax

Um XHTML-Code zu schreiben, ist eine saubere HTML-Syntax erforderlich.

Mehrere XHTML Syntaxregeln:

  • Der Name des Attributes muss kleingeschrieben sein
  • Der Wert des Attributes muss in Anführungszeichen stehen
  • Attribute können nicht verkürzt werden
  • Verwenden Sie das Id-Attribut anstelle des name-Attributs
  • Die XHTML DTD definiert obligatorische HTML-Elemente

Der Name des Attributes muss kleingeschrieben sein

Das ist falsch:

<table WIDTH="100%">

Das ist korrekt:

<table width="100%">

Der Wert des Attributes muss in Anführungszeichen stehen

Das ist falsch:

<table width=100%>

Das ist korrekt:

<table width="100%">

Attribute können nicht verkürzt werden

Das ist falsch:

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

Das ist korrekt:

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

Hier ist eine Liste der verkürzten HTML-Attribute sowie ihrer Umwandlung 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"

Ersetze das name-Attribut durch id

HTML 4.01 definiert das name-Attribut für die folgenden Elemente: a, applet, frame, iframe, img und map.

Das Verwenden des name-Attributs wird in XHTML nicht empfohlen. Stattdessen sollte id verwendet werden.

Das ist falsch:

<img src="bild.gif" name="bild1" />

Das ist korrekt:

<img src="bild.gif" id="bild1" />

Wichtige Kompatibilitätsweiseise:

Du solltest vor dem "/"-Zeichen einen zusätzlichen Leerzeichen hinzufügen, um deine XHTML mit den heutigen Browsern kompatibel zu machen.

Sprachattribut (lang)

Das lang-Attribut wird auf fast alle XHTML-Elemente angewendet. Es definiert den Typ der Sprache, die für den Inhalt des Elements verwendet wird.

Wenn die lang-Attribut in einem Element verwendet wird, muss ein zusätzlicher xml:lang hinzugefügt werden, wie folgt:

<div lang="no" xml:lang="no">Hallo Norwegen!</div>

Erzwungene XHTML-Elemente

Alle XHTML-Dokumente müssen eine Dateitypenkennung (DOCTYPE-Aussage) enthalten. In XHTML-Dokumenten müssen die Elemente html, head und body vorhanden sein, und das title-Element muss im head-Element stehen.

Hier ist ein minimierter XHTML-Dateimustervorlage:

<!DOCTYPE Dokumenttyp geht hierher>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Titel geht hierher</title>
</head>
<body>
</body>
</html>

Hinweis:Die Dateitypdeklaration ist nicht Bestandteil des XHTML-Dokuments selbst. Es ist kein XHTML-Element und hat auch kein schließendes Tag.

Hinweis:In XHTML ist das xmlns-Attribut im <html>-Tag obligatorisch. Allerdings wird das Validierungstool von w3.org auch keine Fehlermeldung anzeigen, wenn das Attribut im XHTML-Dokument nicht vorhanden ist. Dies liegt daran, dass "xmlns=http://www.w3.org/1999/xhtml" ein festgelegter Wert ist und dieser Wert automatisch zum <html>-Tag hinzugefügt wird, auch wenn du ihn nicht in den Code einfügst.

Du wirst im nächsten Kapitel mehr über die XHTML-Dokumenttypdeklaration lernen.