position: fixed;
является единственным решением в вашем случае see this demo
CSS
html, body, #container {
height: 100%;
margin:0;
padding:0;
}
#footer {
position: fixed;
bottom: 0;
left: 0;
z-index: 10;
height: 3em;
width:100%;
background-color:grey;
}
HTML
My Dynamic Footer
Примечание: В скрипке, снимите текст комментария, чтобы увидеть колонтитул растягивая высоту после dynmic содержания высоты !!
================= РЕДАКТИРОВАНИЕ ============================ ========
согласно вашему комментарию, вот updated fiddle
======================= === JQuery EDIT ==========================
Использование JQuery вы можете достичь цели ... see fiddle
JQ требуется:
$("<div class='space'></div>").insertBefore("#footer");
CSS
html, body {
height: 100%;
margin:0;
padding:0;
}
.space
{
height:6em; /* this is problem solver */
}
#footer {
position: fixed;
bottom: 0;
left: 0;
z-index: 10;
height: 3em;
width:100%;
background-color:grey;
}
========================== Final EDIT с помощью JAVASCRIPT ==========================
javascript demo
Keeping выше HTML разметки же, нам е ниже JavaScript, чтобы решить вашу проблему:
var link = document.getElementById("footer")
var new_node = document.createElement("div");
new_node.className="space";
new_node.innerHTML = "";
link.parentNode.insertBefore(new_node, link.nextSibling);
Посмотрите по адресу: //www.cssstickyfooter.com/using-sticky-footer-code.html – sachinjain024
Ребята, я хотел бы изменить свой вопрос. На самом деле я динамически изменяю элементы DOM тела с помощью javascript. Поэтому у меня нет div с именем «content». т.е. структура моего HTML файл будет выглядеть так:
---- тело -----