Bootstrap 5: Raster klein


Inhaltsverzeichnis

    Inhaltsverzeichnis anzeigen

Beispiel für ein kleines Gitter

  XSmall Small Medium Large Extra Large XXL
Class prefix .col- .col-sm- .col-md- .col-lg- .col-xl- .col-xxl-
Screen width <576px >=576px >=768px >=992px >=1200px >=1400px

Angenommen, wir haben ein einfaches Layout mit zwei Spalten. Wir möchten, dass die Spalten für kleine Geräte im Verhältnis 25 %/75 % aufgeteilt werden.

Als kleine Geräte gelten Geräte mit einer Bildschirmbreite von 576 Pixel bis 767 Pixel.

Für kleine Geräte verwenden wir die Klassen .col-sm-*.

Wir werden die folgenden Klassen zu unseren beiden Spalten hinzufügen:

<div class="col-sm-3">....</div>
<div class="col-sm-9">....</div>

Das folgende Beispiel führt zu einer Aufteilung von 25 %/75 % auf kleinen (und mittleren, großen, xlarge und xxlarge) Geräten. Auf besonders kleinen Geräten wird automatisch gestapelt (100 %):

.col-sm-3
.col-sm-9

Beispiel

<div class="container-fluid">
  <div class="row">
    <div class="col-sm-3 bg-primary">
      <p>Lorem ipsum...</p>
    </div>
    <div class="col-sm-9 bg-dark">
      <p>Sed ut perspiciatis...</p>
    </div>
  </div>
</div>

Probieren Sie es selbst aus →

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>

<div class="container-fluid mt-3">
  <h1>Small Grid</h1>
  <p>The following example will result in a 25%/75% split on small, medium, large, xlarge and xxlarge devices (<strong>576px and above</strong>). On extra small devices, it will stack (100% width).</p>
  <p>Resize the browser window to see the effect.</p>
  <div class="container-fluid">
    <div class="row">
      <div class="col-sm-3 bg-primary text-white">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<br>
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </div>
      <div class="col-sm-9 bg-dark text-white">
        Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
      </div>
    </div>
  </div>
</div>

</body>
</html>

Hinweis: Stellen Sie sicher, dass die Summe 12 oder weniger beträgt (es ist nicht erforderlich, dass Sie alle 12 verfügbaren Spalten verwenden):

Für eine Aufteilung von 33,3 %/66,6 % würden Sie .col-sm-4 und .col-sm-8 verwenden (und für eine 50 %/50 %-Aufteilung würden Sie .col-sm-6 und .col verwenden -sm-6):

.col-sm-4
.col-sm-8

.col-sm-6
.col-sm-6

Beispiel

<!-- 33.3/66.6% split: -->
<div class="container-fluid">
  <div class="row">
    <div class="col-sm-4 bg-primary">
      <p>Lorem ipsum...</p>
    </div>
    <div class="col-sm-8 bg-dark">
      <p>Sed ut perspiciatis...</p>
    </div>
  </div>
</div>
<!-- 50%/50% split: -->
<div class="container-fluid">
  <div class="row">
    <div class="col-sm-6 bg-primary">
      <p>Lorem ipsum...</p>
    </div>
    <div class="col-sm-6 bg-dark">
      <p>Sed ut perspiciatis...</p>
    </div>
  </div>
</div>

Probieren Sie es selbst aus →

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>

<div class="container-fluid mt-3">
  <h1>Small Grid</h1>
  <p>The following example will result in a 33.3%/66.6% split on small, medium, large and xlarge devices (<strong>576px and above</strong>). On extra small devices, it will stack (100% width).</p>
  <p>Resize the browser window to see the effect.</p>
  <div class="container-fluid">
    <div class="row">
      <div class="col-sm-4 bg-primary text-white">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<br>
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </div>
      <div class="col-sm-8 bg-dark text-white">
        Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
      </div>
    </div>
  </div>
  <br>
  
  <p>This example will result in a 50%/50% split on small, medium, large and xlarge devices (<strong>576px and above</strong>). On extra small devices, it will stack (100% width).</p>
  <div class="container-fluid">
    <div class="row">
      <div class="col-sm-6 bg-primary text-white">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<br>
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </div>
      <div class="col-sm-6 bg-dark text-white">
        Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
      </div>
    </div>
  </div>
</div>

</body>
</html>

Automatisches Layout von Spalten

In Bootstrap 5 gibt es eine einfache Möglichkeit, Spalten gleicher Breite für alle Geräte zu erstellen: Entfernen Sie einfach die Zahl aus .col-sm-* und verwenden Sie nur die .col-sm-Klasse für eine angegebene Anzahl von col-Elementen. Bootstrap erkennt, wie viele Spalten vorhanden sind, und jede Spalte erhält die gleiche Breite.

Wenn die Bildschirmgröße weniger als 576 Pixel beträgt, werden die Spalten horizontal gestapelt:

<!-- Two columns: 50% width on all screens, except for extra small (100% width) -->
<div class="row">
  <div class="col-sm">1 of 2</div>
  <div class="col-sm">2 of 2</div>
</div>
<!-- Four columns: 25% width on all screens, except for extra small (100% width)-->
<div class="row">
  <div class="col-sm">1 of 4</div>
  <div class="col-sm">2 of 4</div>
  <div class="col-sm">3 of 4</div>
  <div class="col-sm">4 of 4</div>
</div>
1 of 2
2 of 2

1 of 4
2 of 4
3 of 4
4 of 4

Probieren Sie es selbst aus →

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>

<div class="container-fluid mt-3">
  <h1>Responsive Auto Layout Columns</h1>
  <p>In Bootstrap 5, there is an easy way to create equal width columns: just use the <code>.col-sm</code> class on a specified number of col elements. Bootstrap will recognize how many columns there are, and each column will get the same width.</p>
  <p>On extra small screens (<strong>less than 576px</strong>), the columns will stack horizontally.</p>
  <div class="container-fluid">
    <div class="row">
      <div class="col-sm bg-primary text-white">1 of 2</div>
      <div class="col-sm bg-dark text-white">2 of 2</div>
    </div>  
  </div>
  <br>
  
  <div class="container-fluid">
    <div class="row">
      <div class="col-sm bg-primary text-white">1 of 4</div>
      <div class="col-sm bg-dark text-white">2 of 4</div>
      <div class="col-sm bg-primary text-white">3 of 4</div>
      <div class="col-sm bg-dark text-white">4 of 4</div>
    </div>  
  </div>
</div>

</body>
</html>

Im nächsten Kapitel wird gezeigt, wie Sie für mittelgroße Geräte einen anderen Teilungsprozentsatz hinzufügen.