grid-column
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2017.
Die grid-column
CSS-Kurzschreibweise legt die Größe und Position eines Grid-Elements innerhalb einer Rasterspalte fest, indem sie eine Linie, eine Spanne oder nichts (automatisch) zu ihrer Rasterplatzierung beiträgt. Dadurch werden der beginseitige und endseitige Rand ihres Rasterbereichs festgelegt.
Probieren Sie es aus
grid-column: 1;
grid-column: 1 / 3;
grid-column: 2 / -1;
grid-column: 1 / span 2;
<section class="default-example" id="default-example">
<div class="example-container">
<div class="transition-all" id="example-element">One</div>
<div>Two</div>
<div>Three</div>
</div>
</section>
.example-container {
border: 1px solid #c5c5c5;
display: grid;
grid-template-columns: 1fr 1.5fr 1fr;
grid-template-rows: repeat(3, minmax(40px, auto));
grid-gap: 10px;
width: 200px;
}
.example-container > div {
background-color: rgba(0, 0, 255, 0.2);
border: 3px solid blue;
}
#example-element {
background-color: rgba(255, 0, 200, 0.2);
border: 3px solid rebeccapurple;
}
Zusammengesetzte Eigenschaften
Diese Eigenschaft ist eine Kurzform für die folgenden CSS-Eigenschaften:
Syntax
/* Keyword values */
grid-column: auto;
grid-column: auto / auto;
/* <custom-ident> values */
grid-column: some-grid-area;
grid-column: some-grid-area / some-other-grid-area;
/* <integer> + <custom-ident> values */
grid-column: some-grid-area 4;
grid-column: 4 some-grid-area / 6;
/* span + <integer> + <custom-ident> values */
grid-column: span 3;
grid-column: span some-grid-area;
grid-column: 5 some-grid-area span;
grid-column: span 3 / 6;
grid-column: span some-grid-area / span some-other-grid-area;
grid-column: 5 some-grid-area span / 2 span;
/* Global values */
grid-column: inherit;
grid-column: initial;
grid-column: revert;
grid-column: revert-layer;
grid-column: unset;
Diese Eigenschaft wird als ein oder zwei <grid-line>
Werte angegeben.
Wenn zwei <grid-line>
Werte angegeben werden, sind sie durch ein /
getrennt.
Die Langform grid-column-start
wird auf den Wert vor dem Schrägstrich gesetzt, und die Langform grid-column-end
wird auf den Wert nach dem Schrägstrich gesetzt.
Jeder <grid-line>
Wert kann angegeben werden als:
- entweder das Schlüsselwort
auto
- oder ein
<custom-ident>
Wert - oder ein
<integer>
Wert - oder sowohl
<custom-ident>
als auch<integer>
, getrennt durch ein Leerzeichen - oder das Schlüsselwort
span
zusammen mit entweder einem<custom-ident>
oder einem<integer>
oder beidem.
Werte
auto
-
Ist ein Schlüsselwort, das angibt, dass die Eigenschaft nichts zur Platzierung des Grid-Elements beiträgt, was auf eine automatische Platzierung, eine automatische Spanne oder eine Standardspranne von
1
hinweist. <custom-ident>
-
Wenn es eine benannte Linie mit dem Namen
<custom-ident>-start
/<custom-ident>-end
gibt, trägt sie die erste solche Linie zur Platzierung des Grid-Elements bei.Hinweis: Benannte Rasterbereiche generieren automatisch implizite benannte Linien dieser Form, sodass die Angabe von
grid-column: foo;
den Start-/Endrand des benannten Rasterbereichs auswählt (es sei denn, eine andere Linie mit dem Namenfoo-start
/foo-end
wurde vorher explizit angegeben).Andernfalls wird dies so behandelt, als ob die ganze Zahl
1
zusammen mit dem<custom-ident>
angegeben worden wäre. <integer> && <custom-ident>?
-
Trägt die n-te Rasterlinie zur Platzierung des Grid-Elements bei. Wenn eine negative ganze Zahl angegeben wird, wird stattdessen rückwärts gezählt, beginnend vom Endrand des expliziten Rasters.
Wenn ein Name als
<custom-ident>
angegeben wird, werden nur Linien mit diesem Namen gezählt. Wenn nicht genügend Linien mit diesem Namen existieren, wird angenommen, dass alle impliziten Rasterlinien für die Bestimmung dieser Position diesen Namen tragen.Ein
<integer>
Wert von0
ist ungültig. span && [ <integer> || <custom-ident> ]
-
Trägt eine Rasterspanne zur Platzierung des Grid-Elements bei, sodass der entsprechende Rand des Rasterbereichs des Grid-Elements n Linien vom gegenüberliegenden Rand entfernt ist.
Wenn ein Name als
<custom-ident>
angegeben wird, werden nur Linien mit diesem Namen gezählt. Wenn nicht genügend Linien mit diesem Namen existieren, wird angenommen, dass alle impliziten Rasterlinien auf der Seite des expliziten Rasters, die der Suchrichtung entspricht, diesen Namen tragen, um diese Spanne zu zählen.Wenn die
<integer>
weggelassen wird, beträgt sie standardmäßig1
. Negative ganze Zahlen oder 0 sind ungültig.
Formale Definition
Anfangswert | wie die jeweiligen Kurzschreibweisen:
|
---|---|
Anwendbar auf | Gridelemente und absolut positionierte Boxen, deren beinhaltender Block ein Gridcontainer ist |
Vererbt | Nein |
Berechneter Wert | wie die jeweiligen Kurzschreibweisen:
|
Animationstyp | diskret |
Formale Syntax
grid-column =
<grid-line> [ / <grid-line> ]?
<grid-line> =
auto |
<custom-ident> |
[ [ <integer [-∞,-1]> | <integer [1,∞]> ] && <custom-ident>? ] |
[ span && [ <integer [1,∞]> || <custom-ident> ] ]
Beispiele
Festlegen von Rasterspaltengröße und -platzierung
HTML
<div id="grid">
<div id="item1"></div>
<div id="item2"></div>
<div id="item3"></div>
</div>
CSS
#grid {
display: grid;
height: 100px;
grid-template-columns: repeat(6, 1fr);
grid-template-rows: 100px;
}
#item1 {
background-color: lime;
}
#item2 {
background-color: yellow;
grid-column: 2 / 4;
}
#item3 {
background-color: blue;
grid-column: span 2 / 7;
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Grid Layout Module Level 2 # placement-shorthands |