-
Notifications
You must be signed in to change notification settings - Fork 8k
/
index.md
243 lines (178 loc) · 6.18 KB
/
index.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
---
title: grid-column-start
slug: Web/CSS/grid-column-start
l10n:
sourceCommit: 84b1729de4f527c8d81e44a38fca70ea4db97922
---
{{CSSRef}}
La propriété **`grid-column-start`** définit la position du début d'un élément au sein de la grille de façon automatique, absolue ou relative par rapport à la fin de l'élément. La position de début définit le bord de la [zone de grille](/fr/docs/Glossary/Grid_Areas) selon l'axe logique de bloc (celui orthogonal au sens de lecteur).
{{EmbedInteractiveExample("pages/css/grid-column-start.html")}}
## Syntaxe
```css
/* Valeur avec un mot-clé */
grid-column-start: auto;
/* Valeur <custom-ident> */
grid-column-start: unezonedegrille;
/* Valeurs <integer> + <custom-ident> */
grid-column-start: 2;
grid-column-start: unezonedegrille 4;
/* Valeurs span + <integer> + <custom-ident> */
grid-column-start: span 3;
grid-column-start: span unezonedegrille;
grid-column-start: span unezonedegrille 5;
/* Valeurs globales */
grid-column-start: inherit;
grid-column-start: initial;
grid-column-start: revert;
grid-column-start: revert-layer;
grid-column-start: unset;
```
La valeur de cette propriété prend la forme d'une seule valeur `<grid-line>`. Une telle valeur peut être définie avec :
- le mot-clé `auto`
- un identifiant ([`<custom-ident>`](/fr/docs/Web/CSS/custom-ident))
- ou une valeur entière ([`<integer>`](/fr/docs/Web/CSS/integer))
- ou un identifiant et un entier séparés par un espace
- ou le mot-clé `span` avec un identifiant ou un entier ou les deux.
### Valeurs
- `auto`
- : Un mot-clé qui indique que la propriété ne contribue pas au placement de l'élément sur la grille. Cela indique un placement automatique, une taille de fragment (<i lang="en">span</i>) automatique ou une taille par défaut de `1`.
- [`<custom-ident>`](/fr/docs/Web/CSS/custom-ident)
- : S'il existe une ligne nommée avec '\<custom-ident>-start', le début de l'élément coincide avec la première ligne correspondante.
> **Note :** Les noms des zones de grille sont générés implicitement. Ainsi, en utilisant `grid-column-start: toto;` cela sélectionnera le bord de la zone de grille nommée correspondante (sauf si une autre ligne `toto-start` a explicitement été déclarée).
Sinon, la valeur est traitée comme si on avait utilisé `<custom-ident>` et la valeur `1`.
- `<integer> && <custom-ident>?`
- : Le début de l'élément est placé sur la n-ième ligne de la grille. Si un entier négatif est utilisé, le comptage sera fait depuis la fin de la grille explicite.
Si un nom est fourni pour `<custom-ident>`, seules les lignes ayant ce nom seront comptées. S'il n'y a pas suffisamment de lignes existant avec ce nom, toutes les lignes implicites seront considérées afin de trouver la position.
Une valeur entière de `0` sera considérée comme invalide.
- `span && [ <integer> || <custom-ident> ]`
- : Le début de l'élément est placé relativement au bord de fin pour occuper n colonnes.
Si un nom fourni pour `<custom-ident>`, seules les lignes ayant ce nom seront comptées. S'il n'y a pas suffisamment de lignes existantes avec ce nom, toutes les lignes implicites du côté de la grille explicite et qui correspondent à la direction de la recherche seront comptées pour l'étendue de l'élément.
Si l'entier n'est pas défini, la valeur par défaut sera `1`. Les entiers négatifs ou nuls sont invalides.
`<custom-ident>` ne peut pas prendre la valeur `span`.
## Définition formelle
{{CSSInfo}}
## Syntaxe formelle
{{CSSSyntax}}
## Exemples
### Définir la colonne de début pour un élément de grille
#### HTML
```html
<div class="wrapper">
<div class="box1">Un</div>
<div class="box2">Deux</div>
<div class="box3">Trois</div>
<div class="box4">Quatre</div>
<div class="box5">Cinq</div>
</div>
```
#### CSS
```css
.wrapper {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-auto-rows: 100px;
}
.box1 {
grid-column-start: span 2;
grid-column-end: 4;
grid-row-start: 1;
grid-row-end: 3;
}
.box2 {
grid-column-start: 1;
grid-row-start: 3;
grid-row-end: 5;
}
```
```css hidden
* {
box-sizing: border-box;
}
.wrapper {
border: 2px solid #f76707;
border-radius: 5px;
background-color: #fff4e6;
}
.wrapper > div {
border: 2px solid #ffa94d;
border-radius: 5px;
background-color: #ffd8a8;
padding: 1em;
color: #d9480f;
}
.nested {
border: 2px solid #ffec99;
border-radius: 5px;
background-color: #fff9db;
padding: 1em;
}
```
#### Résultat
{{EmbedLiveSample('définir_la_colonne_de_début_pour_un_élément_de_grille', '230', '420')}}
### Placement relatif aux lignes
#### HTML
```html
<div class="wrapper">
<div class="box1">Un</div>
<div class="box2">Deux</div>
<div class="box3">Trois</div>
<div class="box4">Quatre</div>
<div class="box5">Cinq</div>
</div>
```
#### CSS
```css
.wrapper {
display: grid;
grid-template-columns: [main-start] 2fr [main] 1fr [main] 1fr [inter] 1fr [main];
}
.box1 {
grid-column-start: span 2 main;
grid-column-end: 5;
}
.box2 {
grid-column-start: span 2 main;
grid-column-end: inter;
}
.box3 {
grid-column-start: span 2 main;
grid-column-end: main;
}
```
```css hidden
* {
box-sizing: border-box;
}
.wrapper {
border: 2px solid #f76707;
border-radius: 5px;
background-color: #fff4e6;
}
.wrapper > div {
border: 2px solid #ffa94d;
border-radius: 5px;
background-color: #ffd8a8;
padding: 1em;
color: #d9480f;
}
.nested {
border: 2px solid #ffec99;
border-radius: 5px;
background-color: #fff9db;
padding: 1em;
}
```
#### Résultat
{{EmbedLiveSample('placement_relatif_aux_lignes', '230', '220')}}
## Spécifications
{{Specifications}}
## Compatibilité des navigateurs
{{Compat}}
## Voir aussi
- [`grid-column-end`](/fr/docs/Web/CSS/grid-column-end)
- [`grid-column`](/fr/docs/Web/CSS/grid-column)
- [`grid-row-start`](/fr/docs/Web/CSS/grid-row-start)
- [`grid-row-end`](/fr/docs/Web/CSS/grid-row-end)
- [`grid-row`](/fr/docs/Web/CSS/grid-row)
- [Guide : le placement sur les lignes d'une grille](/fr/docs/Web/CSS/CSS_grid_layout/Grid_layout_using_line-based_placement)
- [Tutoriel vidéo en anglais sur le placement sur les lignes](https://gridbyexample.com/video/series-line-based-placement/)