Grundlagen: HTML
Elemente zur Strukturierung von Texten
In diesem Artikel will ich einen kurzen Überblick über die verschiedenen Möglichkeiten zur Strukturierung von Texten in HTML-Dokumenten geben. Zusätzlich wird auf die verschiedenen Möglichkeiten eingegangen, Textabschnitte in HTML auszuzeichnen, um einzelne Bestandteile hervorzuheben.
Auf andere HTML-Elemente und Möglichkeiten, die nicht in direkten Zusammenhang mit Texten stehen – etwa Bilder oder Elemente zur Seitenstrukturierung – gehe ich hier nicht weiter ein. Dafür gibt es bessere Quellen. Insgesamt werden Grundkenntnisse in HTML vorausgesetzt. Ein Hinweis an dieser Stelle noch zu Block-Elementen:
Innerhalb von inline-Elementen dürfen keine Blockelemente stehen!
Texte strukturieren
Überschriften (h1 — h6)
Mit ‹h#›-Tags, wobei Raute für die Zahlen von 1 bis 6 steht, lassen sich Überschriften erzeugen. Die Zahl steht dabei für die Ordnung der Überschrift: ‹h1› ist die Überschrift mit der höchsten Ordnung.
‹h›-Tags sind Block-Elemente.
Lorem ipsum
Lorem ipsum
Lorem ipsum
Lorem ipsum
Lorem ipsum
Lorem ipsum
Textabsatz (p)
Mit dem ‹p›-Tag werden Textabsätze definiert. Das Anfangs-Tag erzeugt einen Zeilenumbruch und eine Absatzschaltung und ist somit das Äquivalent zum Absatz in Satzprogrammen wie InDesign.
Das ‹p›-Tag ist ein Block-Element. Im Inneren dürfen aber nur inline-Elemente verwendet werden.
In der Standardeinstellung der Browser weisen Absätze einen Abstand (margin) über der ersten und nach der letzten Zeile auf.
Zeilenumbruch erzwingen (br)
Mit dem ‹br /›-Tag wird ein Zeilenumbruch erzwungen, der nicht zu einer Änderung des Absatzformates führt.
Normalerweise ist das ‹br›-Tag nicht nötig, da der Browser abhängig von der Zeilenbreite selbstständig umbricht. Lediglich wo ein Zeilenumbruch erzwungen werden soll, ist ein ‹br›-Tag notwendig. Es können auch mehrere br-Tags hintereinander angegeben werden um Leerzeilen zu erzeugen, was aber normalerweise nie nötig sein sollte und sich immer anders lösen lässt.
Das ‹br›-Tag hat kein schließendes Tag und muss immer in sich selbst geschlossen werden. Dies erreicht man durch einen Schrägstrich vor der schließenden Klammer. Dieser Schrägstich kann in der Syntax-Vorschau leider nicht angezeigt werden, ‹br› müsste hier ‹br /› sein.
Die erste Zeile <br /> Die zweite Zeile unabhängig von der Zeilenbreite
Die Zeilenumbrüche im obigen Quelltext werden vom Browser nicht ausgegeben. Browser filtern Zeilenumbrüche aus dem Sourcecode heraus. Mehrere aufeinander folgende Leerzeichen und Tabulatoren werden vom Browser zu einem Leerzeichen zusammengefasst. Eine Ausnahme stellt das ‹pre›-Tag dar.
Text vorformatiert ausgeben (pre)
Mit dem ‹pre›-Tag lässt sich Text genauso ausgeben, wie er in der Quelldatei formatiert wurde, also inklusive aller Weißräume, Tabulatoren und Zeilenumbrüche. Das ‹pre›-Tag wird meistens zur Darstellung von Sourcecode verwendet, kann aber auch zu anderen Zwecken eingesetzt werden, etwa für mit Tabulatoren angelegte „Tabellen“.
Das ‹pre›-Tag ist ein Block-Element, aber innerhalb des Tags sollten keine anderen Elemente stehen.
Standardmäßig stellen Browser Text innerhalb eines ‹pre›-Tags in einer nichtproportionalen (monospace) Schriftart an.
Lange Zitate (blockquote)
Mit dem ‹blockquote›-Tag werden Zitate ausgezeichnet. Dabei wird der Textblock vom restlichen Text abgesetzt.
Innerhalb eines blockquote-Elements können beliebige andere Tags stehen. Text innerhalb eines blockquote-Elements muss zusätzlich (z.B. p-Tag) ausgezeichnet werden.
Mit dem cite-Attribut kann man zusätzlich die Quelle eines Zitates angeben:
It is the designer/typographer’s task to match form with content; to create an authoritative document. - Nick Shinn
Horizontale Linie (hr)
Mit dem ‹hr /›-Tag wird ein Zeilenumbruch eingefügt, welcher durch eine horizontale Linie angezeigt wird.
Da diese Linie jedoch nur noch selten gebraucht wird, kann sie auch zweckentfremdet werden. So lässt sie sich z. B. als clear-Element für die CSS-Eigenschaft float anwenden. Dazu definiert man das ‹hr›-Tag per CSS folgendermaßen:
hr {
clear: both;
visibility: hidden;
}
Texte auszeichnen
Alle Auszeichnungs-Elemente, soweit nicht anders angegeben, sind Inline-Elemente und dürfen keine Block-Elemente enthalten.
Fetter Schriftschnitt (strong)
Mit dem ‹strong›-Tag lassen sich Textpassagen hervorheben, indem diese fett dargestellt werden. Bei Browsern mit Sprachausgabe werden diese stärker betont als der übrige Text.
In diesem Text ist ein Begriff besonders wichtig.
Das ältere ‹b›-Tag sollte nicht mehr verwendet werden.
Kursiver Schnitt (em)
Mit dem ‹em›-Tag lassen sich Textpassagen hervorheben, indem diese kursiv dargestellt werden. Bei Browsern mit Sprachausgabe werden diese stärker betont als der übrige Text.
Dabei handelt es sich um ein Inline-Element.
In diesem Text ist ein Begriff besonders hervorgehoben.
Der ältere ‹i›-Tag sollte nicht mehr verwendet werden.
Links oder Anker (a)
Mit dem ‹a›-Tag werden Links ausgezeichnet. Dabei wird das Sprungziel mit der Variablen href angegeben. Das Sprungziel kann innerhalb der eigenen Webseite über ein URL (Universal Resource Locator) auf eine andere Datei verweisen oder innerhalb der Datei zu einem Anker in derselben Datei oder zu einer anderen Webseite über eine URI (Universal Resource Identifier). Bei der URI muss immer das Schema (z.B. http://) mit angegeben werden.
Zwischen das öffnende und schließende Tag können beliebige Texte oder auch Bilder gesetzt werden. Das ‹a›-Tag erzeugt dabei ein inline-Element.
Dieser Text enthält einen Link zu just type
Anker sind Sprungziele innerhalb derselben Seite. Sie beziehen sich auf die ID eines beliebigen Elementes der Seite und werden über eine Raute gefolgt von der ID angesprochen:
KopfzeileSprung zur Kopfzeile
Links können noch mit einer ganzen Reihe von Attributen versehen werden, eine gute Übersicht gibt es hier.
Beliebige Inline-Formate (span)
Das ‹span›-Tag hat von sich aus keine Eigenschaft. Es wird dazu benutzt, CSS-Stile auf Textpassagen anzuwenden, z.B. indem man dem ‹span›-Tag eine Klasse zuweist. Das ‹span›-Tag ist dabei das Gegenstück zum ‹div›-Tag, da es sich um ein inline-Element handelt. Es kann z. B. verwendet werden, um Textpassagen durch Farbänderungen hervorzuheben.
.special {
color: #f00;
}
Dieses <span class="special">Wort</span> wird besonders ausgezeichnet.
Textepassagen streichen (del)
Mit dem ‹del›-Tag lassen sich Bereiche von Texten streichen. Dies wird z. B. in Blogs genutzt, um redaktionelle Änderungen in Texten kenntlich zu machen, ohne den entsprechenden Abschnitt komplett zu löschen. Der Text wird mit einer horizontalen Linie dargestellt, die durch den Text verläuft, ihn also durchstreicht.
Das ‹del›-Tag kann mit den Attributen cite und datetime versehen werden. Das Attribut cite verweist dabei auf eine Quelle, die mit der Änderung zusammenhängt. Datetime weißt auf den Zeitpunkt der Änderung hin.
Neue Passagen einsetzen (ins)
Mit dem ‹ins›-Tag lassen sich neue Passagen innerhalb von Texten kennzeichnen. Der Text wird mit einer horizontalen Linie unterstrichen. Diese Funktion wird meistens in Verbindung mit dem del-Tag eingesetzt.
Das ‹ins›-Tag kann mit den Attributen cite und datetime versehen werden. Das Attribut cite verweist dabei auf eine Quelle, die mit der Änderung zusammenhängt und datetime weißt auf den Zeitpunkt der Änderung hin.
Kurze Zitate im Textfluss (cite)
Mit dem ‹cite›-Tag lassen sich kurze Zitate innerhalb eines Textes auszeichnen. Dabei handelt es sich um ein inline-Element, das selbst weitere Elemente enthalten kann.
Die Browser zeigen den zitierten Text standardmäßig kursiv an.
Text in Anführungszeichen (q)
Mit dem ‹q›-Tag schließt man einen Textabschnitt in oben stehende doppelte Anführungszeichen ein. Das Tag kann auch dazu verwendet werden, kurze Zitate zu kennzeichnen und kennt im Gegensatz zum ‹cite›-Tag das cite–Attribut, um die Quelle mit anzugeben (wie beim ‹blockquote›-Tag).
Das ‹q›-Tag kann aber auch dazu genutzt werden Textabschnitte auszuzeichnen, die in Kommata gesetzt werden sollen. Über CSS kann man dann je nach angegebener Sprache die korrekten Kommata ausgeben.
Dies wird aber nur von neueren Browsern unterstützt:
html[lang="de"] q { quotes: "»" "«" }
q:lang(de) { quotes: "»" "«" }
Sein Ratschlag lautete
Ergreife die Feder nur, wenn Du müde bist!.
Abkürzungen (abbr)
Mit dem ‹abbr›-Tag lassen sich Abkürzungen innerhalb eines Textes markieren. Dabei werden diese im Firefox durch eine Linie kleiner Punkte unter dem Wort gekennzeichnet. Befindet sich der Cursor über einer Abkürzung, wird die Bedeutung, welche vorher mit dem Attribut title angegeben wurde, als Tooltip angezeigt.
W3C
Akronyme (acronym)
Die Auszeichnung von Akronymen geschieht anlog zu Abkürzungen:
EDV
Sourcecode Ausgabe (code)
Mit dem ‹code›-Tag lässt sich Quelltext innerhalb eines Fließtextes auszeichnen. Der Browser zeigt dabei den Text wie beim ‹pre›-Tag in einer nichtproportionalen (monospace) Schriftart an. Längere Passagen an Computercode sollten mit dem ‹pre›-Tag definiert werden.
Tastatureingaben (kbd)
Mit dem ‹kbd›-Tag lassen sich Textpassagen auszeichnen, welche durch den Leser per Tastatur eingegeben werden sollen. Also z. B. Tastatureingabe in Tutorials oder Bedienungsanleitungen.
Beispiele (samp)
Mit dem ‹samp›-Tag lassen sich Beispiele für Textausgaben von Computerprogrammen auszeichnen. Wird z. B. auch bei Tutorials verwendet, um Ausgaben von Programmen zu visualisieren.
Definitionen (dfn)
Mit dem ‹dfn›-Tag lassen sich Definitionen von Begriffen auszeichnen. Die Definition wird dabei kursiv dargestellt.
HTML ist eine Abkürzung für Hyper Text Markup Language.
Variablen (var)
Mit dem ‹var›-Tag lassen sich Variablen im Fließtext auszeichnen. Die Variable wird dabei kursiv dargestellt.
Die Methode
getElementByIDsetzt die Variable box auf das neue Element.
Hoch– oder Tiefstellen (sub / sup)
Mit dem ‹sub›-Tag lassen sich Textabschnitte tiefer stellen.
H2O
Mit dem ‹sup›-Tag wiederum lassen sich Textabschnitte höher stellen.
Dieses Wort hat eine Fußnote1
Die Browser reduzieren die Schriftgröße dabei jeweils auf die Hälfte, nutzen aber weiterhin den selben Schriftschnitt.
Laufrichtung des Textes (bdo)
Mit dem ‹bdo›-Tag lässt sich die Laufrichtung des Textes anpassen. Dabei sind zwei Parameter möglich, ltr für Text, der von links nach recht läuft, und rtl für die umgekehrte Laufrichtung.
Angewendet wird der Tag z. B., um kurze hebräische, arabische oder Textpassagen in anderen Sprachen anzuzeigen. Durch die Verwendung wird die Standard-Laufrichtung überschrieben.
مَرْحَبَاً
Listen
Es gibt verschiedene Arten Listen in HTML zu deklarieren: ungeordnete Listen, geordnete Listen sowie Definitionslisten.
Ungeordnete Liste
Eine ungeordnete Liste wird über das ‹ul›-Tag definiert, die einzelnen Listenelemente durch ein ‹li›-Tag:
- Erstes Element
- Zweites Element …
Per CSS lässt sich definieren, welches Zeichen den jeweiligen Listenelementen als Aufzählungszeichen vorangestellt wird:
ul li {
list-style-type: circle;
}
Neben circle gibt es noch eine ganze Reihe weiterer Möglichkeiten.
Listen lassen sich auch in andere Listen verschachteln, was folgendermaßen deklariert wird:
- Erstes Element
- Zweites Element
- Verschachteltes erstes Element
- Verschachteltes zweites Element
- Drittes Element
Geordnete Listen
Geordnete Listen unterscheiden sich von ungeordneten Listen darin, dass jedem Listenelement ein fortlaufender Wert z. B. eine Zahl vorangestellt wird. Sie werden anstatt über das ‹ul›-Tag mit einem ‹ol›-Tag definiert.
Definitionslisten
Definitionslisten unterscheiden sich von den beiden anderen Listenarten darin, dass hier die Listenpunkte nicht über ein Aufzählungszeichen oder eine Ordnungszahl definiert werden, sondern durch Begriffe, denen direkt die Erklärung folgt.
- Punkt Eins
- Erklärung zu Punkt Eins
- Punkt Zwei
- Erklärung zu Punkt Zwei
Tabellen
Tabellen wurde lange neben ihrer eigentlichen Funktion zum Layout von Webseiten eingesetzt. Dies ist heute nicht mehr notwendig. Tabellen dienen lediglich der Darstellung von tabellarischen Daten.
Die sehr umfangreichen Möglichkeiten zum Aufbau von Tabellen sind ausführlich bei SELFHTML erklärt.