рдЕрднрд┐рд╡рд╛рджрди! рдореИрдВ рдЖрдкрдХреЛ рд░рд╛рд╣реЗрд▓ рдПрдВрдбреНрд░рдпреВ рдХреЗ рд▓реЗрдЦ "рдЕрдВрдбрд░рд╕реНрдЯреИрдВрдбрд┐рдВрдЧ рд╕реАрдПрд╕рдПрд╕ рдЧреНрд░рд┐рдб: рдЧреНрд░рд┐рдб рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдПрд░рд┐рдпрд╛рдЬ" рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВ

CSS рдЧреНрд░рд┐рдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдЧреНрд░рд┐рдб рдкрд░ рддрддреНрд╡реЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реНрдЯрд╛рд░реНрдЯ рдФрд░ рдПрдВрдб рдЧреНрд░рд┐рдб рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдорд╛рд░реНрдХрдЕрдк рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рджреГрд╢реНрдп рддрд░реАрдХрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ grid-template-areas
рдПрдХ рдЧреНрд░рд┐рдб рдкрд░ рддрддреНрд╡реЛрдВ рдХреЛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдпрд╣ рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓реЗрдЦ:
, CSS Grid. Rachel Andrew , .
,
'grid-template-areas'
grid-template-areas
. ( ) . grid-template-areas
, grid-template-rows
grid-template-columns
, , .
тАУ . , :
grid-template-areas: "one one two two"
"one one two two"
"three three four four"
"three three four four";
grid-area
, . , test
one
, CSS:
.test {
grid-area: one;
}
CodePen, . ( ), grid- `grid-area' .
Grid- Firefox, , , тАУ .

'grid-template-areas'
. , .
тДЦ1:
, , .
, , ('.'
'...'
).
, grid-template-areas
:
grid-template-areas: "one one two two"
"one one two two"
". . four four"
"three three four four";
. "three" .

тДЦ2: тАУ
. , - , . , , , three
:
grid-template-areas: "one one three three"
"one one two two"
"three three four four"
"three three four four";
тДЦ3:
, , 'L' 'T'- тАУ :
grid-template-areas: "one one two two"
"one one one one"
"three three four four"
"three three four four";
grid-template-areas
, , . , .
, .
, , :
grid-template-areas: "one one two two"
"one one two two"
".... .... four four"
"three three four four";
, , :
grid-template-areas: "one one two two" "one one two two" "three three four four" "three three four four";
'grid-template-areas'
'grid-area'
, , , , grid-. , grid-, CodePen . , . grid-, grid-column-start
, grid-column-end
, grid-row-start
grid-row-end
.
: ┬л CSS Grid (2 ): Grid-┬╗, , grid-area
.
, , , :
grid-row-start
grid-column-start
grid-row-end
grid-column-end
.one {
grid-area: 1 / 1 / 3 / 3;
}
.two {
grid-area: 1 / 3 / 3 / 5;
}
.three {
grid-area: 3 / 1 / 5 / 3;
}
.four {
grid-area: 3 / 3 / 5 / 5;
}
grid-area
, , .
'grid-area'
grid-area
, , .
- , auto
, , ( ). , CSS grid-row-start: 3
, auto
. , 3 , , .
grid-area: 3;
'grid-area'
( Grid- ), grid-area
. , , , .
, , grid-area
.
grid-area
( ):
.grid {
display: grid;
grid-template-columns:
[one-start three-start] 1fr 1fr
[one-end three-end two-start four-start] 1fr 1fr [two-end four-end];
grid-template-rows:
[one-start two-start] 100px 100px
[one-end two-end three-start four-start] 100px 100px [three-end four-end];;
}
.two {
grid-area: two-start / two-start / two-end;
}
, grid-column-end
. , grid-column-end
, grid-column-start
. , , , auto
, , .
, grid-row-end
. , grid-row-start
, auto
.
CodePen-, , grid-area
:
, grid-area
, .
grid-template-areas
, , . , :
.one {
grid-row-start: one;
grid-row-end: one;
grid-column-start: one;
grid-row-end: one;
}
(-start)
, . (-end)
, тАУ .
, grid-area: one
, . тАУ one
, .
, Grid- , , ┬л CSS Grid┬╗ ┬лEditorial Design Patterns With CSS Grid And Named Columns┬╗.
'grid-template-areas'
grid-template-areas
, . , , , .
CodePen- , grid-.
, . , , . , . -start
-end
, .
, grid-, one
, , one-start
, one-end
.
, . , , , .
'grid-template-areas'
, grid-template-areas
CSS , . grid-template-areas
, .
. , 600px , grid-template-areas
, . , , , , .
.wrapper {
background-color: #fff;
padding: 1em;
display: grid;
gap: 20px;
grid-template-areas:
"hd"
"bd"
"sd"
"ft";
}
@media (min-width: 600px) {
.wrapper {
grid-template-columns: 3fr 1fr;
grid-template-areas:
"hd hd"
"bd sd"
"ft ft";
}
}
header { grid-area: hd; }
article {grid-area: bd; }
aside { grid-area: sd; }
footer { grid-area: ft; }
, , , . , Tab , , . , . , , .
рджрд░рдЕрд╕рд▓, рдпрд╣ рдЧреБрдгреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ grid-template-areas
рдФрд░ grid-area
рдорд╛рд░реНрдХрдЕрдк рдмрдирд╛рдиреЗ рдХрд╛ рд╕рд╛рд░ рд╣реИ ред рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ рдФрд░ рдЕрдХреНрд╕рд░ рд▓реЗрдЖрдЙрдЯ рдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдмрдирд╛рддреЗ рд╕рдордп рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред