Asumiendo ( de tu ejemplo) que el contenido del header y footer es estático y podés determinar que valores en porcentajes tenés que asignarles, el sobrante se lo das al contenido
Código HTML:
Ver original<!DOCTYPE html>
/*<![CDATA[*/
html, body{
height: 100%;
padding: 0;
margin: 0;
}
div{
width: 960px;
margin: 0 -480px;
left: 50%;
position:absolute;
overflow: hidden;
}
#header{
top: 0;
height: 15%;
}
#footer{
bottom: 0;
height: 10%;
}
#contenido{
overflow-y: scroll;
height: 75%;
/* el top ara contenido = al height del header */
top: 15%;
}
/*]]>*/
header
Lorem ipsum dolor sit amet, longa sustineat in deinde duas horrido in fuerat est
footer
Saludos