The page is expanding to 100% of the size of the content. I think if you want it to behave differently, you're going to need to do something very different.
For that matter, I'm not sure CSS has access to the size of the Browser Window. If this is the case, then what I think you want is impossible to achieve with the tools you are using. If it does, then you want to set the size of the content to the remainder of the window height - footer height (as an absolute, and not a proportion). And it'll have to be recalculated on every resize event, as long as the content is not tall enough to force the footer off the page.