CSS (float) abhängig von Reihenfolge des HTML-Codes (div)
Verfasst: 14.01.2009 19:23
Hallo!
Mit gegebenem HTML-Code und gegebenem CSS-Code erhält man (zumindest im Firefox) folgendes Ergebnis: Screenshot 1
Nun würde ich gerne die Reihenfolge der div-Container im HTML-Code ändern:Bleibt der CSS-Code der gleiche, ändert sich das Resultat: Screenshot 2
Hat jemand eine Anregung, mit welchem CSS-Code trotz veränderter Reihenfolge ein fast identisches Bild wie im ersten Screenshot erreicht werden kann?
Wichtig ist dabei, dass der Text sich nicht überlagert. Dies geschieht beispielsweise bei absoluter Positionierung wie in folgendem CSS-CodeDas führt zu folgender Darstellung: Screenshot 3
Mit gegebenem HTML-Code
Code: Alles auswählen
<div id="wrapper">
<div id="navi">
<h2>Navigation</h2>
</div>
<div id="boxes">
<h2>Weitere Boxen</h2>
<p>Zum Beispiel Tagcloud, Partnerseiten, Werbung, ...</p>
</div>
<div id="content">
<h2>Inhalt</h2>
<p>Lorem ipsum dolor sit amet, ...</p>
</div>
</div>
Code: Alles auswählen
#wrapper
{
max-width: 40em;
}
#navi
{
float: left;
width: 10em;
border: 1px solid #0000FF;
}
#boxes
{
float: right;
width: 10em;
border: 1px solid #00FF00;
}
#content
{
width: 30em;
margin: 0 auto;
border: 1px solid #FF0000;
}
Nun würde ich gerne die Reihenfolge der div-Container im HTML-Code ändern:
Code: Alles auswählen
<div id="wrapper">
<div id="navi">
<h2>Navigation</h2>
</div>
<div id="content">
<h2>Inhalt</h2>
<p>Lorem ipsum dolor sit amet, ...</p>
</div>
<div id="boxes">
<h2>Weitere Boxen</h2>
<p>Zum Beispiel Tagcloud, Partnerseiten, Werbung, ...</p>
</div>
</div>
Hat jemand eine Anregung, mit welchem CSS-Code trotz veränderter Reihenfolge ein fast identisches Bild wie im ersten Screenshot erreicht werden kann?
Wichtig ist dabei, dass der Text sich nicht überlagert. Dies geschieht beispielsweise bei absoluter Positionierung wie in folgendem CSS-Code
Code: Alles auswählen
#wrapper
{
max-width: 40em;
position: relative;
}
#navi
{
float: left;
width: 10em;
border: 1px solid #0000FF;
}
#boxes
{
position: absolute;
top: 0;
right: 0;
width: 10em;
border: 1px solid #00FF00;
}
#content
{
width: 30em;
margin: 0 auto;
border: 1px solid #FF0000;
}