CSS grid-gap Eigenschaft
Die CSS-Eigenschaft grid-gap legt die Größe des Abstands zwischen Zeilen und Spalten fest. Sehen Sie diese Eigenschaft in Aktion.
Die Eigenschaft grid-gap legt die Größe des Abstands (Rinne) zwischen den Zeilen und Spalten eines Grid-Layouts fest. Der Abstand ist der leere Raum zwischen Grid-Tracks — er fügt niemals Platz an den äußeren Rändern des Grids hinzu, sodass das eigene Padding des Containers den äußeren Rand weiterhin steuert.
grid-gap ist eine Kurzschreibweise für zwei Langhand-Eigenschaften:
- grid-row-gap — die Abstandsgröße zwischen Zeilen.
- grid-column-gap — die Abstandsgröße zwischen Spalten.
grid-gap vs. gap
Die standardmäßige gap-Eigenschaft hat grid-gap ersetzt. Die beiden verhalten sich innerhalb eines Grid-Containers identisch, aber grid-gap gilt jetzt als veraltet: Es existiert hauptsächlich für ältere Browser, die die mit Grid-Präfix versehene Version ausgeliefert haben, bevor das unpräfixierte gap standardisiert wurde. Moderne Browser unterstützen grid-gap weiterhin als Alias, sodass vorhandene Stylesheets funktionsfähig bleiben.
Für neue Projekte ist gap vorzuziehen — es funktioniert in Grid- und Flexbox-Layouts, während grid-gap ausschließlich für Grids galt:
/* Legacy (grid only) */
.grid { display: grid; grid-gap: 20px 40px; }
/* Modern, preferred */
.grid { display: grid; gap: 20px 40px; }| Anfangswert | 0 |
|---|---|
| Gilt für | Grid-Container. |
| Vererbbar | Nein. |
| Animierbar | Ja. grid-gap ist animierbar. |
| Version | CSS Grid Layout Module Level 1 |
| DOM-Syntax | object.style.gridGap = "30px 70px"; |
Syntax
CSS grid-gap Eigenschaft
grid-gap: <row-gap> <column-gap>;Die Eigenschaft akzeptiert einen oder zwei Längenwerte:
- Ein Wert setzt den Zeilen- und den Spaltenabstand auf dieselbe Größe.
- Zwei Werte setzen zuerst den Zeilenabstand und dann den Spaltenabstand (
grid-gap: 20px 40px;bedeutet einen 20px-Abstand zwischen Zeilen und einen 40px-Abstand zwischen Spalten).
Jeder Wert kann eine beliebige nicht-negative Länge (px, em, rem usw.) oder ein Prozentwert sein. Die Schlüsselwörter initial und inherit sind ebenfalls gültig.
Beispiel der grid-gap-Eigenschaft:
Beispiel eines Grid-Containers mit der grid-gap-Eigenschaft
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
.grid-container {
display: grid;
grid-template-columns: auto auto auto auto;
grid-gap: 60px;
background-color: #ccc;
padding: 10px;
}
.grid-container > div {
background-color: #666;
text-align: center;
padding: 20px 0;
font-size: 30px;
}
</style>
</head>
<body>
<h2>Grid-gap property example</h2>
<div class="grid-container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
<div>10</div>
<div>11</div>
<div>12</div>
</div>
</body>
</html>Ergebnis

Beispiel der grid-gap-Eigenschaft mit Prozentangaben:
Ein prozentualer Abstand wird relativ zu den eigenen Abmessungen des Grid-Containers berechnet — der Spaltenabstand ist ein Prozentsatz der Container-Breite und der Zeilenabstand ein Prozentsatz der Container-Höhe. Prozentangaben sind praktisch für fluid Layouts, aber sie lassen den Abstand mit dem Container wachsen, sodass feste Längen in der Regel vorhersehbarer sind.
Beispiel eines Grid-Containers, bei dem der Grid-Abstand durch Prozentangaben definiert wird
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
.grid-container {
display: grid;
grid-template-columns: auto auto auto auto;
grid-gap: 20%;
background-color: #ccc;
padding: 10px;
}
.grid-container > div {
background-color: #666;
text-align: center;
padding: 20px 0;
font-size: 30px;
}
</style>
</head>
<body>
<h2>Grid-gap property example</h2>
<div class="grid-container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
</div>
</body>
</html>Beispiel der grid-gap-Eigenschaft mit zwei Werten:
Wenn Sie zwei Werte angeben, legt der erste den Zeilenabstand und der zweite den Spaltenabstand fest. Hier werden die Zeilen durch 20px und die Spalten durch 80px getrennt:
Beispiel einer CSS grid-gap-Eigenschaft
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
.grid-container {
display: grid;
grid-template-columns: auto auto auto auto;
grid-gap: 20px 80px;
background-color: #ccc;
padding: 10px;
}
.grid-container > div {
background-color: #666;
text-align: center;
padding: 20px 0;
font-size: 30px;
}
</style>
</head>
<body>
<h2>Grid-gap property example</h2>
<div class="grid-container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
<div>10</div>
<div>11</div>
<div>12</div>
</div>
</body>
</html>Werte
| Wert | Beschreibung | Ausprobieren |
|---|---|---|
| grid-row-gap | Gibt die Größe des Abstands zwischen den Zeilen in einem Grid-Layout an. Der Standardwert ist 0. Bei der Zwei-Wert-Syntax entspricht dies dem ersten Wert. | |
| grid-column-gap | Gibt die Größe des Abstands zwischen den Spalten in einem Grid-Layout an. Der Standardwert ist 0. Bei der Zwei-Wert-Syntax entspricht dies dem zweiten Wert. | Ausprobieren » |
| initial | Setzt die Eigenschaft auf ihren Standardwert zurück. | |
| inherit | Erbt die Eigenschaft vom übergeordneten Element. |
Browser-Unterstützung
grid-gap wird in allen modernen Browsern unterstützt. Da es ein Alias für die Standard-Eigenschaft gap ist, benötigen Sie in der Regel nicht beide. Wenn Sie sehr alte Grid-Implementierungen unterstützen müssen, können Sie grid-gap für diese angeben und gap für alle anderen:
.grid {
display: grid;
grid-gap: 20px; /* fallback for legacy browsers */
gap: 20px; /* standard property wins where supported */
}Verwandte Eigenschaften
- grid-row-gap und grid-column-gap — die Langhand-Eigenschaften, die
grid-gapzusammenfasst. - grid — die Kurzschreibweise für ein gesamtes Grid-Layout.
- grid-template-columns — definiert die Spalten, zwischen denen die Abstände liegen.