P.S.: Dass Dein HTML-Code aber auch weltfremd und semantischer
Unsinn ist, weißt Du ja sicher.
Worauf willst du hinaus?
Naja, welchen Sinn soll der HTML-Code denn machen?
Du definierst eine Gruppe mit der ID „wrapper“. Soweit so gut, die Gruppe beinhaltet zwei Elemente, das ist eine Gruppe, ist also prinzipiell semantisch in Ordnung.
Dann aber hast Du eine Gruppe mit der ID „oben“ (wo der Name schon schlecht gewählt ist, wenn Du das Element mal woanders haben willst - Trennung von Inhalt und Layout funktioniert auch bei Klassen- und ID-Bezeichnungen sehr gut!). Diese Gruppe beinhaltet aber nur Text. Das ist erstmal Unfug, weil Text nicht als Gruppe ausgezeichnet wird, sondern in einen Textabsatz gehört und zum anderen div#oben keine Gruppe ist, weil da nicht mindestens zwei Elemente drin sind.
Die dritte Gruppe in Deinem Code (div#unten, Namensvergabe s.o.) enthält auch nur ein Element, was man im Allgemeinen nicht als Gruppe bezeichnet. Das div hat hier keine wirkliche Existenzberechtigung.
Allein vom Inhalt her (und darum gehts ja bei HTML, das wird in Abhängigkeit vom Inhalt geschrieben und hat primär nichts mit dem Aussehen oder gar dem Layout zu tun) sind das zwei Textabsätze und deswegen bräuchte es auch nur zweimal das Tag p und kein einziges div.
Und weil der HTML-Code semantisch eher Unsinn ist, ist das Beispiel auch eher schlecht. In anständigen Seiten wird der Code so wie Du ihn da geschrieben hast, nicht vorkommen. Und wenn er semantisch einwandfrei ist, dann kommt das Problem so womöglich gar nicht mehr vor.
Darauf wollte ich hinaus. Du weißt, wozu HTML da ist? Was man unter „Semantik“ versteht?
Liebe Grüße,
-Efchen