Как упоминалось в ответе Афшина Мехрабани, вы должны установить body и высоту html на 100%, но чтобы получить нижний колонтитул, рассчитайте высоту оболочки:
#pagewrapper{
/* Firefox */
height: -moz-calc(100% - 100px); /*assume i.e. your header above the wrapper is 80 and the footer bellow is 20*/
/* WebKit */
height: -webkit-calc(100% - 100px);
/* Opera */
height: -o-calc(100% - 100px);
/* Standard */
height: calc(100% - 100px);
}