Sto provando a far fluttuare una barra laterale di dimensioni dinamiche nella parte in alto a destra delle mie pagine web (ma sotto l'intestazione e nav) e avere il contenuto principale sulla pagina che scorre intorno (in una sorta di "L" tranne che con la parte inferiore della "L" molto spessa). La larghezza e l'altezza della barra laterale varieranno da una pagina all'altra, quindi non posso usare valori rigidi.IE7 Not Playing Nice with My Floating Sidebar
mio css assomiglia:
#main {
width: 850px;
height: auto;
}
#sidebar {
width: auto;
float: right;
}
(oltre a qualche codice di colore padding, margini, e lo sfondo penso che è irrilevante)
mio html assomiglia:
<div id="wrapper">
<div id="header"> /* header stuff */ </div>
<div id="nav"> /* nav stuff */ </div>
<div id="sidebar">
/* my sidebar content, really just an h3 and a ul */
</div>
<div id="main">
/* lots of content here */
</div>
</div>
I don capisco completamente perché devo prima avere la barra laterale div, ma questo codice funziona bene in FF, Chrome, Safari (Windows) e IE8. Ma su IE7 (e IE6, di cui non mi interessa), il contenuto principale viene spinto in basso nella parte inferiore della barra laterale, come se ci fosse un "clear: left" sul div sidebar (ma non c'è) .
Ho la sensazione che questo sia uno di quei malvagi bug di non conformità di IE7, soprattutto perché IE8 si comporta esattamente come gli altri browser. Ma non ho idea di come aggiustarlo.
Qualche idea? TIA.
Il mio doctype: Grazie per la spiegazione sull'ordinazione div. – user249493