Bootstrap 5-Flex

Flexbox

Der größte Unterschied zwischen Bootstrap 3 und Bootstrap 4 & 5 liegt darin, dass Bootstrap 5 jetzt Flexbox anstelle von Floats für das Layout verwendet.

flexiblen Box-Layout-Modul einfacher elastische responsive Layout-Strukturen gestalten, ohne Floats oder Positioning zu verwenden.

Falls Sie mit Flex nicht vertraut sind, können Sie in unserem CSS Flexbox-Tutorial lernen.

Anmerkung:Flexbox wird in IE9 und früheren Versionen nicht unterstützt.

Anmerkung:Falls Sie Unterstützung für IE8-9 benötigen, verwenden Sie Bootstrap 3. Es ist die stabilste Bootstrap-Version und das Team unterstützt sie weiterhin bei kritischen Fehlerbehebungen und Dokumentänderungen. Es werden jedoch keine neuen Funktionen hinzugefügt.

Beispiel

Um einen Flexbox-Container zu erstellen und direkte Kinder in Flex-Elemente zu verwandeln, verwenden Sie bitte d-flex Klasse:

<div class="d-flex p-3 bg-secondary text-white">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Beispiel

Um einen Inline Flexbox-Container zu erstellen, verwenden Sie bitte d-inline-flex Klasse:

<div class="d-inline-flex p-3 bg-secondary text-white">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Horizontale Richtung

Verwende .flex-row Horizontale ( nebeneinander liegende ) Anzeige von elastischen Elementen. Dies ist die Standardeinstellung.

Hinweis:Verwenden .flex-row-reverse Kann horizontal rechtsbündig sein:

Beispiel

<div class="d-flex flex-row bg-secondary">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>
<div class="d-flex flex-row-reverse bg-secondary">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Vertikale Richtung

Verwende .flex-column Vertikal anzeigen von flex-Elementen (übereinander gestapelt), oder verwenden .flex-column-reverse Die senkrechte Richtung umkehren:

Beispiel

<div class="d-flex flex-column">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>
<div class="d-flex flex-column-reverse">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Inhalt ausrichten

Verwenden .justify-content-* Klassen können die Ausrichtung der elastischen Elemente ändern. Gültige Klassen sind:

  • start(Standard)
  • end
  • center
  • between
  • around

Beispiel

<div class="d-flex justify-content-start">...</div>
<div class="d-flex justify-content-end">...</div>
<div class="d-flex justify-content-center">...</div>
<div class="d-flex justify-content-between">...</div>
<div class="d-flex justify-content-around">...</div>

Probieren Sie es selbst aus

Gleiche Breite

Verwenden Sie auf Flex-Projekten .flex-fill Man kann sie gezwungen, gleich breit zu sein:

Beispiel

<div class="d-flex">
  <div class="p-2 bg-info flex-fill">Elastisches Element 1</div>
  <div class="p-2 bg-warning flex-fill">Elastisches Element 2</div>
  <div class="p-2 bg-primary flex-fill">Elastisches Element 3</div>
</div>

Probieren Sie es selbst aus

Ausdehnen

Verwenden Sie auf Flex-Projekten .flex-grow-1 Der zusätzliche Raum kann genutzt werden. In den folgenden Beispielen nehmen die ersten beiden flex-Elemente den erforderlichen Raum ein, während das letzte Element den verbleibenden verfügbaren Raum einnimmt:

Beispiel

<div class="d-flex">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary flex-grow-1">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Hinweis:Verwenden Sie auf Flex-Projekten .flex-shrink-1 kann es notwendig machen, sich zu verkleinern.

Reihenfolge

Verwenden .order Klassen können die visuelle Reihenfolge eines bestimmten Flex-Elements ändern. Gültige Klassen reichen von 0 bis 5, wobei die niedrigsten Nummern die höchste Priorität haben (order-1 wird vor order-2 angezeigt, und so weiter):

Beispiel

<div class="d-flex bg-secondary">
  <div class="p-2 bg-info order-3">Flex-Projekt 1</div>
  <div class="p-2 bg-warning order-2">Flex-Projekt 2</div>
  <div class="p-2 bg-primary order-1">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Automatische Außenabstände

Verwenden .ms-auto(Projekte nach rechts schieben)oder verwenden .me-auto(Projekte nach links schieben)Es ist einfach, automatische Ränder für Flex-Projekte hinzuzufügen:

Beispiel

<div class="d-flex bg-secondary">
  <div class="p-2 ms-auto bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 bg-primary">Flex-Projekt 3</div>
</div>
<div class="d-flex bg-secondary">
  <div class="p-2 bg-info">Flex-Projekt 1</div>
  <div class="p-2 bg-warning">Flex-Projekt 2</div>
  <div class="p-2 me-auto bg-primary">Flex-Projekt 3</div>
</div>

Probieren Sie es selbst aus

Zeilenumbruch

durch .flex-nowrap(Standard)、.flex-wrap oder .flex-wrap-reverse, um zu steuern, wie Flex-Projekte in Flex-Containern verpackt werden.

Beispiel

<div class="d-flex flex-wrap">..</div>
<div class="d-flex flex-wrap-reverse">..</div>
<div class="d-flex flex-nowrap">..</div>

Probieren Sie es selbst aus

Inhalt ausrichten

Verwende .align-content-* Kontrolliert die vertikale Ausrichtung von flexiblen Projekten. Gültige Klassen sind:

  • .align-content-start(Standard)
  • .align-content-end
  • .align-content-center
  • .between-content
  • .around-content
  • .stretch-content

Anmerkung:Diese Klassen haben keinen Einfluss auf die einzeiligen elastischen Elemente.

Klicken Sie auf den folgenden Button, um die Unterschiede zwischen den fünf Klassen zu sehen, indem Sie die vertikale Ausrichtung der elastischen Elemente im Beispielrahmen ändern:

Beispiel

<div class="d-flex flex-wrap start-content">..</div>
<div class="d-flex flex-wrap end-content">..</div>
<div class="d-flex flex-wrap center-content">..</div>
<div class="d-flex flex-wrap around-content">..</div>
<div class="d-flex flex-wrap stretch-content">..</div>

Probieren Sie es selbst aus

Ausrichten der Elemente

Verwende .align-items-* Klassische KontrolleEinzeiligDie vertikale Ausrichtung der elastischen Elemente. Gültige Klassen sind:

  • .start-items
  • .end-items
  • .center-items
  • .baseline-items
  • .stretch-items(Standard)

Klicken Sie auf den folgenden Button, um die Unterschiede zwischen den fünf Klassen zu sehen:

Beispiel

<div class="d-flex start-items">..</div>
<div class="d-flex end-items">..</div>
<div class="d-flex center-items">..</div>
<div class="d-flex baseline-items">..</div>
<div class="d-flex stretch-items">..</div>

Probieren Sie es selbst aus

Selbstausrichtung

Verwende .align-self-* Klassische KontrolleBestimme den elastischen ElementDie vertikale Ausrichtung. Gültige Klassen sind:

  • .start-self
  • .end-self
  • .center-self
  • .baseline-self
  • .stretch-self(Standard)

Klicken Sie auf die folgenden Schaltflächen, um die Unterschiede zwischen den fünf Klassen zu sehen:

Beispiel

<div class="d-flex bg-light" style="height:150px">
  <div class="p-2 border">Flex item 1</div>
  <div class="p-2 border align-self-start">Flex item 2</div>
  <div class="p-2 border">Flex item 3</div>
</div>

Probieren Sie es selbst aus

Responsives Flex-Format

Alle elastischen Klassen haben zusätzliche responsive Klassen, was die Auswahl einer bestimmten Flex-Klasse bei bestimmten Bildschirmgrößen erleichtert.

* kann durch sm, md, lg, xl oder xxl ersetzt werden, was für kleine, mittlere, große, sehr große und riesige Bildschirme steht.

Suchen Sie eine bestimmte elastische Klasse ..

Klasse Beschreibung Beispiel
Elastischer Behälter
.d-*-flex Flexbox-Container für verschiedene Bildschirme erstellen. Versuchen Sie es
.d-*-inline-flex Flexbox-Container in Zeilen für verschiedene Bildschirme erstellen. Versuchen Sie es
Richtung
.flex-*-row Elastische Elemente auf verschiedenen Bildschirmen horizontal anzeigen. Versuchen Sie es
.flex-*-row-reverse Elastische Elemente auf verschiedenen Bildschirmen horizontal und rechtsbündig anzeigen. Versuchen Sie es
.flex-*-column Elastische Elemente auf verschiedenen Bildschirmen vertikal anzeigen. Versuchen Sie es
.flex-*-column-reverse Elastische Elemente auf verschiedenen Bildschirmen im umgekehrten vertikalen Rhythmus anzeigen. Versuchen Sie es
Gleichzeiliges Inhalt
.justify-content-*-start Elastische Elemente vom Anfang (linksbündig) auf verschiedenen Bildschirmen anzeigen. Versuchen Sie es
.justify-content-*-end Elastische Elemente am Ende (rechtsbündig) auf verschiedenen Bildschirmen anzeigen. Versuchen Sie es
.justify-content-*-center Elastische Elemente in der Mitte des elastischen Behälters auf verschiedenen Bildschirmen anzeigen. Versuchen Sie es
.justify-content-*-between Elastische Elemente auf verschiedenen Bildschirmen gleichmäßig anzeigen. Versuchen Sie es
.justify-content-*-around Elastische Elemente auf verschiedenen Bildschirmen "umgeben" anzeigen. Versuchen Sie es
Füllen / Breitenanpassung
.flex-*-fill Erzwungene Anpassung der Breite elastischer Elemente auf verschiedenen Bildschirmen. Versuchen Sie es
Erweiterung
.flex-*-grow-0 Vermeiden Sie die Erweiterung der Elemente auf verschiedenen Bildschirmen.
.flex-*-grow-1 Erweiterung der Elemente auf verschiedenen Bildschirmen.
Zusammenziehung
.flex-*-shrink-0 Lassen Sie die Elemente auf verschiedenen Bildschirmen nicht zusammenziehen.
.flex-*-shrink-1 Lassen Sie die Elemente auf verschiedenen Bildschirmen zusammenziehen.
Reihenfolge
.order-*-0-12 Ändern Sie die Reihenfolge von 0 bis 12 auf kleinen Bildschirmen. Versuchen Sie es
Zeilenumbruch
.flex-*-nowrap Bringen Sie die Elemente auf verschiedenen Bildschirmen nicht in Zeilen. Versuchen Sie es
.flex-*-wrap Bringen Sie die Elemente auf verschiedenen Bildschirmen in Zeilen. Versuchen Sie es
.flex-*-wrap-reverse Drehen Sie die Umbrüche der Elemente auf verschiedenen Bildschirmen um. Versuchen Sie es
Inhalt ausrichten
.align-content-*-start Stellen Sie Elemente auf dem Anfang verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-content-*-end Stellen Sie Elemente auf dem Ende verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-content-*-center Stellen Sie Elemente auf den Mittelpunkt verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-content-*-around Stellen Sie Elemente um die verschiedenen Bildschirme herum ausgerichtet. Versuchen Sie es
.align-content-*-stretch Stellen Sie Elemente auf verschiedenen Bildschirmen aus. Versuchen Sie es
Ausrichten der Elemente
.align-items-*-start Stellen Sie Einzeilelemente auf dem Anfang verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-items-*-end Stellen Sie Einzeilelemente auf dem Ende verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-items-*-center Stellen Sie Einzeilelemente auf den Mittelpunkt verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-items-*-baseline Stellen Sie Einzeilelemente auf den Baselines verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-items-*-stretch Stellen Sie Einzeilelemente auf verschiedenen Bildschirmen aus. Versuchen Sie es
Ausrichten des Selbst
.align-self-*-start Stellen Sie flexible Elemente auf dem Anfang verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-self-*-end Stellen Sie flexible Elemente auf dem Ende verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-self-*-center Stellen Sie flexible Elemente auf den Mittelpunkt verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-self-*-baseline Stellen Sie flexible Elemente auf den Baselines verschiedener Bildschirme ausgerichtet. Versuchen Sie es
.align-self-*-stretch Dehnen Sie flexible Elemente auf verschiedenen Bildschirmen aus. Versuchen Sie es