Mehr Struktur
Die Tags aus HTML5 sind der Flut der div-Tags mitsamt unzähligen CSS-Klassen in Webseiten gegenüber getreten. Auch wenn sie von alten Browsern nicht unterstützt werden, können Tags wie article, nav, header und footer benutzt werden. Von allen modernen Browsern werden die HTML5-Tags unterstützt.
Frontend-Entwickler behalten einen besseren Überblick über den Aufbau der Seite. Die Semantik der HTML5-Tags erleichtert Suchmaschinen die Zuordnung der Webseite zu einem Thema.
Im Seitenkopf nichts Neues
HTML und Metadaten
!DOCTYPE | kein HTML-Tag im strengen Sinne, sondern die Information für die Browser, um welche HTML-Version es sich bei der aktuellen Webseite handelt. |
html | Kennzeichnet das Dokument als html-Dokument |
head | Informationen, die nicht im Browserfenster dargestellt werden |
title | Seitentitel, erscheint in der oberen Browserleiste |
base | Basis-URL einer Webseite |
link | erzeugt einen Link zwischen dem aktuellen und einem verwandten Dokument, z.B. für eine CSS-Datei |
meta | Informationen, die nicht im Browserfenster dargestellt werden |
style | Globale CSS-Stile, die innerhalb des Dokuments gelten |
Seitenbereiche festlegen
Sections
body | Vom Browser darstellbare Inhalte |
❺ article | Inhalte, die unabhängig für sich allein stehen können |
❺ section | Unterteilt den Inhalt in Abschnitte, i.d.R. mit eigenem header und footer |
❺ nav | Haupt-Navigation mit Links zu anderen Seiten der Webseite |
❺ aside | Inhalte, die nicht zu den Hauptinhalten einer Seite zählen |
h1, h2, h3, h4, h5, h6 | Überschriften |
hgroup | Gruppieren |
❺ header | Einleitung des Dokuments |
❺ footer | Informationen im Fuß eines Artikels oder Beitrags |
address | Kontaktinformationen für den Autor bzw. Inhalber der Seite |
Struktur reinbringen
Inhalt gruppieren
div | Behälter ohne eigene Eigenschaften |
p | Textabsatz |
hr | Horizontale Linie |
pre | Formatierter Text |
blockquote | Zitat |
ol | geordnete Liste |
ul | Ungeordnete Liste |
li | Listenelement |
dl | Beginn einer Definitionsliste |
dt | Begriff in einer Definitionsliste |
dd | Erklärung in einer Definitionsliste |
❺ figure | Container für Bilder, Grafik und Abbildungen |
❺ main | Hauptinhalt der Seite oder der Anwendung |
Dem Text eine Bedeutung geben
Semantische Tags für Text
a | Anker oder Hyperlink |
em / i / strong / b | leichte Betonung, starke Betonung |
small | kleiner Text |
cite | Kurzes Zitat |
q | Hochkommas / Anführungszeichen |
dfn | Definition |
abbr | Abkürzung |
❺ data | Daten mit maschinenlesbarer Version im value-Attribut |
❺ time | Datums- und Zeitangabe mit maschinenlesbarer Version im datetime-Attibut |
code | Darstellung von Computer-Code |
var | Darstellung als Variable in einem Programm |
samp | Darstellung als Computercode |
kbd | Darstellung für Tastatureingaben |
sub / sup | tiefgestellter und hochgestellter Text |
u | Text stylistisch (z.B. als falsche Rechtschreibung) absetzen |
❺ mark | Hebt einen Text gelb hinterlegt hervor |
❺ ruby / rt / rp / rb / rtc | Anmerkungen zur Aussprache / Erklärung in asiatischen Texten. |
bdi | Laufrichtung der Schrift innerhalb eines Absatzes |
bdo | Laufrichtung der Schrift |
span | Generischer Behälter für Inline-Inhalte |
br | Neue Zeile |
wbr | Zeilenumbruch möglich |
Bearbeiten von Dokumenten
del | Darstellung als gelöschter Text |
ins | Darstellung als eingefügter Text |
s | Nachfolger des veralteten strike-Tags. Heute mit der Bedeutung: nicht länger relevant oder gültig |
Medien einbetten
img | Bild |
❺ picture | Alternative Bildformate |
iframe | Fenster in ein anderes Dokument |
❺ embed | Einbetten von nicht-HTML-Inhalten über Plugins |
object | Spielt extern gespeicherte Medien in die Webseite |
param | Steueranweisungen für extern gespeicherte Medien |
❺ video | bettet Video in eine Webseite ein |
❺ audio | bettet Audio in eine Webseite ein |
❺ source | Verweis auf die Mediendatein eines video- bzw. audio-Tags |
❺ track | Externe Spuren z.B. Untertitel, Transcription (Mitschriften) und Übersetzungen |
area map | Bereiche einer Imagemap |
❺ svg | Bettet SVG-Grafik in HTML-Dokumente ein |
❺ mathml | Bettet Formeln in HTML-Dokumente ein |
Tabellen
table | Tabelle |
caption | Kurzbeschreibung einer Tabelle |
col | Tabellenspalte |
colgroup | Tabellenspaltengruppe |
tbody | Körper einer Tabelle |
thead | Tabellenkopf |
tbody | Tabellenfuß |
td | Tabellenzelle |
th | Kopfzelle einer Tabelle |
tr | Tabellenreihe |
Formulare
form | Behälter für ein Formular |
fieldset | Behälter für Formularinhalte |
label | Beschriftung eines Formularelements |
legend | Beschriftung eines Formularbereichs |
input | Eingabefeld |
❺ datalist | Eingabefeld |
button | Schaltfläche |
select | Behälter für eine Auswahlliste |
option | Option einer Auswahlliste |
optgroup | Optionsgruppe in einer Auswahlliste |
textarea | Eingabefeld für lange Texte |
❺ output | Ausgabe einer Berechnung, die durch ein Script erzeugt wurde (z.B. aktueller Wert des range-Sliders) |
❺ progress | Fortschrittsbalken |
❺ meter | Wert innerhalb eines bestimmten Bereichs |
❺ keygen | Erzeugt ein Paar aus öffentlichem und privaten Schlüssel; versendet den öffentlichen Schlüssel |
Script
noscript | Altervativer Inhalt für Browser ohne Scriptunterstützung |
script | Aufruf eines Scripts |
❺ canvas | erzeugt eine Zeichenfläche, die von Javascript mit Bildern gefüllt wird. |
❺ template | Das HTML template-Tag ist für Javascript gedacht und fügt Struktur und Inhalt on the fly ein. |
Interaktive Elemente
❺ details | Zusätzliche Informationen, die der Benutzer sehen und verbergen kann |
❺ summery | Klickbare Überschrift für details |
❺ dialog | Öffnet eine Overlay oder modales Fenster |
HTML5 SHIV / SHIM: Browser Support
Heute stellen alle modernen Browser Seiten mit HTML5-Tags korrekt dar. Internet Explorer bis Version 8 hingegen konnte mit HTML5-Tags nichts anfangen. Damit Webdesigner nicht 10 Jahre warten mussten, bereitete html5shiv das HTML5-Markup für alte Browser auf:
<script src="html5shiv.js"></script>
Der Gedanke hinter diesem Javascript: Wenn ein Element mit document.createElement("ELEM") erzeugt wird, wirkt CSS auch auf HTML-Tags, die vom Browser nicht unterstützt werden. HTML5 SHIV (oder SHIM) ist heute in Modernizr integriert.
Heute macht es keinen Sinn mehr, alte Browser mitzuziehen, die von ihren Herstellern schon längst nicht unterstützt werden.
Ausgestorbene Elemente
Die folgenden Elemente aus XHTML / HTML4 sind in HTML5 nicht mehr vertreten und gelten als unerwünscht oder missbilligt.
Ausgestorben
acronym | Alternative Bezeichnung |
big | großer Text |
tt | Darstellung als Teletext |
frameset | Kennzeichnet ein Dokument als Frameset |
frame | einzelner Rahmen |
noframes | Inhalte für Browser, die keine Frames darstellen |
bb | Browser Button, kam in HTML5 und verschwand wieder |
marquee | erzeugt ein scrollendes Banner |
hgroup | kam in HTML5 und verschwand wieder |
command | kam in HTML5, wurde von den Browsern nicht implementiert und verschwand wieder aus der Spezifikation |