✦ Интерактивный курс

Учи CSS
с нуля

Полный путеводитель по CSS — от синтаксиса до стилизации своего первого сайта. Никаких знаний не нужно.

▶ Начать обучение ⌨ Практика
9
тем
30+
свойств
1
проект

Язык стилей

HTML строит структуру — CSS делает её красивой. Разбираемся, что это такое и зачем нужно.

01
Что такое CSS?
Знакомство с языком
▶

CSS (Cascading Style Sheets — каскадные таблицы стилей) — это язык, который описывает внешний вид HTML-элементов. Без CSS страница — серый текст на белом фоне. CSS добавляет цвета, шрифты, отступы, анимации и макет.

Представь: HTML — это скелет здания (стены, окна, двери), а CSS — это дизайн интерьера (краска, мебель, освещение). Одну и ту же HTML-структуру можно оформить совершенно по-разному.

💡
CSS создан в 1994 году. Сегодня он настолько мощный, что позволяет делать сложные анимации, 3D-эффекты и адаптивные макеты — без единой строки JavaScript.
02
Как подключить CSS?
Три способа
▶

CSS можно добавить на страницу тремя способами. Самый популярный для обучения — тег <style> внутри <head>. Именно его мы будем использовать в практике.

способы подключения
<style> h1 { color: green; } </style> <h1 style="color: green"> <link rel="stylesheet" href="style.css">
Результат
✓
В профессиональных проектах CSS всегда выносят в отдельный файл .css — это удобнее и быстрее для браузера. Но для обучения тег <style> идеален.

Как читать и писать CSS

Правила CSS выглядят всегда одинаково. Один раз понять — и пишешь на автомате.

03
Синтаксис CSS
Правило, селектор, свойство, значение
▶

Каждое CSS-правило состоит из трёх частей: селектор (кого стилизуем), свойство (что меняем) и значение (на что меняем). Всё внутри фигурных скобок { }.

анатомия правила
h1 { color: #4ade80; font-size: 2rem; text-align: center; } p { color: #85a88a; line-height: 1.7; }
Результат
Селектор
Указывает КОГО стилизовать (h1, p, .класс)
Свойство
ЧТО изменить (color, font-size...)
Значение
НА ЧТО изменить (red, 16px, bold...)
Точка с запятой
Отделяет одно свойство от другого
04
Виды селекторов
Тег, класс, ID, универсальный
▶

Селектор — это "адрес" элемента. Можно выбрать элемент по названию тега, по классу (атрибут class) или по уникальному идентификатору (атрибут id).

виды селекторов
h1 { color: white; } .card { background: #1a1a2e; } #hero { padding: 40px; } * { box-sizing: border-box; }
Результат
⚠
Класс (.name) можно использовать у нескольких элементов. ID (#name) — только у одного на странице. Классы используй чаще.

Цвет, фон и размеры

Самые используемые свойства CSS — те, что меняют цвет, фон, отступы и размеры.

05
Цвета в CSS
HEX, RGB, названия
▶

В CSS цвет можно задать несколькими способами. Самый популярный — HEX-код (шестнадцатеричный), который начинается с #. Также можно использовать названия цветов и формат RGB.

способы задать цвет
h1 { color: #4ade80; } p { color: tomato; } .box { color: rgb(74, 222, 128); } .dim { color: rgba(255,255,255, 0.5); }
Результат
💡
HEX #1C1C1C — очень тёмно-серый, почти чёрный. Именно такой фон нужно будет сделать в практике!
06
Фон элемента
background-color, background-image
▶

Свойство background-color задаёт цвет фона элемента. Свойство background более мощное — оно может быть и цветом, и картинкой, и градиентом.

фон
body { background-color: #1C1C1C; } .hero { background: linear-gradient( 135deg, #0a0a0f, #1a2e1a ); }
Результат
07
Отступы и размеры
padding, margin, width, height
▶

padding — внутренний отступ (между содержимым и границей элемента). margin — внешний отступ (между элементами). Оба можно задать для каждой стороны отдельно или сразу для всех.

отступы
.card { padding: 20px; padding: 16px 24px; margin-bottom: 12px; width: 100%; }
Результат
padding
Внутренний отступ
margin
Внешний отступ
width / height
Ширина и высота
border-radius
Скруглённые углы
08
Рамки и скругления
border, border-radius
▶

Свойство border задаёт рамку вокруг элемента: толщину, стиль и цвет. border-radius скругляет углы — значение 99px или 50% делает элемент круглым (кнопки-пилюли).

рамки
.card { border: 1px solid #4ade80; border-radius: 12px; } .pill-btn { border-radius: 99px; } .circle { border-radius: 50%; }
Результат

Красивый текст с Google Fonts

Шрифт — это первое, что замечают на сайте. Узнай, как подключить любой шрифт из интернета.

09
Подключение шрифта
Google Fonts + font-family
▶

Google Fonts — бесплатный сервис с тысячами шрифтов. Чтобы использовать шрифт, нужно подключить его через тег <link> в <head>, а потом применить в CSS через font-family.

Google Fonts
<!-- 1. Добавить в <head> --> <link href="https://fonts.googleapis.com/css2?family=Comfortaa:wght@400;700&display=swap" rel="stylesheet" > body { font-family: 'Comfortaa', cursive; }
✓
В практике нужно будет подключить любой шрифт с Google Fonts. Попробуй Comfortaa, Nunito, Poppins или Montserrat — все они отлично выглядят.

Свойства шрифта

типографика
h1 { font-size: 2.5rem; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; } p { font-size: 1rem; font-weight: 400; line-height: 1.7; }
Результат
font-family
Название шрифта
font-size
Размер (px, rem, em)
font-weight
Жирность: 400 норм, 700 жирный
line-height
Межстрочный интервал
letter-spacing
Межбуквенный интервал
text-align
Выравнивание: left/center/right
10
Стилизация кнопок
Красивые button
▶

Кнопка по умолчанию выглядит некрасиво. Но с CSS её можно сделать современной и привлекательной — задать цвет фона, убрать рамку, добавить скругления, тень и эффект при наведении.

красивая кнопка
button { background-color: #4ade80; color: #071209; border: none; border-radius: 99px; padding: 12px 28px; font-size: 1rem; font-weight: 700; cursor: pointer; } button:hover { opacity: 0.85; }
Результат
💡
cursor: pointer меняет курсор на "руку" при наведении на кнопку. Без этого свойства пользователь может не понять, что это кликабельный элемент.

@keyframes и animation

CSS-анимации оживляют страницу без JavaScript. Разберём с нуля.

11
@keyframes — описание кадров
from/to и проценты
▶

@keyframes описывает что происходит во время анимации — от начального состояния до конечного. Свойство animation применяет её к элементу: имя, длительность, функция плавности, задержка, количество повторений.

базовая анимация
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } h1 { animation: fadeIn 0.8s ease both; }
Результат
animation-name
Имя @keyframes блока
animation-duration
Длительность: 0.5s, 2s
animation-timing-function
ease, linear, ease-in-out
animation-delay
Задержка перед стартом
animation-iteration-count
Повторений: 1, 3, infinite
animation-fill-mode
both, forwards, backwards
12
Промежуточные кадры
Пульс, вращение, прыжок
▶

Используй проценты (0%, 50%, 100%) для сложных анимаций с промежуточными состояниями. Один блок @keyframes — одна анимация, но можно применять несколько через запятую.

три примера
@keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.15); } } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes bounce { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-18px); } } .btn { animation: pulse 2s ease-in-out infinite; } .icon { animation: spin 1.5s linear infinite; }
Живые примеры
✓
Сокращённая запись: animation: имя длит. функция задержка кол-во fill-mode. Например: animation: fadeIn 0.5s ease 0.2s both.

Создай стилизованный сайт

Применяй всё, что изучил. Напиши CSS прямо в редакторе — предпросмотр обновляется мгновенно.

🎨
Фон #1C1C1C
🔤
Подключить шрифт
📝
Заголовок h1
🔘
Стильная кнопка
Live
Редактор кода
Предпросмотр
Прогресс задания 0 / 4
✓
Фон страницы задан цветом #1C1C1C
✓
Подключён внешний шрифт (Google Fonts)
✓
Есть заголовок <h1> со стилями
✓
Есть кнопка <button> с CSS-стилями (цвет, скругление, отступ)
🎉
CSS освоен!

Отличная работа! Ты научился делать страницы красивыми: задавать фон, цвета, шрифты и стилизовать кнопки. Это фундамент любого современного сайта.

Следующий шаг — Flexbox и Grid для вёрстки макетов, а потом анимации. Ты на верном пути!

🏅
CSS Stylist
Первый стиль создан · CSS-TRAIN

5 практических заданий

Нарастающая сложность. Напиши код → ▶ Запустить → ✓ Проверить.

Выполнено0 / 5
1
Легко
Тёмная визитка
Фон #1C1C1C, белый текст, Google Fonts, цветные акценты.
HTML+CSS
Предпросмотр
2
Легко
4 вида кнопок
Обычная, outline, pill (border-radius:99px), shadow. Каждой — :hover.
HTML+CSS
Предпросмотр
3
Средне
Карточки продуктов
Три карточки в ряд (Flexbox): картинка, название, цена, кнопка.
HTML+CSS
Предпросмотр
4
Средне
Фиксированный Navbar
position:fixed, логотип + ссылки, transition, backdrop-filter:blur.
HTML+CSS
Предпросмотр
5
Сложно
Анимированный лендинг
@keyframes: fadeIn для заголовка, пульс для кнопки, градиентный фон.
HTML+CSS
Предпросмотр