So erstellen Sie schnell Layouts mit den Responsive Flexbox-Dienstprogrammen von Bootstrap 4

In diesem Tutorial zeige ich Ihnen, wie Sie mit den responsiven Flexbox-Dienstprogrammen von Bootstraps 4 schnell Layouts erstellen. Um diese Dienstprogramme besser zu verstehen, werden wir vier verschiedene Beispiele untersuchen.

Hinweis: Dieses Tutorial setzt voraus, dass Sie mit Bootstrap 4 und Flexbox vertraut sind. Schauen Sie sich diese Kurse an, um Sie in die richtige Richtung zu bringen.


Einführung der Responsive Breakpoints von Bootstrap 4

Bevor wir unsere Beispiele durchgehen, werfen wir einen Blick auf die Medienabfragen von Bootstrap. Das Framework definiert fünf pixelbasierte Haltepunkte für Rasterspalten, die in der folgenden Tabelle gezeigt werden:

Bildschirm Größe des Ansichtsfensters Klassenpräfix
Extra klein < 576px
.col- *
Klein ≥ 576px
.col-sm- *
Mittel ≥ 768px
.col-md- *
Groß ≥ 992px
.col-lg- *
Extra groß ≥ 1200px
.col-xl- *


Beispiel 1

Runter zum Geschäft! Im ersten Beispiel ist es unser Ziel, den Inhalt innerhalb eines Abschnitts horizontal und vertikal zu zentrieren:

1. Der Markup

Hier ist unser HTML:

Beachten Sie, dass wir eine Reihe von Flexbox-Klassen von Bootstrap verwendet haben. Zum Beispiel bezeichnen wir das als Sektion Element ist ein Flexcontainer, indem es das gibt d-flex Klasse. Darüber hinaus zentrieren Sie den Inhalt der .Reihe Element (standardmäßig ein Flex-Container) in beiden Richtungen verwenden wir das Ausrichtungsgegenstände zentrieren und Rechtfertigen-Inhalts-Center Klassen. 

2. Das CSS

Hier ist das zugehörige CSS:

Abschnitt min-height: 70vh; Hintergrundfarbe: rgba (86,61,124, 0,15); 

Und die Codepen-Demo:

Beispiel # 2

Im zweiten Beispiel ist es unser Ziel, das folgende Layout mit Blöcken zu erstellen, die Text enthalten, der am unteren und oberen Rand des Blocks angeordnet ist.

Dies ist das gewünschte Layout für große Bildschirme (wenn die Breite des Ansichtsfensters ≥ 1200px ist). Überprüfen Sie die Demo und passen Sie die Größe des Browser-Fensters an, um zu sehen, wie sich das Layout bei kleineren Bildschirmgrößen ändert.

1. Das HTML

Wir beginnen mit diesem typischen Bootstrap-Markup:

Zunächst konzentrieren wir uns auf das Markup, das das Layout für den Inhalt der Spalten festlegt. In jede unserer Spalten fügen wir die folgenden Markierungen hinzu:

 

Im obigen Code haben wir wieder eine Reihe von in Bootstrap integrierten Klassen für die Flexbox verwendet:

2. Das CSS

Das für unser Layout benötigte CSS:

Körper Rand oben: 30px;  a, a: hover Farbe: # 212529;  a: hover Textdekoration: keine;  .block height: 350px; Hintergrund: rgba (86,61,124, 0,15); Rand unten: 30px;  .label font-size: .85rem; Schriftdicke: fett; 

Die Codepen-Demo:

Bonus

Lassen Sie uns nur zum Üben zwei Minuten lang überlegen, um das gleiche Layout für den Inhalt der Spalten zu erreichen.

Zuerst entfernen wir das begründen-Inhalt-dazwischen Klasse aus dem Link und fügen Sie die mb-auto Klasse zum Element mit der Klasse von .Etikette. Alternativ hätten wir das auch ändern können .Beschreibung Element, indem Sie ihm die Klasse von geben mt-auto.

Das aktualisierte HTML:

  

Schauen wir uns noch einmal die Demo an:

Das Ergebnis sieht gleich aus, richtig?

Für einen zweiten Versuch könnten wir einige Zeilen unseres Markups durch diesen neuen Code ersetzen:

  

An dieser Stelle überprüfen wir die aktualisierte Demo:

Wieder einmal ist das generierte Layout genau das, was wir wollen!

Beispiel # 3

Im dritten Beispiel beginnen wir mit einem Layout, das dem vorherigen Beispiel ähnlich ist. Unser Ziel ist es, die Reihenfolge der dritten und vierten Spalte in Abhängigkeit von der Größe des Ansichtsfensters zu ändern.

Wenn das Ansichtsfenster mindestens 1200 Pixel breit ist, sollte die Reihenfolge der Spalten folgendermaßen lauten:

In allen anderen Fällen ändert sich die Reihenfolge der Spalten. Das dritte Element sollte nach dem vierten Element kommen:


1. Das HTML

Das Markup, das das Rasterlayout definiert:

Beachten Sie die Auftrag-* Klassen, die in der dritten, vierten und fünften Spalte erscheinen.

Wenn Sie die Reihenfolge der dritten und vierten Spalte ändern möchten, müssen Sie auch die Reihenfolge für die fünfte Spalte angeben. Wenn wir dies nicht tun, folgt die letzte Spalte immer der zweiten.

In jeder der Spalten zentrieren wir den Inhalt in beide Richtungen mit den folgenden bekannten Dienstprogrammklassen:

2. Das CSS

Hier ist das zugehörige CSS:

Körper Rand oben: 30px;  .block height: 250px; Farbe: # 212529; Hintergrund: rgba (86,61,124, 0,15); Rand unten: 30px; 

Und natürlich die Codepen-Demo:

Beispiel # 4

Im letzten Beispiel ist es unser Ziel, einen responsiven Header zu erstellen.

Wenn das Browserfenster mindestens 768px breit ist, sollte der Header so aussehen:

Auf kleineren Bildschirmen ändert sich das Layout wie folgt:

Um das Menü anzuzeigen, klicken wir auf die Schaltfläche in der rechten Ecke.

1. Das HTML

Unser HTML sieht so aus:

In diesem Fall verwenden wir eine Kombination aus benutzerdefinierten Klassen zusammen mit den Bootstrap-Klassen. 

Danke an die ml-auto Klasse verschieben wir die zweite Liste in die rechte Ecke des übergeordneten Containers.

2. Das CSS

Ein Teil des erforderlichen CSS wird unten gezeigt:

.Nav-Top Hintergrund: Rgba (86, 61, 124, 0,15);  .container-fluid max-width: 1200px;  .list-top margin-left: 50px;  .list li: nicht (: letztes Kind) margin-right: 15px;  .list li a color: rgba (0, 0, 0, 0,5); Übergang: Farbe 0,2 s;  .list li a: hover color: rgba (0, 0, 0, 0,7); Textdekoration: keine;  @media screen und (max-width: 767px) .list-top position: absolut; oben: 70px; links: 0; rechts: 0; transform: translateX (-100%); Rand links: 0; Polsterung: 1rem; Übergang: 0,3s transformieren;  .nav-top.is-active .list-top transform: none;  .list-top li flex-grow: 1; 

3. Das JavaScript

Hier ist das JavaScript, das für die Umschaltung der Sichtbarkeit des mobilen Menüs verantwortlich ist:

const toggleMenu = document.querySelector (". toggle-menu"); const navTop = document.querySelector (". nav-top"); toggleMenu.addEventListener ("click", () => navTop.classList.toggle ("is-active"););

Und die letzte Demo:

Fazit

In diesem ausführlichen Lernprogramm haben wir vier Beispiele aus der Praxis behandelt, die die responsiven Flexbox-Dienstprogramme von Bootstrap 4 nutzen. Ich hoffe, es hat Ihnen gefallen, was wir hier gebaut haben, und es hat Sie motiviert, das Erlernte in Ihren nächsten Bootstrap-Projekten anzuwenden.

Wenn Sie Fragen haben, lassen Sie es mich wie folgt wissen.

Nützliche Links

  • Responsive Flexbox-Dienstprogramme