Hallo Manfred,
http://homepage.hispeed.ch/hokyarc/
Ich habe den betreffenden Teil validiert und soweit wie möglich vereinfacht, und - einmal mit und einmal ohne "float-right" - hier verlinkt. Würde sich bitte jemand von euch den Quellcode mal ansehen und mir auf die Sprünge helfen? Im Mozilla/Firebird funktioniert alles einwandfrei, soweit ich das beurteilen kann.
Ich habe hier unter Linux auch nur Mozilla 1.5 und Konqueror 3.1.1
In Mozilla sieht's wohl aus, wie es soll. Der letzte Block oben floatet rechts.
In Konqueror ist der letzte Block auch im oberen Beispiel linksbuendig.
Dein HTML:
<div class="float-l">
<a class="nav" href="#.html">float-left</a>
</div>
<div class="float-r">
<a class="nav" href="#.html">buggy-float-right</a>
</div>
Die Klassen
.float-l { float: left; }
.float-r { float: right; }
wendest Du auf die DIVs an, aber fuer die DIVs selbst gibst Du keine Breite an,
sondern nur fuer die A darin.
a.nav { display: block;
height: 19px;
width: 130px;
margin: 5px;
padding: 5px;
border: 1px solid #99f;
}
Gemaess SelfHTML
[http://selfhtml.teamone.de/css/eigenschaften/positionierung.htm#float]
muss man bei float immer auch eine width fuer das Element angeben,
das gefloatet wird.
Versuch doch mal, float und width in die gleiche Definition reinzuschreiben:
div.float-l { float:left; width:140px; }
div.float-r { float:right; width:140px; }
oder so.
Fuer gute Browser wuerde ich sagen, dass der DIV ueberfluessig
ist, weil man ja A selbst zum Block-Level-Element machen kann
(was Du auch tust) und somit floaten kann.
Kann aber sein, dass der DIV fuer gewisse veraltete Browser
noch notwendig ist.
Die korrekte logische Auszeichnung fuer eine Navigationsleiste
waere uebrigens eine Liste (UL), die dann mit CSS gestaltet wird:
Folgende Seiten koennten Dir noch ein paar Ideen geben:
http://www.alistapart.com/articles/taminglists/
http://css.maxdesign.com.au/listamatic/
http://www.subotnik.net/style/list-box-test.html
http://devedge.netscape.com/viewsource/2002/list-indent/
Gruesse,
Thomas