I wouldn't use absolute positioning for this since they lead to very brittle layouts that cannot resize very easily without the layout breaking.
Instead, I'd set the html and body selectors to 100% height, then set a wrapping DIV around everything save the footer and give that a min-height of 100% (IE 6 and earlier would have to use height: 100% served via a hack since they not only don't understand min-height but treat height as min-height as well) and a negative bottom margin to pull the footer up (which will require a height of its own).
I have a complex example here
, as well as an easier to understand version (without the side columns, which can be added by floating elements) of a 100% document height layout here
SitePoint also has a wonderful sticky post on the forums explaining how to achieve this without positioning as well:
If you need help trying to implement this type of layout using floats and margins, feel free to post here and we'll be more than happy to help you out (and by we I mean myself and everyone else here at CodingForums.com).