Floatbreaker

Noch gestern haben Fabian und ich uns über meine mannigfaltigen Benamsungen für CSS-Klassen amüsiert und zwar für solche Konstruktionen:

<div class="floatbreaker">&nbsp;</div>

Ganz klar, hier wird folgender Effekt erzielt: Der Container um zwei Elemente, von denen eines gefloatet ist, wird soweit heruntergezogen, dass er beide Elemente umschliesst. Wichtigste Eigenschaft der Klasse .floatbreaker ist clear: both; im CSS. Das ist nötig, weil das gefloatete Element aus der Blockkonstruktion herausfällt und über den Rand des umschließenden Elementes herausgeht, wenn es länger ist, als der Content des Containers.

Aber schön ist das nicht. Zum einen muss man .floatbreaker seltsame Einstellungen geben, damit es allerhöchstens 1px hoch ist. Das kann man auch noch vermeiden, indem man die Konstruktion so einsetzt:

<div class="floatbreaker"><!-- --></div>

Zum anderen haben wir es hier mit semantisch unsinnigem Code zu tun, der keine inhaltliche Funktion hat —wie auch, ohne Inhalt— und im Grunde ein hässlicher Hilfsanker ist.

Gestern abend nun plötzlich finde ich folgende neue Techniken in der Diskussion, und ehrlich gesagt, die gefallen mir viel besser:

Im Kern haben diese neuen Techniken eine Idee: dem Container-Element wird eine overflow-Eigenschaft zugeordnet. Wer allerdings jetzt dachte, das funktioniert ohne Hacking in allen Browsern… natürlich nicht.

I’m the floatbreaker
the real undertaker

(Traditional)

Veröffentlicht von

Nico

Nico Brünjes ist Digitalkreativer und Internethandwerker. Seit mehr als 15 Jahren erdenkt, baut und programmiert er moderne, standardkonforme und zugängliche Webseiten in HTML, CSS und Javascript.