| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
+Соседний комбинатор. Выбирает только следующий элемент, который находится на том же уровне и сразу после указанного элемента. |
Непосредственный следующий сосед |
Следующий элемент после метки |
colorЗадаёт цвет текста элемента. |
Именованный цвет HEX RGB RGBA / альфа-канал |
Именованный цвет HEX RGB RGBA / альфа-канал |
background-colorЗадаёт сплошной цвет фона элемента. Само содержимое и размеры не меняет. |
Именованный цвет HEX RGB RGBA / полупрозрачный фон Прозрачный фон |
Именованный цвет HEX RGB RGBA / полупрозрачный фон Прозрачный фон |
font-familyВыбирает семейство шрифта. Браузер пробует список слева направо; имена с пробелами берут в кавычки. |
Название шрифта Запасной шрифт Общее семейство без засечек Моноширинный шрифт для кода |
Название шрифта Запасной шрифт Общее семейство без засечек Моноширинный шрифт для кода |
@font-face · дополнительноРегистрирует локальный файл шрифта. После регистрации его имя можно использовать в font-family. |
Файл WOFF2 |
Файл WOFF2 |
font-sizeЗадаёт размер текста. Для em в font-size база — размер шрифта родителя; для rem — размер шрифта корневого элемента html. |
CSS-пиксели От корневого размера От размера шрифта родителя Частый размер для небольшого заголовка |
CSS-пиксели От корневого размера От размера шрифта родителя Частый размер для небольшого заголовка |
font-weightЗадаёт толщину начертания. Используйте значения, которые поддерживает подключённый шрифт. |
Обычное начертание · 400 Среднее · 500 Полужирное · 600 Жирное · 700 Очень жирное · 800 Ключевые слова |
Обычное начертание · 400 Среднее · 500 Полужирное · 600 Жирное · 700 Очень жирное · 800 Ключевые слова |
font-styleВыбирает обычное или наклонное начертание. Не управляет толщиной текста. |
Обычное Курсивное |
Обычное Курсивное |
text-alignВыравнивает текст внутри своей области, но не перемещает сам блок. |
По левому краю По центру По правому краю По ширине · использовать осторожно |
По левому краю По центру По правому краю По ширине · использовать осторожно |
text-decorationДобавляет или убирает декоративную линию у текста. Работает не только со ссылками. |
Убрать линию Подчеркнуть Зачеркнуть Линия над текстом |
Убрать линию Подчеркнуть Зачеркнуть Линия над текстом |
БЫСТРАЯ ШПАРГАЛКА
Справочник CSS
Все свойства и инструменты курса собраны на одной странице и разделены по урокам. Каждое свойство — отдельной строкой; важные значения показаны вертикально, с отдельным коротким примером.
СТРУКТУРА СПРАВОЧНИКА
Разделы по урокам
Урок 01 · Основы CSS
Правила CSS, селекторы, цвета и базовое оформление текста.
Урок 02 · Box Model и размеры
Размеры элемента, внутреннее и внешнее пространство, рамки и скругления.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
widthЗадаёт ширину элемента. Процент обычно рассчитывается относительно содержащего блока. |
Автоматическая ширина CSS-пиксели Доля ширины родителя От корневого размера шрифта |
Автоматическая ширина CSS-пиксели Доля ширины родителя От корневого размера шрифта |
heightЗадаёт высоту элемента. Фиксированную высоту используют, когда содержимое заранее предсказуемо. |
По содержимому Фиксированная высота |
По содержимому Фиксированная высота |
min-widthЗадаёт минимальную ширину, ниже которой элемент не должен сжиматься. |
Не меньше 220 пикселей Разрешить сжатие до нуля во flex/grid-контейнере |
Не меньше 220 пикселей Разрешить сжатие до нуля во flex/grid-контейнере |
max-widthОграничивает максимальную ширину элемента. Часто сочетается с width: 100%. |
Не шире 760 пикселей Адаптироваться к ширине контейнера |
Не шире 760 пикселей Адаптироваться к ширине контейнера |
min-heightЗадаёт минимальную высоту, но позволяет элементу увеличиваться, если содержимого больше. |
Минимум 180 пикселей Минимум на весь экран по высоте |
Минимум 180 пикселей Минимум на весь экран по высоте |
box-sizingОпределяет, что входит в заданные width и height. Margin не включается ни в один из режимов. |
content-box · по умолчанию border-box · размеры включают padding и border Частое общее правило |
content-box · по умолчанию border-box · размеры включают padding и border Частое общее правило |
paddingСоздаёт внутреннее пространство между содержимым и рамкой. |
Одно значение · все стороны Два · вертикаль / горизонталь Три · верх / горизонталь / низ Четыре · верх / право / низ / лево |
Одно значение · все стороны Два · вертикаль / горизонталь Три · верх / горизонталь / низ Четыре · верх / право / низ / лево |
marginСоздаёт внешнее расстояние вокруг элемента. Схема сокращённой записи такая же, как у padding. |
Одно значение · все стороны Два · вертикаль / горизонталь Три · верх / горизонталь / низ Четыре · верх / право / низ / лево Центрировать блок с заданной шириной |
Одно значение · все стороны Два · вертикаль / горизонталь Три · верх / горизонталь / низ Четыре · верх / право / низ / лево Центрировать блок с заданной шириной |
border-widthЗадаёт толщину рамки. Можно указать одно значение или отдельно четыре стороны. |
Тонкая рамка Более заметная рамка Разная толщина сторон |
Тонкая рамка Более заметная рамка Разная толщина сторон |
border-styleОпределяет вид линии рамки. Без border-style рамка обычно не отображается. |
Сплошная Штриховая Точечная Без рамки |
Сплошная Штриховая Точечная Без рамки |
border-colorЗадаёт цвет рамки. Можно использовать те же цветовые форматы, что и для color. |
Именованный цвет HEX RGB RGBA |
Именованный цвет HEX RGB RGBA |
borderСокращённо задаёт толщину, стиль и цвет. Частый читаемый порядок — толщина, стиль, цвет; компоненты могут идти и в другом порядке. |
Толщина + тип + цвет Штриховая рамка Убрать рамку |
Толщина + тип + цвет Штриховая рамка Убрать рамку |
border-radiusСкругляет углы. Одно, два, три или четыре значения задают разные комбинации углов по часовой стрелке. |
Одно · все четыре угла Два · верхний левый/нижний правый и верхний правый/нижний левый Три · верхний левый / верхний правый-нижний левый / нижний правый Четыре · верхний левый / верхний правый / нижний правый / нижний левый Круг для квадратного элемента |
Одно · все четыре угла Два · верхний левый/нижний правый и верхний правый/нижний левый Три · верхний левый / верхний правый-нижний левый / нижний правый Четыре · верхний левый / верхний правый / нижний правый / нижний левый Круг для квадратного элемента |
Урок 03 · Внешний вид и дизайн-система
Типографика, фон, мягкие тени и повторно используемые значения.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
line-heightЗадаёт высоту строки и расстояние между строками текста. Для обычного текста удобно начинать с числа без единиц. |
Плотно · короткий заголовок Обычный текст Больше воздуха в длинном тексте |
Плотно · короткий заголовок Обычный текст Больше воздуха в длинном тексте |
letter-spacingМеняет расстояние между буквами. Для обычного текста достаточно небольшого значения; большие интервалы подходят только коротким меткам. |
Обычный интервал Небольшое увеличение Фиксированный интервал |
Обычный интервал Небольшое увеличение Фиксированный интервал |
text-transformМеняет отображаемый регистр, но не изменяет исходный текст в HTML. |
Оставить как написано Все буквы заглавные Все буквы строчные Начало каждого слова с заглавной |
Оставить как написано Все буквы заглавные Все буквы строчные Начало каждого слова с заглавной |
background-imageДобавляет изображение или градиент в фон элемента. |
Фоновое изображение Линейный градиент |
Фоновое изображение Линейный градиент |
background-positionЗадаёт положение фонового изображения внутри области элемента. |
По центру Сверху по центру Снизу справа |
По центру Сверху по центру Снизу справа |
background-sizeОпределяет размер фонового изображения. |
Заполнить область · возможна обрезка Показать изображение целиком Задать конкретную ширину |
Заполнить область · возможна обрезка Показать изображение целиком Задать конкретную ширину |
background-repeatОпределяет, повторяется ли фоновое изображение. |
Не повторять Повторять по обеим осям Повторять горизонтально Повторять вертикально |
Не повторять Повторять по обеим осям Повторять горизонтально Повторять вертикально |
backgroundСокращённо задаёт несколько параметров фона. Положение и размер разделяют символом /. |
Цвет фона Изображение по центру без повторения Градиентный фон |
Цвет фона Изображение по центру без повторения Градиентный фон |
box-shadowДобавляет внешнюю или внутреннюю тень. Тень не заменяет рамку и не занимает место в Box Model. |
Без тени Едва заметная тень Внутренняя тень |
Без тени Едва заметная тень Внутренняя тень |
fontСокращённо задаёт несколько характеристик шрифта. Порядок: необязательные style/weight, затем обязательный size, необязательный line-height после / и обязательный family. Неуказанные компоненты сбрасываются к начальным значениям. |
Размер и семейство Жирность + размер / высота строки + семейство Курсив + жирность + размер + семейство |
Размер и семейство Жирность + размер / высота строки + семейство Курсив + жирность + размер + семейство |
--имя и var()Пользовательская переменная хранит повторяющееся значение. var() подставляет значение переменной; вторым аргументом можно задать запасной вариант. |
Объявить переменную Использовать переменную Запасное значение |
Объявить переменную Использовать переменную Запасное значение |
:rootВыбирает корневой элемент документа. В нём удобно объявлять общие переменные, доступные во всём документе. |
Глобальные переменные |
Глобальные переменные |
Урок 04 · Display и Flexbox
Режим отображения элемента и размещение группы элементов вдоль одной оси.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
displayОпределяет, как элемент участвует в раскладке. Здесь собраны основные режимы, которые используются в курсе. |
block · начинает новую строку и обычно занимает доступную ширину inline · располагается в строке, width/height обычно не задают inline-block · остаётся в строке, но принимает размеры none · элемент не отображается и не занимает место flex · создаёт Flex-контейнер grid · создаёт Grid-контейнер |
block · начинает новую строку и обычно занимает доступную ширину inline · располагается в строке, width/height обычно не задают inline-block · остаётся в строке, но принимает размеры none · элемент не отображается и не занимает место flex · создаёт Flex-контейнер grid · создаёт Grid-контейнер |
flex-directionЗадаёт направление главной оси Flex-контейнера. |
По горизонтали По вертикали |
По горизонтали По вертикали |
justify-contentРаспределяет элементы вдоль главной оси Flex-контейнера. |
В начале По центру В конце Свободное место между элементами Равномерное пространство вокруг элементов Одинаковое пространство между элементами и по краям |
В начале По центру В конце Свободное место между элементами Равномерное пространство вокруг элементов Одинаковое пространство между элементами и по краям |
align-itemsВыравнивает все элементы по поперечной оси Flex-контейнера. |
Растянуть по поперечной оси В начале поперечной оси По центру поперечной оси В конце поперечной оси По базовой линии текста |
Растянуть по поперечной оси В начале поперечной оси По центру поперечной оси В конце поперечной оси По базовой линии текста |
gapЗадаёт промежуток между элементами Flex или Grid без внешних margin. |
Один промежуток Строки / колонки |
Один промежуток Строки / колонки |
flex-wrapРазрешает элементам переноситься на следующую строку. |
Не переносить Переносить |
Не переносить Переносить |
flex-growОпределяет, может ли элемент забирать свободное место. Число показывает долю в распределении. |
Не увеличивать за счёт свободного места Участвовать в распределении свободного места |
Не увеличивать за счёт свободного места Участвовать в распределении свободного места |
flex-shrinkОпределяет, насколько элемент может сжиматься при нехватке места. |
Разрешить стандартное сжатие Запретить сжатие |
Разрешить стандартное сжатие Запретить сжатие |
flex-basisЗадаёт исходный основной размер элемента до распределения свободного места. |
Брать исходный размер из width/height Нулевая база Исходный размер 220 пикселей |
Брать исходный размер из width/height Нулевая база Исходный размер 220 пикселей |
flexСокращает flex-grow, flex-shrink и flex-basis. Частый вариант flex: 1 — сокращение для flex-grow: 1, flex-shrink: 1 и flex-basis: 0%. |
Равномерно занимать свободное место Не расти и не сжиматься, база 240px Только разрешить рост |
Равномерно занимать свободное место Не расти и не сжиматься, база 240px Только разрешить рост |
align-selfПереопределяет выравнивание по поперечной оси для одного Flex/Grid-элемента. Работает на самом элементе. |
Оставить значение контейнера По центру В начале В конце Растянуть |
Оставить значение контейнера По центру В начале В конце Растянуть |
Урок 05 · CSS Grid — сетки
Свойства для управления строками, колонками и размещением элементов в двумерной сетке.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
grid-template-columnsЗадаёт количество и размеры колонок сетки. |
Две колонки одинаковой доли Одна колонка вдвое шире другой Фиксированная и гибкая колонка |
Две колонки одинаковой доли Одна колонка вдвое шире другой Фиксированная и гибкая колонка |
grid-template-rowsЗадаёт размеры строк сетки. |
Автоматическая первая строка и гибкая вторая Две строки по 120px |
Автоматическая первая строка и гибкая вторая Две строки по 120px |
frГибкая доля свободного пространства в Grid. Доли распределяются пропорционально числам. |
Одна равная доля Соотношение 1 к 2 |
Одна равная доля Соотношение 1 к 2 |
repeat()Повторяет указанный шаблон дорожек. |
Три одинаковые колонки Две колонки по 220px |
Три одинаковые колонки Две колонки по 220px |
minmax()Задаёт минимальную и максимальную границы размера дорожки. |
Минимум 220px, максимум — оставшееся пространство Две адаптивные колонки |
Минимум 220px, максимум — оставшееся пространство Две адаптивные колонки |
grid-columnУказывает, какие колонки занимает элемент. |
Занять две колонки От линии 1 до линии 3 |
Занять две колонки От линии 1 до линии 3 |
grid-rowУказывает, какие строки занимает элемент. |
Занять две строки От линии 1 до линии 3 |
Занять две строки От линии 1 до линии 3 |
auto-fitВ repeat() подбирает количество повторяемых колонок под доступное место. Часто используется вместе с minmax(). |
Гибкое число колонок |
Гибкое число колонок |
justify-itemsВыравнивает элементы внутри ячеек по горизонтальной оси в обычном горизонтальном письме. |
В начале По центру Растянуть |
В начале По центру Растянуть |
align-itemsВыравнивает элементы внутри ячеек по вертикальной оси в обычном горизонтальном письме. |
В начале По центру Растянуть |
В начале По центру Растянуть |
Урок 06 · Адаптивный дизайн
Медиазапросы и гибкие размеры для экранов разной ширины.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
@mediaПрименяет набор CSS-правил только при выполнении условия. При mobile-first базовые правила задают для узкого экрана, затем добавляют min-width. |
Планшет и шире Узкий экран |
Планшет и шире Узкий экран |
min-width в @mediaУсловие срабатывает, когда viewport не уже указанного значения. |
От 768px и шире |
От 768px и шире |
max-width в @mediaУсловие срабатывает, когда viewport не шире указанного значения. Это условие экрана, а не ограничение ширины самого элемента. |
До 640px |
До 640px |
vw1vw равен 1% ширины viewport. Используйте осторожно для размеров, которые зависят от ширины окна. |
Половина ширины окна Гибкий заголовок с ограничениями |
Половина ширины окна Гибкий заголовок с ограничениями |
vh1vh равен 1% высоты viewport. Используется для размеров, связанных с высотой окна. |
Минимальная высота секции |
Минимальная высота секции |
clamp()Ограничивает значение снизу и сверху, сохраняя гибкое предпочтительное значение. Порядок: минимум, предпочтительное значение, максимум. |
Размер заголовка от 28 до 48px Отступ от 16 до 32px |
Размер заголовка от 28 до 48px Отступ от 16 до 32px |
min()Возвращает наименьшее из переданных значений. Удобно ограничивать размер, сравнивая относительную и фиксированную величины. |
Не шире 760px и не шире доступного пространства |
Не шире 760px и не шире доступного пространства |
max()Возвращает наибольшее из переданных значений. Полезно задавать минимально достаточный размер. |
Не меньше 24px или 3vw |
Не меньше 24px или 3vw |
Адаптивное изображениеСохраняет пропорции картинки и не позволяет ей выходить за ширину родителя. |
Не шире родителя и исходная высота |
Не шире родителя и исходная высота |
Урок 07 · Position и управление слоями
Положение элемента относительно потока документа, предка или окна браузера.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
positionВыбирает режим позиционирования элемента. |
static · обычный поток документа relative · сохраняет место, но может смещаться absolute · исключается из потока и позиционируется относительно подходящего предка fixed · позиционируется относительно окна просмотра sticky · ведёт себя обычно, пока не достигает точки закрепления при прокрутке |
static · обычный поток документа relative · сохраняет место, но может смещаться absolute · исключается из потока и позиционируется относительно подходящего предка fixed · позиционируется относительно окна просмотра sticky · ведёт себя обычно, пока не достигает точки закрепления при прокрутке |
topЗадаёт смещение от верхней стороны для позиционируемого элемента. |
Сдвиг на 12px от верха Прилипание к верхней границе окна |
Сдвиг на 12px от верха Прилипание к верхней границе окна |
rightЗадаёт смещение от правой стороны. |
Отступ справа 12px |
Отступ справа 12px |
bottomЗадаёт смещение от нижней стороны. |
Отступ снизу 20px |
Отступ снизу 20px |
leftЗадаёт смещение от левой стороны. |
Отступ слева 16px |
Отступ слева 16px |
z-indexУправляет порядком наложения внутри контекста наложения. Большое значение не всегда перекрывает элементы из другого контекста. |
Обычный уровень Более высокий уровень в том же контексте |
Обычный уровень Более высокий уровень в том же контексте |
Урок 08 · Интерактивность без JavaScript
Псевдоклассы состояний и визуальная обратная связь при действиях пользователя.
| Свойство / понятие | Короткое напоминание | Примеры |
|---|---|---|
:hoverВыбирает элемент, когда указатель находится над ним. Не используйте hover как единственный способ показать важное действие. |
Кнопка при наведении |
Кнопка при наведении |
:activeВыбирает элемент в момент активации, например пока пользователь нажимает кнопку. |
Кнопка во время нажатия |
Кнопка во время нажатия |
:focusВыбирает элемент, который получил фокус, например поле формы. |
Поле при фокусе |
Поле при фокусе |
:focus-visibleПоказывает индикатор фокуса, когда браузер считает его уместным, обычно при клавиатурной навигации. |
Видимый клавиатурный фокус |
Видимый клавиатурный фокус |
:disabledВыбирает отключённый элемент формы. |
Отключённая кнопка |
Отключённая кнопка |
:checkedВыбирает отмеченный checkbox или radio. |
Отмеченный checkbox |
Отмеченный checkbox |
cursorМеняет вид указателя над элементом. |
Рука над интерактивным элементом Текстовый курсор Действие недоступно |
Рука над интерактивным элементом Текстовый курсор Действие недоступно |
opacityЗадаёт прозрачность всего элемента вместе с содержимым. Значение 0 — невидим, 1 — полностью непрозрачен. |
Полностью непрозрачный Половина прозрачности Невидимый элемент |
Полностью непрозрачный Половина прозрачности Невидимый элемент |
outlineРисует контур вокруг элемента и не занимает место в Box Model. |
Контур фокуса |
Контур фокуса |
outline-offsetЗадаёт расстояние между элементом и его контуром. |
Отодвинуть контур на 3px |
Отодвинуть контур на 3px |
transitionПлавно меняет значения между состояниями. Указывайте конкретные свойства и длительность, а не применяйте all без необходимости. |
Плавно изменить фон Фон и небольшое смещение |
Плавно изменить фон Фон и небольшое смещение |
transformВизуально изменяет положение, масштаб или поворот элемента. Само по себе не меняет место элемента в обычном потоке. |
Немного поднять элемент Увеличить элемент |
Немного поднять элемент Увеличить элемент |
Урок 09 · Работа с реальными интерфейсами
Новые свойства не вводятся: здесь комбинируются ранее изученные инструменты.
Новых CSS-свойств в этом уроке нет. Это напоминание, какие уже изученные группы обычно сочетают в интерфейсе.
Карточка
Размеры и Box Model
widthpaddingborderborder-radiusНавигация
Расположение и состояния
display: flexgapalign-items:hoverСетка материалов
Двумерная компоновка
display: gridgrid-template-columnsminmax()Урок 10 · Архитектура CSS-проекта
Именование, повторное использование и организация правил.
В этом уроке новые CSS-свойства не вводятся. Это краткие напоминания по именованию и повторному использованию стилей.
| Понятие | Короткое напоминание | Пример |
|---|---|---|
BEM: блокСамостоятельный компонент. | Имя описывает назначение элемента. | |
BEM: элементЧасть блока. | Двойное подчёркивание отделяет часть от блока. | |
BEM: модификаторВариант блока или элемента. | Двойной дефис обозначает модификатор. | |
Урок 11 · ИИ в VS Code: ускоряем разработку
Новых CSS-свойств нет. ИИ помогает анализировать и писать код, но результат нужно проверить.
Новых CSS-свойств нет. Этот раздел помогает правильно формулировать задачи для ИИ и проверять предложенный код.
Что указать в запросе
«Измени только карточку курса. Используй свойства из пройденных уроков. Не меняй HTML и общие стили. Объясни каждое изменение».Урок 12 · Отладка, проверка и финальный проект
Проверяем применение изученных правил, находим ошибки и завершаем сайт.
Новых CSS-свойств нет. В этом уроке проверяется уже изученный CSS и поиск причин, по которым результат отличается от ожидаемого.
Styles
Показывает совпавшие правила. Перечёркнутое объявление обычно проиграло каскад или не подходит текущему состоянию.
Computed
Показывает итоговые вычисленные значения, например font-size, width, margin и padding.
Box Model
Показывает content, padding, border и margin выбранного элемента.
Проверяйте страницу на ширинах 1440, 768, 390 и 320 пикселей, а также проверьте загрузку шрифтов и состояний фокуса.
Как пользоваться справочником
Это краткое напоминание, а не новая теория. Найдите урок и свойство, затем выберите нужное значение и посмотрите отдельный пример. Если нужно понять, почему свойство работает именно так, вернитесь к соответствующему объяснению в уроке.
