В Internet Explorer 8 и выше и во всех других браузерах заполнение абсолютного элемента div не толкает содержимое вниз страницы при наличии отрицательного поля.
Но в Internet Explorer 7 заполнениев любом случае выталкивает содержимое вниз.
Этот код не использует JavaScript.
Вот скриншот его работы в Internet Explorer 8, Firefox и Chrome (вертикального переполнения нет):
![enter image description here](https://i.stack.imgur.com/Xe06y.png)
Вот рисунок того же кода, работающего в Internet Explorer 7:
![enter image description here](https://i.stack.imgur.com/qn32m.gif)
Вот мой код:
p {
margin-top: 0;
margin-bottom: 0;
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
#container {
min-height: 100%;
position: relative;
}
#header {
background: yellow;
height:50px;
}
#body {
padding-bottom: 50px; /* Height of the footer */
}
#footer {
position: absolute;
bottom: 0;
width: 100%;
height: 50px; /* Height of the footer */
background: green;
}
#body {
height: 100%;
width: 100%;
position: absolute;
margin-top: -50px;
padding-top: 50px;
}
#main-content-container {
height: 100%;
}
.inset-boxshadow-and-background {
background-color: red;
height: 100%;
width: 100%;
}
</style>
<!--[if lt IE 7]>
<style media="screen" type="text/css">
#container {
height: 100%;
}
</style>
<![endif]-->
<body>
<div id="container">
<div id="header">
</div>
<div class="body-parent">
<div id="body">
<div id="main-content-container">
<div class="inset-boxshadow-and-background">
<!-- Body start -->
<p>In this demo the footer is pushed to the bottom of the screen in all standards compliant web browsers even when there is only a small amount of content on the page. This with work with IE 6 and IE 5.5 too. Non-standards compliant browsers degrade gracefully by positioning the footer under the content as per normal. Read the <a href="https://matthewjamestaylor.com/bottom-footer">full article</a> for all the details.</p>
<!-- Body end -->
</div>
</div>
</div>
</div>
<div id="footer">
</div>
</div>
</body>
И, пожалуйста, не "Internet Explorer 7 бесполезен", потому что я знаю, что он воняет!