creé un ejemplo en jsFiddle:
ACTUALIZADO jsFiddle: http://jsfiddle.net/5V288/1025/
HTML:
<body>
<div id="header"></div>
<div id="content"><div>
Content
</div></div>
<div id="footer"></div>
</body>
CSS :
html { height: 100%; }
body {
height:100%;
min-height: 100%;
background: #000000;
color: #FFFFFF;
position:relative;
}
#header {
height:50px;
width:100%;
top:0px;
left:0px;
background: #CCCCCC;
position:fixed;
}
#footer {
height:50px;
width:100%;
bottom:0px;
left:0px;
background: #CCCCCC;
position:fixed;
}
#content {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
height:100%;
padding: 0 20px;
}
#content > div {
padding: 70px 0;
}
Sin border-box el contenido será hei ght 100% + 140px relleno. Con el cuadro de borde, la altura del contenido será del 100% y el relleno estará dentro.
http://stackoverflow.com/questions/6158975/css-100-height-layout – Samich
¿Qué comportamiento desea si el contenido del cuerpo se desborda la altura de la pantalla? – bendataclear