🔍 Начните печатать, чтобы искать по книге или перейти к нужной странице по номеру
Удобно листать не только прокруткой, но и клавишами‑стрелками:
Эта книга — пошаговая инструкция по вёрстке сайтов на языках ХТМЛ и ЦСС. Вы узнаете не только как сверстать сайт, но и как опубликовать его в интернете, настроить красивый шаринг в соцсети и подключить системы аналитики.
Отдельный раздел книги посвящён работе с верстальщиком: как ставить задачи, получать предсказуемый результат и правильно принимать и внедрять вёрстку.
Знакомство с ХТМЛ и ЦСС
Модули
Расстановка
Страницы
Спецэффекты
Контроль качества
Публикация
Как работать с верстальщиком
Эта книга — пошаговая инструкция по вёрстке сайтов на языках ХТМЛ и ЦСС. Вы узнаете не только как сверстать сайт, но и как опубликовать его в интернете, настроить красивый шаринг в соцсети и подключить системы аналитики.
Отдельный раздел книги посвящён работе с верстальщиком: как ставить задачи, получать предсказуемый результат и правильно принимать и внедрять вёрстку.
Знакомство с ХТМЛ и ЦСС
Модули
Расстановка
Страницы
Спецэффекты
Контроль качества
Публикация
Как работать с верстальщиком
Помимо числа колонок функция repeat
умеет работать с ключевыми словами auto-fill
и auto-fit
. Они создают столько колонок, сколько поместится при текущей ширине грид‑контейнера:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fill, 150px);
column-gap: 9px;
row-gap: 18px;
}
Помимо числа колонок функция repeat
умеет работать с ключевыми словами auto-fill
и auto-fit
. Они создают столько колонок, сколько поместится при текущей ширине грид‑контейнера:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fill, 150px);
column-gap: 9px;
row-gap: 18px;
}
Если повторять колонки с фиксированной шириной, возможна «дыра» справа: в контейнере шириной 330 пикселей и колонками шириной 150 пикселей будет 2 колонки и 30 «лишних» пикселей справа. Чтобы колонки равномерно растянулись, заняв оставшееся пространство, используют функцию minmax
и auto-fill
или auto-fit
:
.schedule {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); /* Создаём как можно больше колонок, чтобы они заняли всю доступную ширину. При этом ширина колонок должна быть не менее 150 пк */
gap: 18px; /* 18 пк между колонками и строками */
}
Если повторять колонки с фиксированной шириной, возможна «дыра» справа: в контейнере шириной 330 пикселей и колонками шириной 150 пикселей будет 2 колонки и 30 «лишних» пикселей справа. Чтобы колонки равномерно растянулись, заняв оставшееся пространство, используют функцию minmax
и auto-fill
или auto-fit
:
.schedule {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); /* Создаём как можно больше колонок, чтобы они заняли всю доступную ширину. При этом ширина колонок должна быть не менее 150 пк */
gap: 18px; /* 18 пк между колонками и строками */
}
Ключевое отличие между auto-fill
и auto-fit
проявляется, когда недостаточно элементов, чтобы заполнить сетку по указанным в repeat условиям. В таком случае auto-fill
создаёт максимальное количество колонок, включая пустые:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(20%, 1fr));
gap: 18px;
}
А auto-fit
растягивает колонки, схлопывая пустые:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(20%, 1fr));
gap: 18px;
}
Ключевое отличие между auto-fill
и auto-fit
проявляется, когда недостаточно элементов, чтобы заполнить сетку по указанным в repeat условиям. В таком случае auto-fill
создаёт максимальное количество колонок, включая пустые:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(20%, 1fr));
gap: 18px;
}
А auto-fit
растягивает колонки, схлопывая пустые:
.schedule {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(20%, 1fr));
gap: 18px;
}
За горизонтальные направляющие, за количество и размер строк отвечает свойство grid-template-rows
. Работает точно так же, как и grid-template-columns
, но для строк.
Поддерживает те же величины:
.grid {
display: grid;
grid-template-rows: 50px 20% 1fr 2fr;
}
Функцию repeat
:
.grid {
display: grid;
grid-template-rows: repeat(4, 50px);
}
Функцию minmax
с auto-fill
и auto-fit
:
.grid {
display: grid;
grid-template-rows: repeat(auto-fit, minmax(100px, 1fr));
}
Единицы измерения размеров
Функция repeat
Ключевые слова auto‑fill и auto‑fit
За горизонтальные направляющие, за количество и размер строк отвечает свойство grid-template-rows
. Работает точно так же, как и grid-template-columns
, но для строк.
Поддерживает те же величины:
.grid {
display: grid;
grid-template-rows: 50px 20% 1fr 2fr;
}
Функцию repeat
:
.grid {
display: grid;
grid-template-rows: repeat(4, 50px);
}
Функцию minmax
с auto-fill
и auto-fit
:
.grid {
display: grid;
grid-template-rows: repeat(auto-fit, minmax(100px, 1fr));
}
Единицы измерения размеров
Функция repeat
Ключевые слова auto‑fill и auto‑fit
За порядок, в котором элементы заполняют контейнер, отвечает grid-auto-flow
. По умолчанию элементы заполняют его ряд за рядом:
.grid {
grid-auto-flow: row;
}
Если сменить grid-auto-flow
на column
, элементы станут заполнять грид‑контейнер колонку за колонкой, сверху вниз:
.grid {
grid-auto-flow: column;
}
За порядок, в котором элементы заполняют контейнер, отвечает grid-auto-flow
. По умолчанию элементы заполняют его ряд за рядом:
.grid {
grid-auto-flow: row;
}
Если сменить grid-auto-flow
на column
, элементы станут заполнять грид‑контейнер колонку за колонкой, сверху вниз:
.grid {
grid-auto-flow: column;
}