Hallo
In HTML5 haben alle Elemente eine Bedeutung, nach denen sie auch angewandt werden müssen um den HTML-Regeln zu entsprechen. Webseitenersteller dürfen sich nicht durch die Benennung in die Irre führen lassen.
So sagen die Elemente weder etwas über die Position im Quelltext noch in der Darstellung aus. Weder muss ein header "oben" stehen noch ein footer "unten". Es gibt nur wenige Ausnahmen für die eine bestimmte Reihenfolge festgelegt ist.
Auch für das gewünschte Aussehen sind die Elemente nicht ausschlaggebend. Das i-Element ist so zum Beispiel nicht für eine kursive Darstellung gedacht und das b-Element nicht für eine fette Schrift. Das sind nur noch die Browservorgaben, die Anfänger gerne in die Irre führen. Für das Aussehen ist ausschließlich CSS zuständig.
Es ist auch eindeutig festgelegt, dass das div-Element nur noch dann verwendet werden darf, wenn es keine passendere (speziellere) Elemente gibt.
Deshalb sind auch die Zeiten von "Learning by doing" zum Erlernen von HTML / CSS vorbei. Wer die Elemente nur ihrer Bezeichnung nach verwendet, ohne deren Aufgabe wirklich zu kennen, liegt häufig falsch.
Jeder kann natürlich seine Webseite erstellen wie er will und sie wird in der Regel auch mit falsch angewandten HTML-Elementen funktionieren.
Bloß darf er dann nicht erwarten für so eine Webseite gelobt zu werden.
Einige falsch angewandte Elemente haben Auswirkungen, die vom Webseitenersteller nicht erwartet werden. Immer wieder zum Beispiel das table-Element, das halt nur für Tabellendaten gedacht ist und sich entsprechend verhält, um die Tabellendaten vernünftig anzuzeigen. Daran ändert sich auch nichts wenn Webseitenersteller verzweifelt und mit vielen Ausrufezeichen Nicht-Tabellendaten zu Tabellendaten umdeuten wollen.
Gruss
MrMurphy