Ich habe mein Problem nun wie im folgenden Beispiel gelöst.
Was haltet ihr davon?
Zunächst mal nichts, weil Du da beweist, dass Du den Sinn von HTML nicht verstanden hast, Dich aber schon auf das darauf aufbauende CSS stürzt. Das geht über Lang in die Hose.
Tipp: Inner Inhalt strikt von Layout trennen. Dazu gehört auch, dass CSS nur per externem Stylesheet eingebunden wird.
<div id=„titel“>
Gut gewählte ID. Tipp: Auch Klassen-/ID-Bezeichnungen immer mit semantischen Benennungen bezeichnen, so wie alles in HTML.
<div class=„ueberschrift“>Überschrift</div>
Grober Fehler: Damit definierst Du eine Gruppe, keine Überschrift. Kein Browser kann hier erkennen, dass das eine Überschrift sein soll. Überschriften werden ausschließlich mit den Tags <h1> bis <h6> definiert.
<div class=„navigation“><< 1 2 3 4 5 >></div>
Zwei grobe Fehler.
- Ein Tag „<< 1 2 3 4 5 >>“ gibt es nicht. Maskiere also die Entities.
- Das ist keine Navigation. <div> bedeutet „Gruppe“. Eine Gruppe ist das auch nicht. Eine Navigation ist eine Liste von Links. Richtig wäre also z.B. eine <ul>, wo jeder Link noch als <li> definiert ist. In HTML5 gibts IMHO auch ein eigenes Tag für Navigationen.
Seiteninhalt<br>
Ich weiß, es ist ja alles nur ein Beispiel, aber es gibt keinen vernünftigen Grund, bei Beispielen fehlerhaften bzw. sinnfreien Code zu schreiben, nur weil es schneller geht.
Benutze <br> nie für einen optischen Zeilenumbruch. HTML definiert die Semantik, nicht die Optik. <br> macht nur in sehr wenigen Fällen einen Sinn, wo wirklich ein logischer Bruch eingebaut werden soll, wie z.B. bei Adressen oder Gedichten. Oft wird <br> mehrmals hintereinander benutzt, um Abstände zu definieren. Das ist definitiv falsch.
Optisch wirst Du damit aber vermutlich Deinen Effekt erzielen, wobei ich gerade gestehen muss, dass mir die Wirkung von inline-block nicht richtig vertraut ist, ich mir also die Frage stelle, ob das wirklich nötig ist und nicht Probleme mit älteren IEs verursacht, die das nicht verstehen. Wenn Du bei beiden kein display angibst, sind beide Block-Elemente und zusammen mit float funktioniert das gut, wobei dann allerdings div#navigation im HTML-Code *vor* dem anderen Element kommen muss. Warum? Das liest Du bei der Definition von „float“ nach und was es mit dem „Textfluss“ auf sich hat. Denn gefloatete Elemente werden aus dem Textfluss genommen.
Bei Fragen einfach fragen!
Liebe Grüße,
-Efchen