Sönke Tesch: "height" eines Elements

Beitrag lesen

Wenn ich nun für das entsprechende Element (<div>) die Höhe mit 100% angebe, ist die Box genau so hoch wie das Browser-Fenster. Passt der Text nicht mehr ganz auf die Seite, kann man zwar scollen, aber die Navigationsleiste, die eigentlich den ganzen linken Rand zieren soll, hört auf.

Mag sein, daß ich Dich falsch verstanden habe, aber dieses Verhalten erscheint mir fragwürdig, denn eine Höhe "100%" mit der Höhe des Browserfensters gleich zu setzen, ist ein wenig kritisch, denn sobald die Höhe des Fensterinhalts ungleich der des Fensters selbst ist, kommt es zu Konflikten: Wie will man mit diesem System ein Element setzen, das so hoch sein soll, wie das Dokument?

Benutzt Du einen in Sachen CSS vernünftigen Browser (Gecko, Opera), hast den Layout-Modus auf standardkompatibel gestellt (http://www.hut.fi/~hsivonen/doctype.html) und -wo wir schon dabei sind- eine Syntaxprüfung mit http://validator.w3.org und http://jigsaw.w3.org/css-validator/ durchgeführt? Falls nicht, solltest Du Dich besser nicht auf das Verlassen, was Dein Browser Dir anzeigt - und zwar erst recht, weil Du kein Tabellenlayout haben möchtest.

Gibt es eine Möglichkeit, die Höhe für ein <div>-Element so anzugeben, dass sie immer der Höhe der gesamten Seite entspricht, aber nicht länger wird?

Womit wir dann exakt bei dem Problem wären, welches ich oben angerissen habe: height (wie auch alle anderen gleichartigen Angaben) bezieht sich eigentlich auf die Höhe des Containers, in dem das betreffende Element liegt. Die daraus logische Folge ist, daß das von Dir bereits eingesetzte height:100% der Höhe des Dokuments entspricht und nicht der Höhe des Browserfensters. In einem Satz: Du hast richtig gedacht, der Hersteller Deines Browsers hat's verbockt.

Erster Lösungsansatz wäre, dem Browser standardkonformes Verhalten aufzuzwingen (siehe oben). Willst Du das nicht (was sehr schade wäre, denn was gibt es Verlässlicheres als einen offenen Standard), kannst Du auch versuchen, mit top:0 und bottom:0 die Gesamthöhe zu erreichen.

Gruß,
  soenk.e