allora ho un piccolo problemino con un layout.. è composto così.. header, corpo, footer.

header è dove verrà inserito il logo, il footer dove ci sarà la firma mentre il corpo è suddiviso in tre colonne: menu sinistro, contenuto e menu destro. Fin qui va tutto bene apperte il fatto che quando il contenuto si allunga, si allunga tutta la pagina, mentre quando si allungano i due menu non si allunga la pagian ma anzi il testo va a finire sopra il layout. io vorrei ceh quando si allungano i menu si allungasse anche la struttura del layout, qualcuno sa come posso fare? o dove sto sbagliando?

ecco la pagina e lo stile css

pagina html

codice:
<div id="body">

<div id="header"></div>


<div id="corpo">

<div id="menusx">
<div class="menu">
<div class="titolo_menu">MENU SX</div>



Prova 1

Prova 2

Prova 3

aaaaaa












</p>
</div>
</div>

<div id="contenuto">
<div class="pagina">
<div class="titolo_pag">Titolo pagina</div>


Contenuto pagina</p>
</div>
</div>

<div id="menudx">
<div class="menu">
<div class="titolo_menu">MENU DX</div>



Prova 1

Prova 2

Prova 3

aaaaaa
</p>
</div>
</div>

</div>

<div id="footer">FOOTER</div>

</div>
stile css
codice:
body { 
	font-family: Geneva, Arial, Helvetica, sans-serif; 
	font-size: 11px;
	margin:0; 
	padding:0
}

a {
	color: #F88017;
	font-weight: bold;
	text-decoration : none;
}

a:hover {
	color: #FF0000;
	font-weight: bold;
	text-decoration : none;
}

#body { 
	text-align: center; 
	width: 800px;
    margin-top: 15px;
	margin-left: auto;
	margin-right: auto;  
}  
#header { 
	margin: 0px; 
	text-align:left;
	height: 150px;
}
#corpo { 
	margin: 0px; 
	text-align:left;
}
#footer { 
	margin: 0px; 
	padding: 5px;
	text-align: center;
}

#header { 
	border-top:1px solid #CCCCCC; 
	border-left:1px solid #CCCCCC; 
	border-right:1px solid #CCCCCC; 
	padding:1em 0; 
}

#corpo { 
	position:relative; 
	border:1px solid #CCCCCC; 
}
#menusx { 
	position:absolute; 
	top:0; 
	left:0; 
	width:180px; 
	padding: 5px; 
}
#contenuto { 
	margin:0 185px 0 185px; 
	border-left:1px solid #CCCCCC; 
	border-right:1px dotted #CCCCCC; 
	padding: 5px; 
}
#menudx { 
	position:absolute; 
	top:0; 
	right:0; 
	width:180px; 
	padding: 5px; 
}

#footer { 
	border-bottom:1px solid #CCCCCC; 
	border-left:1px solid #CCCCCC; 
	border-right:1px solid #CCCCCC; 
}

.menu {
	padding: 5px;
}

.titolo_menu {
	padding: 5px;
	text-align: center;
	font-weight: bold;
	border: 1px solid #add8e6;
	text-decoration: none; 
}

.pagina {
	padding: 5px;
	background-color: #EFEFEF;
	}
	
.titolo_pag {
	font-size: 15px;
	font-weight: bold;
	text-decoration: none; 
	padding-right: 10px;
}