CSS - 100% de la Hauteur de l'en-Tête et Pied de page

Je suis en train de concevoir une page avec un header, une div principale qui s'étend jusqu'à 100% de la verticale du paysage (moins d'en-tête et pied de page) et un pied de page. Comme ce pic:

CSS - 100% de la Hauteur de l'en-Tête et Pied de page

Je peux obtenir l'en-tête et de la div principale de travail. Comme ceci:

    <div id="wrapper">

        <div class="header_div">HEADER</div>
        <div class="main_div">MAIN</div>
        <div class="footer_div">FOOTER</div>

    </div>

Avec ce CSS:

html {
    height: 100%;
 }

 body {
    margin: 0;
    padding: 0;
    height: 100%;
 }

.header_div{

    height: 40px;
    width: 100%;
    background-color: #000000;

}

.main_div{

    margin-bottom:40px;
    margin-top:40px;
    position:absolute;
    top:0px;
    left:0px;
    right:0px;
    bottom:0px;
    background-color: red;
}


.footer_div{

    position: relative;
    height: 40px;
    width: 100%;
    background-color: blue;
}

Donc la div principale commence 40px sur le dessus pour tenir compte de l'en-tête et puis s'arrête 40px de bas compte pour le pied de page. Cela fonctionne bien, mais je n'arrive pas à pied de div à afficher en dessous de la div principale. La façon dont il est maintenant avec position: relative il met le pied sur le dessus de la div principale. Si j'utilise position:absolute il le met en dessous de la div principale.

Je suis sûr que je suis juste le faire tort parce que le CSS n'est pas mon truc.

Toute aide sur ce serait génial.

Grâce

Est-il une raison pourquoi vous avez une position absolue .main_div? Qui sera la ce qui provoque le mauvais positionnement de votre pied de page. Si, au contraire, vous avez "position:relative", puis le pied de page doit s'afficher ci-dessous. -- edit -- Oh, je vois. Jamais l'esprit.

OriginalL'auteur Sequenzia | 2013-06-11