Ich versuche, eine dynamische Größe Seitenleiste im oberen rechten Teil meiner Webseiten (aber unter der Kopfzeile und nav) zu schweben und haben den Hauptinhalt auf der Seite herumlaufen es (eine Art von "L" Form, außer mit dem unteren Teil des "L" wirklich dick). Die Breite und Höhe der Seitenleiste variiert von Seite zu Seite, daher kann ich keine harten Werte verwenden.IE7 spielt nicht gut mit meiner schwebenden Sidebar
Meine CSS wie folgt aussieht:
#main {
width: 850px;
height: auto;
}
#sidebar {
width: auto;
float: right;
}
(plus einige Polsterung, Marge und Hintergrundfarbe Code, den ich denke, ist belanglos)
Meine html wie folgt aussieht:
<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 verstehe nicht vollständig, warum ich die Seitenleiste div zuerst haben muss, aber es funktioniert gut in FF, Chrome, Safari (Windows) und IE8. Aber auf IE7 (und IE6, die mich nicht interessieren), wird der Hauptinhalt unter den unteren Rand der Seitenleiste geschoben, als ob es ein "clear: left" auf der Seitenleiste div gibt (aber das ist nicht) .
Ich habe das Gefühl, dies ist einer dieser bösen IE7 Non-Compliance-Bugs, vor allem weil IE8 genau wie die anderen Browser verhält. Aber ich habe keine Ahnung, wie ich es beheben kann.
Irgendwelche Ideen? TIA.
Mein Doctype: Danke für die Erklärung zur div Bestellung. – user249493