Глава 1 · Урок 6 из 6
Первая страница со стилями
Практика: создаём HTML-страницу и CSS-файл, подключаем стили, задаём шрифт, цвета, ширину текста и отступы и проверяем результат в инструментах разработчика.
Цель урока
Собрать страницу с отдельным файлом стилей от начала до конца и закрепить всё, что было в главе.
Файлы
Создайте папку с двумя файлами. Для работы хватит любого текстового редактора, но удобнее редактор кода, например VS Code.
my-page/
├─ index.html
└─ style.cssРазметка
В index.html — обычная страница с заголовком, абзацами и списком. Стили подключены элементом link:
<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Рецепт блинов</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<main class="recipe">
<h1>Блины на молоке</h1>
<p class="recipe__lead">Тонкие, с кружевными краями. Хватит на 15 штук.</p>
<h2>Что понадобится</h2>
<ul>
<li>Молоко — 500 мл</li>
<li>Яйца — 2 шт.</li>
<li>Мука — 200 г</li>
</ul>
<p>Смешайте всё до однородности и дайте тесту постоять 15 минут.</p>
</main>
</body>
</html>Откройте файл в браузере двойным кликом. Страница уже работает, но выглядит как документ 1995 года.
Стили
Теперь заполните style.css. Начните с общих настроек текста для всей страницы, затем ограничьте ширину колонки и оформите детали.
<main class="recipe">
<h1>Блины на молоке</h1>
<p class="recipe__lead">Тонкие, с кружевными краями. Хватит на 15 штук.</p>
<h2>Что понадобится</h2>
<ul>
<li>Молоко — 500 мл</li>
<li>Яйца — 2 шт.</li>
<li>Мука — 200 г</li>
</ul>
<p>Смешайте всё до однородности и дайте тесту постоять 15 минут.</p>
</main>body {
margin: 0;
font-family: system-ui, sans-serif;
line-height: 1.6;
color: #2b2b2b;
background: #fffaf2;
}
.recipe {
max-width: 36rem;
margin: 0 auto;
padding: 1.5rem;
}
h1 {
margin-top: 0;
color: #b3541e;
}
.recipe__lead {
font-size: 1.2rem;
color: #6b6b6b;
}Результат
Что здесь происходит:
- у
bodyзадан шрифт, межстрочный интервал и цвета — они наследуются всеми элементами внутри; max-width: 36remне даёт строкам растянуться на весь широкий экран — длинные строки трудно читать;margin: 0 autoставит колонку по центру;paddingоставляет поля, чтобы на телефоне текст не прилипал к краям.
Проверьте себя в инструментах
Откройте инструменты разработчика и выберите абзац с классом recipe__lead. На панели Styles вы увидите правило .recipe__lead, а ниже — унаследованные от body свойства. На панели Computed найдите color и убедитесь, что значение взято из вашего правила, а не из body.
Поэкспериментируйте: поменяйте цвет заголовка или ширину колонки прямо в инструментах, а удачный вариант перенесите в style.css.
Что запомнить
- Разметка — в index.html, оформление — в отдельном style.css, связь — элемент link.
- Начинайте с основы — шрифт, цвет, ширина строки, — а детали добавляйте потом.
- Ограничивайте ширину текста, чтобы строки было удобно читать.
- Проверяйте результат в инструментах разработчика.
Проверьте себя
Практика
Задача 1
Оформите карточку рецепта
Поставьте карточку по центру, ограничьте её ширину 24rem, добавьте внутренний отступ 1.5rem, рамку 1px solid #ddd и скругление углов 8px.
<article class="card">
<h1>Сырники</h1>
<p>Творог, яйцо, немного муки и сахара. 20 минут на сковороде.</p>
</article>Ожидаемый результат
Показать решение
.card {
max-width: 24rem;
margin: 0 auto;
padding: 1.5rem;
border: 1px solid #ddd;
border-radius: 8px;
}Задача 2
Задайте шрифт всей странице
Одним правилом сделайте так, чтобы весь текст страницы был шрифтом Georgia, serif и цветом #333.
<h1>Дневник</h1>
<p>Сегодня <strong>отличный</strong> день.</p>
<ul>
<li>Прогулка</li>
<li>Книга</li>
</ul>Ожидаемый результат
Показать решение
body {
font-family: Georgia, serif;
color: #333;
}Свойства наследуются от body, поэтому одного правила хватает для заголовка, абзаца и списка.