HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>Определение</a></li>
1 <ul><li><a>Определение</a></li>
2 <li><a>Свойства</a><ul><li><a>Display</a></li>
2 <li><a>Свойства</a><ul><li><a>Display</a></li>
3 <li><a>Columns</a></li>
3 <li><a>Columns</a></li>
4 <li><a>Ряды</a></li>
4 <li><a>Ряды</a></li>
5 <li><a>Области</a></li>
5 <li><a>Области</a></li>
6 <li><a>Сокращенное свойство</a></li>
6 <li><a>Сокращенное свойство</a></li>
7 </ul></li>
7 </ul></li>
8 <li><a>Свойства грид-компонентов</a></li>
8 <li><a>Свойства грид-компонентов</a></li>
9 <li><a>Отступы</a></li>
9 <li><a>Отступы</a></li>
10 <li><a>О выравнивании контейнеров</a><ul><li><a>Justify-items</a></li>
10 <li><a>О выравнивании контейнеров</a><ul><li><a>Justify-items</a></li>
11 <li><a>Align-items</a></li>
11 <li><a>Align-items</a></li>
12 <li><a>Justify-content</a></li>
12 <li><a>Justify-content</a></li>
13 <li><a>Align-content</a></li>
13 <li><a>Align-content</a></li>
14 </ul></li>
14 </ul></li>
15 <li><a>Выравнивание элементов</a><ul><li><a>Justify-self</a></li>
15 <li><a>Выравнивание элементов</a><ul><li><a>Justify-self</a></li>
16 <li><a>Align-self</a></li>
16 <li><a>Align-self</a></li>
17 </ul></li>
17 </ul></li>
18 <li><a>Вложенность</a></li>
18 <li><a>Вложенность</a></li>
19 <li><a>Кратко о важном</a></li>
19 <li><a>Кратко о важном</a></li>
20 </ul><p>Чтобы на экране при просмотре веб-ресурса информация отображалась корректно, необходимо грамотно организовать его верстку. Она распространяется на кнопки, блоки с текстом, навигацию и другие компоненты.</p>
20 </ul><p>Чтобы на экране при просмотре веб-ресурса информация отображалась корректно, необходимо грамотно организовать его верстку. Она распространяется на кнопки, блоки с текстом, навигацию и другие компоненты.</p>
21 <p>Верстка веб-страниц производится через специальный язык - CSS (Cascading Style Sheets). Он имеет множество элементов. Одним из важнейших для верстальщика, самым адаптивным и удобным, стал компонент grid. Далее предстоит познакомиться с соответствующий свойством более детально.</p>
21 <p>Верстка веб-страниц производится через специальный язык - CSS (Cascading Style Sheets). Он имеет множество элементов. Одним из важнейших для верстальщика, самым адаптивным и удобным, стал компонент grid. Далее предстоит познакомиться с соответствующий свойством более детально.</p>
22 <p>Предложенная информация не только объяснит, что такое grid, но и поможет уяснить правила создания этого компонента. Соответствующие сведения ориентированы на широкую публику. Они пригодятся тем, кто планирует заниматься версткой через CSS.</p>
22 <p>Предложенная информация не только объяснит, что такое grid, но и поможет уяснить правила создания этого компонента. Соответствующие сведения ориентированы на широкую публику. Они пригодятся тем, кто планирует заниматься версткой через CSS.</p>
23 <h2>Определение</h2>
23 <h2>Определение</h2>
24 <p>CSS Grid Layout - технология для размещения (раскладки) элементов на веб-странице. Она представляет собой двумерную сетку. На ней будут размещаться разнообразные компоненты будущего сервиса.</p>
24 <p>CSS Grid Layout - технология для размещения (раскладки) элементов на веб-странице. Она представляет собой двумерную сетку. На ней будут размещаться разнообразные компоненты будущего сервиса.</p>
25 <p>Grid - это набор свойств, с помощью которых получится разместить элементы на экране в нужном порядке, в нужном размере ячеек и задать расстояния между ними.</p>
25 <p>Grid - это набор свойств, с помощью которых получится разместить элементы на экране в нужном порядке, в нужном размере ячеек и задать расстояния между ними.</p>
26 <p>Grid хорошо приспосабливается к различным размерах экрана, что наделяет этот инструмент верстки хорошей адаптивностью. Структура грида напоминает обычный файл Excel: имеются как горизонтальные, так и вертикальные линии. Они совместно образуют множество разных ячеек. В них размещаются не какие-либо выгрузки по зарплатам, а составляющие веб-сайта: кнопки, блоки HTML-кода, текст, картинки и так далее.</p>
26 <p>Grid хорошо приспосабливается к различным размерах экрана, что наделяет этот инструмент верстки хорошей адаптивностью. Структура грида напоминает обычный файл Excel: имеются как горизонтальные, так и вертикальные линии. Они совместно образуют множество разных ячеек. В них размещаются не какие-либо выгрузки по зарплатам, а составляющие веб-сайта: кнопки, блоки HTML-кода, текст, картинки и так далее.</p>
27 <p>Части CSS-сетки grid называются так:</p>
27 <p>Части CSS-сетки grid называются так:</p>
28 <ol><li>Контейнер - наиболее важный элемент всей разметки. Он хранит в себе содержимое всей сетки.</li>
28 <ol><li>Контейнер - наиболее важный элемент всей разметки. Он хранит в себе содержимое всей сетки.</li>
29 <li>Ячейка - это единица грид-сетки. Она предусматривает возможность размещения внутри одного или нескольких блоков кода.</li>
29 <li>Ячейка - это единица грид-сетки. Она предусматривает возможность размещения внутри одного или нескольких блоков кода.</li>
30 <li>Линия - горизонтальная или вертикальная линия. Этот компонент разделяет столбцы и колонки.</li>
30 <li>Линия - горизонтальная или вертикальная линия. Этот компонент разделяет столбцы и колонки.</li>
31 <li>Строка - ряд из ячеек.</li>
31 <li>Строка - ряд из ячеек.</li>
32 <li>Столбец - колонка ячеек.</li>
32 <li>Столбец - колонка ячеек.</li>
33 <li>Элемент - какой-нибудь элемент веб-сервиса или сайта.</li>
33 <li>Элемент - какой-нибудь элемент веб-сервиса или сайта.</li>
34 <li>Область - пространство из ячеек. В CSS можно объединять ячейки в единое целое, а затем работать с ними как с одним компонентом.</li>
34 <li>Область - пространство из ячеек. В CSS можно объединять ячейки в единое целое, а затем работать с ними как с одним компонентом.</li>
35 </ol><p>Grid - это удобное средство для верстки. Оно отличается от Flexbox (другого популярного типа CSS-разметки) возможностью формирования двумерных таблиц. Это значит, что в них одновременно могут содержаться ряды и колонки. У Flexbox элементы выстраиваются или только в столбик, или в линию - сочетание данных приемов не поддерживается.</p>
35 </ol><p>Grid - это удобное средство для верстки. Оно отличается от Flexbox (другого популярного типа CSS-разметки) возможностью формирования двумерных таблиц. Это значит, что в них одновременно могут содержаться ряды и колонки. У Flexbox элементы выстраиваются или только в столбик, или в линию - сочетание данных приемов не поддерживается.</p>
36 <h2>Свойства</h2>
36 <h2>Свойства</h2>
37 <p>Свойства грид-контейнера используются для того, чтобы задавать параметры таблицы. А именно: количество строк и столбцов, их размеры, расположение и другие особенности. Далее предстоит познакомиться с этими самыми свойствами и их принципами работы.</p>
37 <p>Свойства грид-контейнера используются для того, чтобы задавать параметры таблицы. А именно: количество строк и столбцов, их размеры, расположение и другие особенности. Далее предстоит познакомиться с этими самыми свойствами и их принципами работы.</p>
38 <h3>Display</h3>
38 <h3>Display</h3>
39 <p>Если компоненту при верстке задано свойство grid со значением grid, такой элемент станет грид-контейнером. Его дочерние элементы будут подчиняться правилами grid-раскладки. Снаружи контейнер будет вести себя как обычный блок.</p>
39 <p>Если компоненту при верстке задано свойство grid со значением grid, такой элемент станет грид-контейнером. Его дочерние элементы будут подчиняться правилами grid-раскладки. Снаружи контейнер будет вести себя как обычный блок.</p>
40 <h3>Columns</h3>
40 <h3>Columns</h3>
41 <p>Для того, чтобы создать колонки, требуется записать их размеры через пробел. Габариты ячеек указываются в самых разных единицах измерения:</p>
41 <p>Для того, чтобы создать колонки, требуется записать их размеры через пробел. Габариты ячеек указываются в самых разных единицах измерения:</p>
42 <ul><li>процентах;</li>
42 <ul><li>процентах;</li>
43 <li>сантиметрах;</li>
43 <li>сантиметрах;</li>
44 <li>пикселях.</li>
44 <li>пикселях.</li>
45 </ul><p>Отличительной чертой грид-контейнера и его колонок является то, что верстка допускает в пределах одного свойства сочетать сразу несколько единиц изменения.</p>
45 </ul><p>Отличительной чертой грид-контейнера и его колонок является то, что верстка допускает в пределах одного свойства сочетать сразу несколько единиц изменения.</p>
46 <p>Чтобы лучше понимать принцип работы ячеек, необходимо рассмотреть наглядный пример: создаются три колонки. Первая будет занимать 1/3 экрана, вторая - только 100 px, третья - оставшееся пространство. Наиболее простой вариант - это запись размером через проценты:</p>
46 <p>Чтобы лучше понимать принцип работы ячеек, необходимо рассмотреть наглядный пример: создаются три колонки. Первая будет занимать 1/3 экрана, вторая - только 100 px, третья - оставшееся пространство. Наиболее простой вариант - это запись размером через проценты:</p>
47 <p>Общая ширина всех колонок будет больше 100 %. Это приведет к тому, что третья колонка выедет за пределы контейнера:</p>
47 <p>Общая ширина всех колонок будет больше 100 %. Это приведет к тому, что третья колонка выедет за пределы контейнера:</p>
48 <p>Чтобы таких ситуаций не было, для гридов придумали отдельную единицу измерения - фракцию (fr). С ее помощью удастся разделить свободное экранное пространство на несколько частей (блоков) и не подгонять проценты вручную.</p>
48 <p>Чтобы таких ситуаций не было, для гридов придумали отдельную единицу измерения - фракцию (fr). С ее помощью удастся разделить свободное экранное пространство на несколько частей (блоков) и не подгонять проценты вручную.</p>
49 <p>В рассматриваемом примере предстоит отдать одну часть свободного пространства одному столбцу (1fr), третьему - две (2fr), а тот, что будет размещаться по центру, получает положенные 100px. Выглядит в коде ситуация так:</p>
49 <p>В рассматриваемом примере предстоит отдать одну часть свободного пространства одному столбцу (1fr), третьему - две (2fr), а тот, что будет размещаться по центру, получает положенные 100px. Выглядит в коде ситуация так:</p>
50 <p>Ячейки будут отображаться на экране аккуратно, не выезжая за пределы грида.</p>
50 <p>Ячейки будут отображаться на экране аккуратно, не выезжая за пределы грида.</p>
51 <h3>Ряды</h3>
51 <h3>Ряды</h3>
52 <p>Следующее свойство grid-контейнера - это ряды (grid-template rows). Примером для рассмотрения этого свойства послужит задание размеров строк имеющейся таблице (сетке).</p>
52 <p>Следующее свойство grid-контейнера - это ряды (grid-template rows). Примером для рассмотрения этого свойства послужит задание размеров строк имеющейся таблице (сетке).</p>
53 <p>Здесь можно заметить, что размеры двух строк повторяются. Они занимают 2fr. Для того, чтобы все время не записывать одни и те же параметры (свойства), рекомендуется воспользоваться функцией repeat. В ней имеются два входных параметра:</p>
53 <p>Здесь можно заметить, что размеры двух строк повторяются. Они занимают 2fr. Для того, чтобы все время не записывать одни и те же параметры (свойства), рекомендуется воспользоваться функцией repeat. В ней имеются два входных параметра:</p>
54 <ul><li>размер строки (с измерением во фракциях);</li>
54 <ul><li>размер строки (с измерением во фракциях);</li>
55 <li>количество повторений.</li>
55 <li>количество повторений.</li>
56 </ul><p>Выглядеть соответствующее свойство будет так:</p>
56 </ul><p>Выглядеть соответствующее свойство будет так:</p>
57 <p>Это упрощенная, краткая запись. И полная интерпретация кода, и сокращенная могут встречаться в одной верстке. Их допустимо чередовать - в зависимости от контекста. В заданном примере без функции repeat можно было бы обойтись. Но, если требуется создать 15-20 и более колонок, она смогла бы сделать исходный код более читаемым и удобным.</p>
57 <p>Это упрощенная, краткая запись. И полная интерпретация кода, и сокращенная могут встречаться в одной верстке. Их допустимо чередовать - в зависимости от контекста. В заданном примере без функции repeat можно было бы обойтись. Но, если требуется создать 15-20 и более колонок, она смогла бы сделать исходный код более читаемым и удобным.</p>
58 <h3>Области</h3>
58 <h3>Области</h3>
59 <p>В CSS гриды имеют еще одно свойство - области (areas). Их размеры могут гибко регулироваться для дальнейшей верстки.</p>
59 <p>В CSS гриды имеют еще одно свойство - области (areas). Их размеры могут гибко регулироваться для дальнейшей верстки.</p>
60 <p>Для создания области в каждом CSS-файле объявляется свойство grid-area, параметром которого станет любое имя. Допустимо просто добавить соответствующий фрагмент в любое место CSS-документа:</p>
60 <p>Для создания области в каждом CSS-файле объявляется свойство grid-area, параметром которого станет любое имя. Допустимо просто добавить соответствующий фрагмент в любое место CSS-документа:</p>
61 <p>Теперь необходимо зайти в grid-контейнер и сформировать там матрицу имен областей:</p>
61 <p>Теперь необходимо зайти в grid-контейнер и сформировать там матрицу имен областей:</p>
62 <p>Теперь элементы на дисплее будут выстраиваться по заданному шаблону. Это свойство работает так: каждое имя в grid-template-areas соответствует определенному объекту. Одинаковые имена, которые стоят рядом друг с другом, будут формировать из нескольких ячеек одно целое. Это и есть грид-область:</p>
62 <p>Теперь элементы на дисплее будут выстраиваться по заданному шаблону. Это свойство работает так: каждое имя в grid-template-areas соответствует определенному объекту. Одинаковые имена, которые стоят рядом друг с другом, будут формировать из нескольких ячеек одно целое. Это и есть грид-область:</p>
63 <ol><li>Компонент A с именем f в заданном примере займет 25 ячеек.</li>
63 <ol><li>Компонент A с именем f в заданном примере займет 25 ячеек.</li>
64 <li>Элемент B (i) - 9.</li>
64 <li>Элемент B (i) - 9.</li>
65 <li>C (b) отнимает 4 ячейки.</li>
65 <li>C (b) отнимает 4 ячейки.</li>
66 <li>D (o) и E (n) - занимают соответственно по одной ячейке.</li>
66 <li>D (o) и E (n) - занимают соответственно по одной ячейке.</li>
67 </ol><p>Есть и другие свойства контейнера, о которых необходимо помнить при CSS-верстке.</p>
67 </ol><p>Есть и другие свойства контейнера, о которых необходимо помнить при CSS-верстке.</p>
68 <h3>Сокращенное свойство</h3>
68 <h3>Сокращенное свойство</h3>
69 <p>Свойство grid-template используется для более быстрого и удобного определения строк со столбцами, а также целых областей. В программном коде данный параметр будет выглядеть так:</p>
69 <p>Свойство grid-template используется для более быстрого и удобного определения строк со столбцами, а также целых областей. В программном коде данный параметр будет выглядеть так:</p>
70 <p>Соответствующее свойство позволяет всего одной строчкой сформировать полноценную таблицу. Для этого через слеш записывается количество столбцов и рядов. Вот пример создания сетки из трех строк по 1fr и двух столбцов по 2fr:</p>
70 <p>Соответствующее свойство позволяет всего одной строчкой сформировать полноценную таблицу. Для этого через слеш записывается количество столбцов и рядов. Вот пример создания сетки из трех строк по 1fr и двух столбцов по 2fr:</p>
71 <p>Свойство grid-template может принимать функцию repeat:</p>
71 <p>Свойство grid-template может принимать функцию repeat:</p>
72 <p>Сокращенная запись для объявления grid-областей тоже поддерживается. Для использования этого приема требуется объявить свойство grid-area. Сделать это необходимо для каждого отдельно взятого элемента:</p>
72 <p>Сокращенная запись для объявления grid-областей тоже поддерживается. Для использования этого приема требуется объявить свойство grid-area. Сделать это необходимо для каждого отдельно взятого элемента:</p>
73 <p>Все перечисленные ранее свойства относятся только к грид-контейнеру. Но есть параметры, которые присущи только grid-элементам. Они будут рассмотрены далее.</p>
73 <p>Все перечисленные ранее свойства относятся только к грид-контейнеру. Но есть параметры, которые присущи только grid-элементам. Они будут рассмотрены далее.</p>
74 <h2>Свойства грид-компонентов</h2>
74 <h2>Свойства грид-компонентов</h2>
75 <p>За счет свойств grid-элементов допускается прямое указание браузеру на то, где должны размещаться составляющие веб-страницы. Для этого потребуется воспользоваться двумя точками:</p>
75 <p>За счет свойств grid-элементов допускается прямое указание браузеру на то, где должны размещаться составляющие веб-страницы. Для этого потребуется воспользоваться двумя точками:</p>
76 <ul><li>с какой линии элемент будет начинаться;</li>
76 <ul><li>с какой линии элемент будет начинаться;</li>
77 <li>на какой линии компонент заканчивается.</li>
77 <li>на какой линии компонент заканчивается.</li>
78 </ul><p>Соответствующий принцип актуален как по горизонтали, так и по вертикали. Вот движение компонента по горизонтали:</p>
78 </ul><p>Соответствующий принцип актуален как по горизонтали, так и по вертикали. Вот движение компонента по горизонтали:</p>
79 <ul><li>grid-column-start: 1; - используется для записи начальной позиции (линии) столбцов;</li>
79 <ul><li>grid-column-start: 1; - используется для записи начальной позиции (линии) столбцов;</li>
80 <li>grid-column-end: 4; - задание конечной позиции (линии) столбцов;</li>
80 <li>grid-column-end: 4; - задание конечной позиции (линии) столбцов;</li>
81 <li>grid-column: grid-column-start / grid-column end; - объединенное свойство грид-линий столбцов, которое позволяет задать начало и конец.</li>
81 <li>grid-column: grid-column-start / grid-column end; - объединенное свойство грид-линий столбцов, которое позволяет задать начало и конец.</li>
82 </ul><p>А вот конструкции, которые помогут задать свойство по вертикали:</p>
82 </ul><p>А вот конструкции, которые помогут задать свойство по вертикали:</p>
83 <ul><li>grid-row-start 1; - задание начальной позиции (линии) строк;</li>
83 <ul><li>grid-row-start 1; - задание начальной позиции (линии) строк;</li>
84 <li>grid-row-end: 3; - указание конечной позиции (линии) строк;</li>
84 <li>grid-row-end: 3; - указание конечной позиции (линии) строк;</li>
85 <li>grid-row: grid-row-start / grid-row-end; - объединенное свойство грид-линий строк, с помощью которого задается их начало и конец.</li>
85 <li>grid-row: grid-row-start / grid-row-end; - объединенное свойство грид-линий строк, с помощью которого задается их начало и конец.</li>
86 </ul><p>Можно также воспользоваться свойством, которое объединит все перечисленные ранее параметры. Выглядеть в программном коде общее свойство будет так:</p>
86 </ul><p>Можно также воспользоваться свойством, которое объединит все перечисленные ранее параметры. Выглядеть в программном коде общее свойство будет так:</p>
87 <p>Теперь можно рассмотреть принцип действия соответствующих свойств на практике. Для этого параметры задаются буквами первым трем элементам:</p>
87 <p>Теперь можно рассмотреть принцип действия соответствующих свойств на практике. Для этого параметры задаются буквами первым трем элементам:</p>
88 <p>Предложенный фрагмент кода указывает буквам позиции, которые они должны занять в сетке:</p>
88 <p>Предложенный фрагмент кода указывает буквам позиции, которые они должны занять в сетке:</p>
89 <ol><li>Элемент A занимает пространство от первой до четвертой линии - как по горизонтали, так и по вертикали.</li>
89 <ol><li>Элемент A занимает пространство от первой до четвертой линии - как по горизонтали, так и по вертикали.</li>
90 <li>B простирается на четвертой-шестой линиях по горизонтали и от первой до третьей - по вертикали.</li>
90 <li>B простирается на четвертой-шестой линиях по горизонтали и от первой до третьей - по вертикали.</li>
91 <li>C - элемент, который занимает область от четвертой до пятой линии по горизонтали. По вертикали он простирается на третьей и четвертой линии.</li>
91 <li>C - элемент, который занимает область от четвертой до пятой линии по горизонтали. По вертикали он простирается на третьей и четвертой линии.</li>
92 </ol><p>Остальные элементы располагаются в сетке по остаточному принципу. Можно запустить данный фрагмент кода и посмотреть, что получится.</p>
92 </ol><p>Остальные элементы располагаются в сетке по остаточному принципу. Можно запустить данный фрагмент кода и посмотреть, что получится.</p>
93 <h2>Отступы</h2>
93 <h2>Отступы</h2>
94 <p>При помощи свойства grid-gap происходит регулирование интервалов между элементами в контейнере (отступы). Для этого необходимо воспользоваться двумя входными параметрами:</p>
94 <p>При помощи свойства grid-gap происходит регулирование интервалов между элементами в контейнере (отступы). Для этого необходимо воспользоваться двумя входными параметрами:</p>
95 <ul><li>column-gap - указывает на расстояние между колонками;</li>
95 <ul><li>column-gap - указывает на расстояние между колонками;</li>
96 <li>row-gap - используется для задания расстояния между имеющимися строчками.</li>
96 <li>row-gap - используется для задания расстояния между имеющимися строчками.</li>
97 </ul><p>В программном коде реализация свойства "отступы" будет иметь примерно такой вид:</p>
97 </ul><p>В программном коде реализация свойства "отступы" будет иметь примерно такой вид:</p>
98 <p>Gap имеет сокращенную запись, как и свойство grid-template. В ней параметры column-gap и row-gap записываются непосредственно через пробел:</p>
98 <p>Gap имеет сокращенную запись, как и свойство grid-template. В ней параметры column-gap и row-gap записываются непосредственно через пробел:</p>
99 <p>Основные свойства грид-контейнера и его компонентов изучены. Теперь предстоит разобраться с принципами выравнивания элементов в рамках того или иного контейнера/области.</p>
99 <p>Основные свойства грид-контейнера и его компонентов изучены. Теперь предстоит разобраться с принципами выравнивания элементов в рамках того или иного контейнера/области.</p>
100 <h2>О выравнивании контейнеров</h2>
100 <h2>О выравнивании контейнеров</h2>
101 <p>Изучая display grid, необходимо знать о том, как выравнивать контейнеры. Для этого используются разнообразные параметры и команды. Далее будут представлены конструкции, которые помогают выравнивать grid-контейнер.</p>
101 <p>Изучая display grid, необходимо знать о том, как выравнивать контейнеры. Для этого используются разнообразные параметры и команды. Далее будут представлены конструкции, которые помогают выравнивать grid-контейнер.</p>
102 <h3>Justify-items</h3>
102 <h3>Justify-items</h3>
103 <p>Соответствующая команда используется для того, чтобы выравнивать элементы в пределах области по горизонтали. Здесь необходимо пользоваться следующими записями и конструкциями:</p>
103 <p>Соответствующая команда используется для того, чтобы выравнивать элементы в пределах области по горизонтали. Здесь необходимо пользоваться следующими записями и конструкциями:</p>
104 <ul><li>justify-items: stretch; - используется для растягивания компонента по всей ширине grid ячейки;</li>
104 <ul><li>justify-items: stretch; - используется для растягивания компонента по всей ширине grid ячейки;</li>
105 <li>justify-items: start; - позволяет расположить компоненты в левой части области или ячейки;</li>
105 <li>justify-items: start; - позволяет расположить компоненты в левой части области или ячейки;</li>
106 <li>justify-items: center; - используется для расположения grid ячеек или областей в центре сетки;</li>
106 <li>justify-items: center; - используется для расположения grid ячеек или областей в центре сетки;</li>
107 <li>justify-items: end; - конструкция, позволяющая располагать компоненты и области в правой части.</li>
107 <li>justify-items: end; - конструкция, позволяющая располагать компоненты и области в правой части.</li>
108 </ul><p>Это не единственная команда grid, позволяющая располагать элементы на веб-странице в пределах сетки в желаемой позиции. Существуют другие полезные конструкции.</p>
108 </ul><p>Это не единственная команда grid, позволяющая располагать элементы на веб-странице в пределах сетки в желаемой позиции. Существуют другие полезные конструкции.</p>
109 <h3>Align-items</h3>
109 <h3>Align-items</h3>
110 <p>Команда, которая позволяет выравнивать grid-элементы в пределах заданной области по вертикали. Здесь используются следующие команды:</p>
110 <p>Команда, которая позволяет выравнивать grid-элементы в пределах заданной области по вертикали. Здесь используются следующие команды:</p>
111 <ul><li>align-items: stretch; - используется для того, чтобы растянуть составляющие страницы на всю длину grid-ячейки;</li>
111 <ul><li>align-items: stretch; - используется для того, чтобы растянуть составляющие страницы на всю длину grid-ячейки;</li>
112 <li>align-items: start; - располагает компоненты в верхней части ячейки;</li>
112 <li>align-items: start; - располагает компоненты в верхней части ячейки;</li>
113 <li>align-items: center; - расположение по центру "сетки";</li>
113 <li>align-items: center; - расположение по центру "сетки";</li>
114 <li>align-items: end; - конструкция, позволяющая располагать элементы в нижней части grid-ячейки.</li>
114 <li>align-items: end; - конструкция, позволяющая располагать элементы в нижней части grid-ячейки.</li>
115 </ul><p>Рассмотренные команды позволяют выравнивать элементы в grid относительно определенной области. Но есть конструкции, поддерживающее расположение составляющих веб-страницы относительно всего контейнера.</p>
115 </ul><p>Рассмотренные команды позволяют выравнивать элементы в grid относительно определенной области. Но есть конструкции, поддерживающее расположение составляющих веб-страницы относительно всего контейнера.</p>
116 <h3>Justify-content</h3>
116 <h3>Justify-content</h3>
117 <p>Команда, которая поможет выровнять составляющие веб-сайта или сервиса относительно всего grid-контейнера по горизонтали. Здесь можно пользоваться следующими операциями:</p>
117 <p>Команда, которая поможет выровнять составляющие веб-сайта или сервиса относительно всего grid-контейнера по горизонтали. Здесь можно пользоваться следующими операциями:</p>
118 <ul><li>justify-content: start; - расположение составляющих в левой части контейнера;</li>
118 <ul><li>justify-content: start; - расположение составляющих в левой части контейнера;</li>
119 <li>justify-content: center; - расположение по центру grid-контейнера;</li>
119 <li>justify-content: center; - расположение по центру grid-контейнера;</li>
120 <li>justify-content: end; - конструкция, помогающая разместить составляющие веб-страницы в правой части grid-контейнера;</li>
120 <li>justify-content: end; - конструкция, помогающая разместить составляющие веб-страницы в правой части grid-контейнера;</li>
121 <li>justify-content: space-between; - распределение по левому и правому краю так, чтобы первая составляющая находилась ближе к началу, а последняя - к концу;</li>
121 <li>justify-content: space-between; - распределение по левому и правому краю так, чтобы первая составляющая находилась ближе к началу, а последняя - к концу;</li>
122 <li>justify-content: space-around; - распределение с равным пространством между составляющими сайта и половиной этого пространства от краев;</li>
122 <li>justify-content: space-around; - распределение с равным пространством между составляющими сайта и половиной этого пространства от краев;</li>
123 <li>justify-content: space-evenly; - используется для распределения положения с равным пространством от краев и непосредственно между имеющимися элементами.</li>
123 <li>justify-content: space-evenly; - используется для распределения положения с равным пространством от краев и непосредственно между имеющимися элементами.</li>
124 </ul><p>Изучая display grid, необходимо помнить - выравнивание производится не только по горизонтали, но и по вертикали. Для этого CSS предусматривает отдельные конструкции.</p>
124 </ul><p>Изучая display grid, необходимо помнить - выравнивание производится не только по горизонтали, но и по вертикали. Для этого CSS предусматривает отдельные конструкции.</p>
125 <h3>Align-content</h3>
125 <h3>Align-content</h3>
126 <p>Align-content - команда, позволяющая выравнивать составляющие веб-портала на дисплее в пределах имеющегося контейнера. Выравнивание осуществляется по вертикали. Для него необходимо задействовать следующие конструкции:</p>
126 <p>Align-content - команда, позволяющая выравнивать составляющие веб-портала на дисплее в пределах имеющегося контейнера. Выравнивание осуществляется по вертикали. Для него необходимо задействовать следующие конструкции:</p>
127 <ul><li>align-content: start; - расположение в верхней части grid-контейнера;</li>
127 <ul><li>align-content: start; - расположение в верхней части grid-контейнера;</li>
128 <li>align-content: center; - выравнивание по центру (по середине);</li>
128 <li>align-content: center; - выравнивание по центру (по середине);</li>
129 <li>align-content: space-between; - расположение по верхнему и нижнему краю так, чтобы первый компонент оказался ближе к началу, а последний - к концу;</li>
129 <li>align-content: space-between; - расположение по верхнему и нижнему краю так, чтобы первый компонент оказался ближе к началу, а последний - к концу;</li>
130 <li>align-content: space-around; - распределение с равным пространством между компонентами и половиной имеющегося свободного места.</li>
130 <li>align-content: space-around; - распределение с равным пространством между компонентами и половиной имеющегося свободного места.</li>
131 </ul><p>Все эти команды использовались для выравнивания сразу всех компонентов в grid тем или иным образом. При верстке иногда возникает необходимость выравнивания отдельных составляющих на странице.</p>
131 </ul><p>Все эти команды использовались для выравнивания сразу всех компонентов в grid тем или иным образом. При верстке иногда возникает необходимость выравнивания отдельных составляющих на странице.</p>
132 <h2>Выравнивание элементов</h2>
132 <h2>Выравнивание элементов</h2>
133 <p>Это параметры, которые используются для работы с отдельными grid-компонентами. Свойства будут приписываться не всему контейнеру, а только одной его составляющей. Примером станет блок А.</p>
133 <p>Это параметры, которые используются для работы с отдельными grid-компонентами. Свойства будут приписываться не всему контейнеру, а только одной его составляющей. Примером станет блок А.</p>
134 <h3>Justify-self</h3>
134 <h3>Justify-self</h3>
135 <p>Параметр, который используется для выравнивания составляющей А по горизонтали. Здесь на помощь приходят следующие команды:</p>
135 <p>Параметр, который используется для выравнивания составляющей А по горизонтали. Здесь на помощь приходят следующие команды:</p>
136 <ul><li>justify-self: stretch; - растягивание блока А по всей длине grid-области;</li>
136 <ul><li>justify-self: stretch; - растягивание блока А по всей длине grid-области;</li>
137 <li>justify-self: center; - расположение А по центру области;</li>
137 <li>justify-self: center; - расположение А по центру области;</li>
138 <li>justify-self: start; - размещение блока А в самом начале grid;</li>
138 <li>justify-self: start; - размещение блока А в самом начале grid;</li>
139 <li>justify-self: end; - размещение в самом конце области.</li>
139 <li>justify-self: end; - размещение в самом конце области.</li>
140 </ul><p>Выравнивание по вертикали здесь тоже имеет место. Для этого используются иные параметры.</p>
140 </ul><p>Выравнивание по вертикали здесь тоже имеет место. Для этого используются иные параметры.</p>
141 <h3>Align-self</h3>
141 <h3>Align-self</h3>
142 <p>С помощью этой конструкции можно выравнивать grid-элементы по вертикали. Рекомендуется пользоваться следующими командами:</p>
142 <p>С помощью этой конструкции можно выравнивать grid-элементы по вертикали. Рекомендуется пользоваться следующими командами:</p>
143 <ul><li>align-self: end; - расположение в конце grid-области;</li>
143 <ul><li>align-self: end; - расположение в конце grid-области;</li>
144 <li>align-self: center; - выравнивание по середине области;</li>
144 <li>align-self: center; - выравнивание по середине области;</li>
145 <li>align-self: start; - расположение блока А в самом начале grid области;</li>
145 <li>align-self: start; - расположение блока А в самом начале grid области;</li>
146 <li>align-self: stretch; - растяжение компонента А по всей ширине имеющейся области.</li>
146 <li>align-self: stretch; - растяжение компонента А по всей ширине имеющейся области.</li>
147 </ul><p>Теперь понятно, какие параметры можно использовать в процессе верстки. Существуют еще несколько приемов, о которых необходимо знать при работе с CSS.</p>
147 </ul><p>Теперь понятно, какие параметры можно использовать в процессе верстки. Существуют еще несколько приемов, о которых необходимо знать при работе с CSS.</p>
148 <h2>Вложенность</h2>
148 <h2>Вложенность</h2>
149 <p>Гриды в верстке сайтов бывают вложенными. Это ситуация, когда в одном гриде имеется другой грид-контейнер. Для того, чтобы лучше понимать вложенность, рекомендуется рассмотреть наглядный пример. Вот HTML-каркас, который имеет еще один подуровень компонентов:</p>
149 <p>Гриды в верстке сайтов бывают вложенными. Это ситуация, когда в одном гриде имеется другой грид-контейнер. Для того, чтобы лучше понимать вложенность, рекомендуется рассмотреть наглядный пример. Вот HTML-каркас, который имеет еще один подуровень компонентов:</p>
150 <p>Для основного контейнера в CSS-файле необходимо создать сетку размером 3 x 3:</p>
150 <p>Для основного контейнера в CSS-файле необходимо создать сетку размером 3 x 3:</p>
151 <p>Для компонента D необходимо определить display: grid. Эта команда помогает объявить в нем еще одну сетку. Для свойств строк и столбцов предстоит воспользоваться параметром subgrid. Он будет заимствовать параметры "родительского" грида.</p>
151 <p>Для компонента D необходимо определить display: grid. Эта команда помогает объявить в нем еще одну сетку. Для свойств строк и столбцов предстоит воспользоваться параметром subgrid. Он будет заимствовать параметры "родительского" грида.</p>
152 <p>В программном коде ситуация будет выглядеть следующим образом:</p>
152 <p>В программном коде ситуация будет выглядеть следующим образом:</p>
153 <p>Теперь можно оперировать компонентами E, F, G, чтобы задавать им разное положение в пределах границ D (который тоже стал выступать в качестве сетки). Вот пример, в котором E начинается от второй вертикальной линии грида до третьей:</p>
153 <p>Теперь можно оперировать компонентами E, F, G, чтобы задавать им разное положение в пределах границ D (который тоже стал выступать в качестве сетки). Вот пример, в котором E начинается от второй вертикальной линии грида до третьей:</p>
154 <p>Каждый предложенный фрагмент кода можно запустить и посмотреть, что получится на экране.</p>
154 <p>Каждый предложенный фрагмент кода можно запустить и посмотреть, что получится на экране.</p>
155 <h2>Кратко о важном</h2>
155 <h2>Кратко о важном</h2>
156 <p>Теперь понятно, что собой представляет CSS-верстка при помощи сетки. Рекомендуется запомнить следующие главные моменты рассмотренной темы:</p>
156 <p>Теперь понятно, что собой представляет CSS-верстка при помощи сетки. Рекомендуется запомнить следующие главные моменты рассмотренной темы:</p>
157 <ol><li>Грид - это гибкая разметка, в которой компоненты размещаются в качестве таблицы, состоящей из ячеек. Их можно собрать в полноценные области.</li>
157 <ol><li>Грид - это гибкая разметка, в которой компоненты размещаются в качестве таблицы, состоящей из ячеек. Их можно собрать в полноценные области.</li>
158 <li>Грид включает в себя родительский контейнер и вложенные в него составляющие. Компоненты могут занимать одну или несколько ячеек, которые образовывают столбцы, колонки и области.</li>
158 <li>Грид включает в себя родительский контейнер и вложенные в него составляющие. Компоненты могут занимать одну или несколько ячеек, которые образовывают столбцы, колонки и области.</li>
159 <li>Для создания грида в разметке требуется добавить строку display:grid.</li>
159 <li>Для создания грида в разметке требуется добавить строку display:grid.</li>
160 <li>Для измерений у рассматриваемой сетки используется специальная единица измерения - фракция.</li>
160 <li>Для измерений у рассматриваемой сетки используется специальная единица измерения - фракция.</li>
161 <li>Допускается настройка расположения компонентов грида несколькими способами: по горизонтальной или вертикальной осям, а также относительно всей области.</li>
161 <li>Допускается настройка расположения компонентов грида несколькими способами: по горизонтальной или вертикальной осям, а также относительно всей области.</li>
162 </ol><p>Научиться верстать сайты через CSS, а также грамотно использовать grid помогут<a>компьютерные курсы</a>. На них в срок до 12 месяцев пользователей научат создавать собственные страницы в Интернете и оформлять их.</p>
162 </ol><p>Научиться верстать сайты через CSS, а также грамотно использовать grid помогут<a>компьютерные курсы</a>. На них в срок до 12 месяцев пользователей научат создавать собственные страницы в Интернете и оформлять их.</p>
163  
163