Lieber Benni2,
Allerdings verstehe ich nicht ganz, warum das nicht mit </div> (bzw. jetzt mit </ul>) aufgehoben wird.
die Eigenschaft float gilt für das jeweilige Element (<li>). Da wird nix "aufgehoben". Das Element "driftet" (engl: float) auf der Seite und der Rest ordnet sich drumherum an. In Deinem Falle enthält das <ul>-Element also keine "festen Bestandteile", da alle <li>-Elemente floaten. Das kannst Du testen, indem Du Deinem <ul>-Element einen border verpasst. Du wirst dann sehen, dass Dein <ul>-Element eine Höhe von 0px hat (denn innerhalb von <ul> gibt es nichts, das im Elementenfluss steht - alle <li>s floaten ja, und sonst gibt es dort nix!).
Erst ein nachfolgendes Element, das explizit nicht um Bisheriges drumherum fließen soll, kann mit seiner clear-Eigenschaft wie von Dir gewünscht in einer neuen Zeile beginnen.
| wozu das <div>-Element? Reicht es nicht, dem <ul>-Element eine Klasse (oder gar besser eine ID?) zu geben?
Da hast du vollkommen recht, danke dir. Allerings klappt das mit der ID nicht wirklich (falls damit <ul id="prebild"> gemeint ist).
Logisch, da müsstest Du schon Dein CSS von ".prebild" auf "#prebild" umschreiben (und auch den Nachfahrenselektor eventuell anpassen). Du darfst natürlich weiterhin die Klasse benutzen, ohne auf eine ID umzusteigen. Ich finde es im Grunde ebenso gut, wie mit ID. Dass Du das <div> eingemottet hast, sehe ich semantisch aber als eine Verbesserung. Solltest Du mehrere <ul class="prebild"> auf einer Seite planen, dann wäre eine ID ohnehin nicht sinnvoll.
Liebe Grüße,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)