Elementtypen, Elemente, Tags, Elementinhalte
XHTML besteht aus einer Reihe von Elementtypen, die zum Beispiel Absätze, Überschriften, Tabellen, Listenpunkte, Bilder oder Hyperlinks repräsentieren. Welche Elementtypen es gibt, in welchem Zusammenhang diese verwendet und wie sie verschachtelt werden dürfen, wird in der Dokumenttyp-Definition (DTD) oder im zugehörigen Schema festgelegt.
Ein Element ist eine konkrete Ausprägung (eine konkrete Instanz) eines Elementtyps und wird wie folgt notiert:
<Elementname>Inhaltsmodell</Elementname>
Der Elementinhalt wird
von einem Start-Tag und einem
End-Tag umschlossen. Ein Tag
besteht aus einer öffnenden spitzen Klammer (<
), dem
Elementnamen und einer
schließenden spitzen Klammer (>
). Das End-Tag
enthält zusätzlich das Ende-Kennzeichen, einen Schrägstrich
(/
), vor dem Elementnamen.
Tabelle 4.1 verdeutlicht die Bezeichnungen
anhand eines Elements vom Typ h1
, einer Überschrift erster
Ordnung.
Bezeichnung | Beispiel |
---|---|
Element | <h1>Überschrift erster Ordnung</h1> |
Elementname | <h1>Überschrift erster Ordnung</h1> |
Start-Tag | <h1>Überschrift erster Ordnung</h1> |
Elementinhalt | <h1>Überschrift erster Ordnung</h1> |
End-Tag | <h1>Überschrift erster Ordnung</h1> |
Einige Elementtypen haben keinen Inhalt, zum Beispiel der
Elementtyp hr
, der eine horizontale Linie
erzeugt, br
für einen Zeilenwechsel
und img
zur Einbindung von Bildern.
Diese sogenannten leeren
Elemente werden über ein Leeres-Element-Tag erzeugt; das
Ende-Kennzeichen wird hierbei in das Tag hineingezogen:
<Elementname />
Tabelle 4.2 veranschaulicht die neuen
Begriffe anhand des leeren Elements br
(Zeilenumbruch).
Bezeichnung | Beispiel |
---|---|
Element | <br /> |
Elementname | <br /> |
Leeres-Element-Tag | <br /> |
Attribute
Oft hat ein Element einen Zusatz, um eine Eigenschaft zu
beschreiben. Einen solchen Zusatz nennt man Attribut, dem ein Attributwert zugeordnet wird. Paare aus
Attributnamen und
Attributwert stehen immer im Start-Tag eines Elements und werden
vom Elementnamen sowie voneinander durch Leerraum abgetrennt. Die
Reihenfolge der Attribute innerhalb eines Elements ist beliebig.
Attributwerte werden entweder von doppelten ("
) oder einfachen
('
) Anführungszeichen
eingeschlossen.
Als Beispiel: Das Element a
(Anker) wird
durch die Tags <a>
und </a>
ausgezeichnet. Um zu bestimmen, auf welches Ziel der Link
verweisen soll, wird ihm das Attribut href="http://www.example.com"
verliehen. href
ist der Attributname, der URI
zwischen den Anführungszeichen ist der Attributwert. Tabelle
4.3 zeigt noch einmal alle Begriffe und deren exakte Zuordnung
übersichtlich unteinander.
Bezeichnung | Beispiel |
---|---|
Element | <a href="http://www.example.com">Dokumentation</a> |
Elementname | <a href="http://www.example.com">Dokumentation</a> |
Start-Tag | <a href="http://www.example.com">Dokumentation</a> |
Elementinhalt | <a href="http://www.example.com">Dokumentation</a> |
End-Tag | <a href="http://www.example.com">Dokumentation</a> |
Attribut | <a href="http://www.example.com">Dokumentation</a> |
Attributname | <a href="http://www.example.com">Dokumentation</a> |
Attributwert | <a href="http://www.example.com">Dokumentation</a> |
Kommentare
XHTML bietet die Möglichkeit, Kommentare einzubinden. Kommentare sind dazu geeignet, interne Angaben zum Autor, das Erstellungsdatum, Anmerkungen und Notizen einzufügen oder um verwendete Elemente auszukommentieren. Diese stehen sichtbar im Quelltext der Seite, werden somit auch an den Browser übertragen, allerdings nicht auf der Seite angezeigt.
Geöffnet werden XHTML-Kommentare durch
den öffnenden Begrenzer der Auszeichnungsdeklaration
(markup declaration open
delimiter, <!
) und den öffnenden
Begrenzer des Kommentars (comment open
delimiter, --
). Geschlossen werden sie durch
den schließenden Begrenzer des Kommentars (comment close delimiter, --
) und den
schließenden Begrenzer der Auszeichnungsdeklaration
(markup declaration close
delimiter, >
):
<!-- Dies ist ein einzeiliger Kommentar. --> <!-- Dies ist ein mehrzeiliger Kommentar, der durch die gleichen Zeichenfolgen eingeschlossen wird. -->
Da ein Kommentar mit der Zeichenfolge
--
eingeleitet und beendet wird,
dürfen Sie die Zeichenkette --
in
XHTML-Dokumenten nicht
innerhalb eines Kommentars verwenden.
Zeichenreferenzen
Das Zeichen <
darf nicht Teil eines
Elementinhalts sein, da der Browser dieses Zeichen sonst als Teil
des Markups (Beginn eines Start-Tags) missinterpretieren
würde. Ebenso dürfen doppelte ("
) oder einfache
('
) Anführungszeichen nicht in
Attributwerten auftreten, die durch die gleichen Zeichen
eingeschlossen werden. Deswegen können Sie nicht einfach
schreiben:
<p>Das Zeichen < darf nicht Teil eines Elementinhalts sein.</p>
Stattdessen muss das Zeichen <
in Form einer
Zeichenreferenz notiert werden.
Eine Zeichenreferenz
dient der Eingabe von Zeichen, die im Markup an dieser Stelle
nicht erlaubt oder nicht in dem gewählten Zeichenvorrat
vorhanden sind. Eine Zeichenreferenz beginnt mit einem Ampersand und endet mit einem
Semikolon (;
). Aus diesem Grund muss das Zeichen &
ebenfalls umschrieben werden, da der Browser sonst glauben könnte, eine Zeichenreferenz würde eingeleitet.
Es werden numerische und benannte Zeichenreferenzen unterschieden.
Eine numerische
Zeichenreferenz (numeric
character reference) gibt die Codeposition eines
Zeichens im gewählten Dokumentzeichensatz an. Sie kann zwei
Formen annehmen, wobei D
und H
als Variablen zu
verstehen sind:
- Die Syntax
&#D;
weist auf die dezimale Zeichennummer D. Beispiel:<
- Die Syntax
&#xH;
weist auf die hexadezimale Zeichennummer H. Beispiel:<
Eine benannte
Zeichenreferenz (character
entitiy reference) verwendet zwischen &
und
;
statt einer Zahl eine
mnemonische Zeichenkombination, die das Zeichen beschreibt und
sich mehr oder weniger leicht merken lässt. Für jedes
Zeichen der Codepositionen 160 bis 255 in Unicode existiert eine
benannte Zeichenreferenz, darüber hinaus auch für viele
weitere (zum Beispiel mathematische Symbole oder griechische
Zeichen).
XHTML verwendet als Zeichenvorrat Unicode; das heißt, Sie können prinzipiell jedes Zeichen aus Unicode in XHTML-Dokumenten verwenden. Da es mehrere Möglichkeiten gibt, ein Zeichen im Quelltext einer Webseite zu referenzieren, können Sie sogar Zeichen aus Unicode unterbringen, obwohl Sie eine Kodierung mit eingeschränktem Zeichenvorrat wie ISO-8859-1 oder US-ASCII für den Großteil Ihres Texts verwenden.
Grundsätzlich können Sie Ihre XHTML-Dokumente in jeder beliebigen Zeichenkodierung schreiben und abspeichern, solange sie mit der korrekten Information zur Kodierung vom Webserver ausgeliefert werden.
Tabelle 4.4 stellt numerische und benannte Zeichenreferenzen von im XHTML-Markup verwendeten Zeichen gegenüber.
Zeichen | Bezeichnung | Zeichenreferenz | ||
---|---|---|---|---|
dezimal | hexadezimal | benannt | ||
< | Kleiner als | < |
< |
< |
> | Größer als | > |
> |
> |
" | Anführungszeichen | " |
" |
" |
' | Apostroph | ' |
' |
' |
& | Ampersand | & |
& |
& |
Entgegen einem weit verbreiteten Irrglauben ist es übrigens in den meisten Fällen nicht nötig, das Anführungszeichen, den Apostroph und sogar das Größer-als-Zeichen per Zeichenreferenz zu notieren. Dies ist nur dann notwendig, wenn diese Zeichen in Attributwerten auftreten, wobei Anführungszeichen und Apostroph auch nicht umschrieben werden müssen, wenn der Attributwert im jeweils anderen Zeichen eingeschlossen wird.