Layout-Angaben macht man mit CSS.
Dort bedeutet "height", wenn in % angegeben. "Höhe gemessen am Elternelement." Das heißt, wenn Du die Höhe per CSS angibst, müssen auch alle anderen Elternelement bis hin zum <html> die Höhe 100% bekommen.
Wie es sich mit dem veralteten HTML-Attribut height verhält, weiß ich nicht mehr, das nutze ich schon seit Ewigkeiten nicht mehr, CSS ist ja auch nicht mehr die jüngste Sprache ;-)
Das gilt natürlich für alle Block-Elemente, ob Frame, Textabsatz oder allgemeines Block-Element. Das heißt, wenn Du Dich - besser wärs - gegen Frames entscheidest, bleibt meine Aussage immer noch genauso richtig und nützlich.
Gruß,
-Efchen