height ist dafür die falsche Eingenschaft. Für den gewünschten Effekt wäre overflow: auto; oder overflow-y: auto; richtig.

Allerdings, es tut mir sehr leid, dass ich das jetzt sagen muss, solltest du deine Seitenstruktur noch einmal überdenken.

Du arbeitest sehr stark mit absoluter Positionierung, ohne dir über die Folgen davon im klaren zu sein (ein klassischer Anfängerfehler).

Wenn du etwas absolut positionierst nimmst du das Element aus dem Elementenfluss, das bedeutet, dass das Positionierte Element keinen Einfluss mehr auf das Elternelement hat.
Das Problem ensteht meiner Meinung nach dadurch, dass du zwar mit gutem HTML und CSS arbeiten möchtest, aber leider noch in der Zeilen und Spaltenwelt der Tabellendesigns festhängst.
Mit CSS baut man keine Tabellen nach, man gestaltet den Inhalt.
CSS kann (noch) nicht alles was mit Tabellen möglich ist, aber andersrum ist das genauso! Gerade deshalb ist es wichtig, sich mit den vielen Möglichkeiten von CSS zu beschäftigen und die Vor- und Nachteile der Eigenschaften nicht zu übersehen.
Absolute Positionierung ist toll, aber auch gefährlich, weil sich das Prinzip in verschiedenen Situationen verschieden auswirkt.

Im SELFHTML Forum sagt man immer, man sollte zuerst an den Inhalt denken, dann an das Design. Mit CSS ist das sehr gut möglich.
Ich bin dir nicht böse oder will dich niedermachen, ich habe auch mal mit Tabellen gearbeitet. Seit dem habe ich allerdings viel gelernt. ich hoffe dir wird es auch so ergehen