📖Strukturelemente & semantische Tags
Mehrere Tags können zu zusammengehörigen Blöcken zusammengefasst werden. Dazu gibt es sog. Strukturelemente. Es gibt dafür
das generische Strukturelement
<div>, welches nichts über den Inhalt aussagt, unddie semantischen Strukturelemente
<header>,<footer>,<nav>,<main>,<section>,<article>etc., welche für bestimmte Inhalte vorgesehen sind.
Strukturelement <div>
Das Strukturelement <div> (Document Division Element) ist ein generischer Container für Inhalte, der keine eigene Bedeutung hat, ausser dass er Elemente zusammenfasst, z.B. um sie im Layout zu positionieren oder zu stylen (mit Hilfe von CSS).
Beispiel: Wir möchten folgende Absätze mit einer Hintergrundfarbe hinterlegen, ohne einen weissen Absand dazwischen zu haben.
<p>Ich bin ein erster Absatz.</p>
<p>Ich bin ein zweiter Absatz.</p>p {
background-color: indianred;
}Dies entspricht jedoch nicht unserem gewünschten Ergebnis:
Lösung: Wenn umklammern die beiden Absätze mit einem <div>-Strukturelement und stylen das <div>-Element:
Aufgabe: Teste dieses <div>-Element mit Codepen.io
Semantische Strukturelemente
Semtantische Elemente sind gleichbedeutend wie <div>-Strukturelemente, definieren aber klar die Bedeutung des Inhalts, welches sie umfassen.
Semantische Elemente haben folgende Vorteile:
Bessere Lesbarkeit des HTML- und CSS-Codes
Suchmaschinen können die Struktur der Webseite besser verstehen (SEO)
Bessere Barrierefreiheit für Menschen unabhängig von Einschränkungen
Darum gilt:
Generische <div>-Elemente sollten nur genutzt werden, wenn kein semantisches Element geeignet ist.

Folgende Elemente werden häufig genutzt:
<header>
Das Element beinhaltet Kopfelemente der Website oder einer Sektion.
Navigation, Logo, Suchfeld
<nav>
Das Element beinhaltet eine Navigation.
Navigation
<main>
Das Element beinhaltet den Hauptinhalt der Website.
Hauptinhalt
<section>
Das Element unterteilt ein Dokument in mehrere allgemeine Sektionen.
Produkte, News
<article>
Eine Sektion kann mehrere Artikel umfassen.
Ein Produkt, ein News-Beitrag
<aside>
Das Element beinhaltet Informationen, welche mit dem Hauptinhalt der Website in Verbindung stehen.
Sidebar
<footer>
Das Element beinhaltet Fusselemente der Website oder einer Sektion.
Copyright, nützliche Links
Weitere Informationen auf https://www.w3schools.com/html/html5_semantic_elements.asp
Last updated
Was this helpful?