В вашем css установите свойство display для div заголовка, содержимого и нижнего колонтитула в block.
#header {
display:block;
}
#content {
display:block;
}
#footer {
display: block;
}
Если ваши заголовки, содержимое и div нижнего колонтитула появляются на вашей html-странице в таком порядке, тогда нижний колонтитул всегда должен отображаться под вашим контентом, если в коде нет другой разметки, которая не показана в примере.