Questo è strano... magari ho scritto una vaccata da qualche parte... io di solito lavoro su mozilla e mi funziona tutot e poi sono costretto a fare i salti mortali per far funzionare le cose su IE (che lo possino!!)
Comunque, per quello che devi fare tu ti consiglio un markup più semlice
Codice PHP:
<div id="main">
<div id="main2">
<div id="leftcolumn">
<div class="menu">Contenuto sinistra</div>
</div>
<div id="rightcolumn">
<div class="innertube">Contenuto destra </div>
</div>
</div>
</div>
<div id="footer">Footer</div>
con questo css
Codice PHP:
html, body {
margin: 0;
padding: 0;
width: 100%;
}
#main {
margin: 0 auto; /*Center container on page*/
}
#leftcolumn {
float: left;
width: 220px; /*Width of left column*/
}
#rightcolumn {
margin-left: 230px;
}
#footer {
clear: both;
background: url(gfx/sfondo_piede.png) no-repeat;
text-align: center;
padding: 0px 0;
}
(potresti anche rimuovere i div "menu" e "innertube" se non ti servono per altre cose)
In questo modo la colonna di destra (grazie al margin-left) si posiziona e occupa tutto lo spazio concesso dal browser e non sei obbligato a definire "width" (cosa che comunque puoi fare)
Dopo di che applichi le due immagini
Codice PHP:
background: url(left.gif) repeat-y top right
background: url(right.gif) repeat-y top left;
una a "main" e una a "main2" (o solo ad una delle due...)
E il gioco è fatto
A quel punto puoi giocare con "background-color" e "background-image" in maniera tranquilla poichè tutto dovrebbe rimanere a posto sia su IE che su Firefox
Per dare un'occhiata a come si posizionano gli elementi metti dei background-color diversi e ti regoli
E in generale non usare "height" per i "contenuti". Lascia che le colonne si alzino e si abbassino in base a quanto sono "piene"