Я знаю, что это старый пост, но я хотел предоставить собственное решение (с использованием JavaScript):
/* css */
footer { width:100%; bottom:0; }
/* javascript */
if ($("body").height() < $(window).height()) {
document.querySelector('footer').style = 'position:absolute;'
}
Он должен работать с любым видом нижнего колонтитула любого размера.
РЕДАКТИРОВАТЬ: альтернативное решение (нет необходимости в CSS):
/* footer */
if ($("body").height() < $(window).height()) { /* if the page is not long enouth, let's put some more margin to the footer */
var height = $(document).height() - $("body").height();
document.querySelector("footer").style.marginTop = height + "px";
}