HTMLCSSJavaScriptIndexRoadmapImpressum

Float und Clear

Mit float schiebst du ein Element nach links oder rechts. Der umgebende Text fließt daneben vorbei. Für Layouts nutzt du heute eher Flexbox oder Gridfloat bleibt aber wichtig für Bilder im Fließtext.

Was ist float?

Ein floatendes Element wird an den linken oder rechten Rand seines Containers geschoben. Im Gegensatz zu position: absolute fließt Text weiterhin daneben. Die wichtigsten Werte:

  • float: left – Element schwebt links, Inhalt fließt rechts daran vorbei
  • float: right – Element schwebt rechts, Inhalt fließt links daran vorbei
  • float: none – kein Float, Standardverhalten

float: left

Das Element rutscht nach links, der Inhalt nutzt den Platz rechts daneben – typisch für Bilder im Fließtext.

CSS float: left

1.box {
2    float: left;
3    width: 120px;
4    margin-right: 16px;
5}

Ausgabe

float: left

Dieser Text fließt um das links floatende Element herum und rutscht erst unter das Element, wenn die Zeile zu schmal wird.

float: right

Spiegelverkehrt zu float: left: Das Element steht rechts, der Inhalt fließt links daran vorbei.

CSS float: right

1.box {
2    float: right;
3    width: 120px;
4    margin-left: 16px;
5}

Ausgabe

float: right

Der Text steht links neben dem rechts floatenden Element.

float: none

Der Standardwert – das Element bleibt im normalen Fluss. Nützlich, um Float in Media Queries wieder aufzuheben.

CSS float: none

1.box {
2    float: none;
3}

clear

Mit clear bestimmst du, ob ein Element neben floatenden Elementen stehen darf oder erst darunter beginnt.

CSS clear

1.footer {
2    clear: both;
3}

Ausgabe

links
rechts
clear: both

clear: left, right und both

Mögliche Werte:

  • clear: left – Element beginnt unterhalb aller links floatenden Elemente
  • clear: right – Element beginnt unterhalb aller rechts floatenden Elemente
  • clear: both – Element beginnt unterhalb aller floatenden Elemente (links und rechts)
  • clear: none – kein Clear, Standardverhalten

CSS clear-Werte

1.element {
2    clear: left;   /* unterhalb aller links floatenden Elemente */
3}
4
5.element {
6    clear: right;  /* unterhalb aller rechts floatenden Elemente */
7}
8
9.element {
10    clear: both;   /* unterhalb aller floatenden Elemente */
11}

Float-Container bereinigen (Clearfix)

Floatende Kinder werden vom Eltern-Container oft nicht mehr in der Höhe erkannt. Ein Clearfix mit einem Pseudo-Element behebt das.

CSS Clearfix

1.container::after {
2    content: "";
3    display: table;
4    clear: both;
5}

Ausgabe

Ohne Clearfix: Der Container hat keine sichtbare Höhe.

Box 1
Box 2

Mit Clearfix: Der Container umschließt die Kinder wieder.

Box 1
Box 2

Für neue Layouts nutze Flexbox oder Grid. float eignet sich vor allem, wenn Text um Bilder oder Infoboxen fließen soll.

Im nächsten Kapitel lernst du: z-index