- Модуль 1: Основы HTML-разметки
- Модуль 2: Форматирование текста
- Жирный текст (b и strong).
- Курсив (i и em).
- Подчеркивание и перечеркивание (u, s, del, ins).
- Верхний и нижний индекс (sup, sub).
- Цитаты и блоки цитат (q, blockquote, cite).
- Код и предварительно форматированный текст (code, pre).
- Аббревиатуры и определения (abbr, dfn).
- Технические элементы (kbd, samp, var).
- Двунаправленный текст (bdi, bdo).
- Модуль 3: Ссылки и навигация
- Базовые ссылки (a href).
- Внутренние ссылки и якоря.
- Относительные и абсолютные пути.
- Атрибуты target (_blank, _self).
- Заголовки ссылок (title).
- Ссылки на email и телефон.
- Скачивание файлов через ссылки (download).
- Атрибуты rel (nofollow, noreferrer).
- Создание кнопок-ссылок.
- Hash-навигация между разделами.
- URI-схемы (sms:, geo:).
- Модуль 4: Изображения
- Добавление базовых изображений (img).
- Атрибуты изображений (alt, width, height).
- Изображения-ссылки.
- Карты изображений (map, area).
- Picture элемент и множественные источники.
- Адаптивные изображения (srcset, sizes).
- Ленивая загрузка изображений (loading='lazy').
- Форматы изображений и их применение (JPEG, PNG, WebP, SVG).
- SV-анимация через элемент.
- Интерактивные SVG-карты.
- Модуль 5: Списки
- Неупорядоченные списки (ul, li).
- Упорядоченные списки (ol, li) и их атрибуты.
- Типы нумерации (decimal, alpha, roman).
- Вложенные списки и иерархия.
- Списки определений (dl, dt, dd).
- Создание навигационного меню из списка.
- Кастомные маркеры и стилизация списков.
- Атрибуты start и reversed в OL.
- Горизонтальные списки через CSS.
- Модуль 6: Таблицы
- Базовая структура таблицы (table, tr, td).
- Заголовки таблиц (th) и атрибуты scope.
- Объединение строк и столбцов (rowspan, colspan).
- Группировка ячеек (thead, tbody, tfoot).
- Заголовок и подпись таблицы (caption).
- Группировка столбцов (colgroup, col).
- Стилизация таблиц и чередующиеся строки.
- Фиксированные заголовки таблиц.
- Модуль 7: Формы и элементы ввода
- Создание базовой формы (form).
- Атрибуты формы (action, method, enctype).
- Текстовые поля (input type='text').
- Поля ввода пароля (input type='password').
- Флажки и чекбоксы (input type='checkbox').
- Радиокнопки (input type='radio').
- Кнопки (button, input type='submit', input type='reset').
- Выпадающие списки (select, option, optgroup).
- Многострочные поля ввода (textarea).
- Группировка элементов формы (fieldset, legend).
- Подписи к полям (label).
- HTML5 типы полей ( url, number ).
- Поля выбора даты и времени (date, time).
- Слайдеры и диапазоны (input type='range').
- Выбор цвета (input type='color').
- Поля с автозаполнением (datalist).
- Атрибуты полей (placeholder, autocomplete).
- Валидация форм (required, pattern, min, max).
- Загрузка файлов (input type='file').
- Скрытые поля (input type='hidden').
- Элемент output для вычислений.
- Модуль 8: Семантические элементы HTML5
- Шапка сайта (header).
- Основная навигация (nav).
- Основной контент (main).
- Боковая панель (aside).
- Подвал сайта (footer).
- Статьи и самодостаточный контент (article).
- Тематические разделы (section).
- Фигуры и подписи (figure, figcaption).
- Время и даты (time).
- Разворачиваемые блоки (details, summary).
- Прогресс и метрики (progress, meter).
- Диалоговые окна (dialog).
- Когда использовать div, а когда семантические элементы.
- Модуль 9: Аудио и видео
- Модуль 10: Метаданные и head
- Структура head элемента.
- Задание заголовка страницы (title).
- Кодировка и язык документа (meta charset, lang).
- Мета-описание и ключевые слова.
- Настройка viewport для мобильных устройств.
- Добавление favicon.
- Подключение внешних CSS (link rel='stylesheet').
- Подключение скриптов (script).
- Open Graph метаданные для соц.сетей.
- Метатеги для SEO и индексации.
- Предварительная загрузка ресурсов (preload, prefetch).
- PWA манифест и метатеги.
- Модуль 11: Фреймы и встраивание контента
- Модуль 12: SVG и Canvas
- Модуль 13: HTML и доступность
- Модуль 14: HTML для адаптивного веба
- Модуль 15: Практические проекты
Первый заголовок страницы
Перед вами пустой блок landing-страницы. Стили уже покрашены, но самого заголовка нет. Добавьте тег первого уровня, чтобы на странице появилось крупное приветствие. Обратите внимание, что закрывающий тег уже прописан, поэтому нужно вставить только открывающую часть.
.page {
font-family: Arial, sans-serif;
padding: 20px;
text-align: center;
}
.page h1 {
color: #3366ff;
}
<div class="page">
<input1>Мой первый заголовок</h1>
</div>
Закрываем тег заголовка
В заголовке уже есть открывающий тег, но забыли закрыть элемент. Вставьте корректный закрывающий тег, чтобы браузер корректно отобразил разметку.
.page {
font-family: Georgia, serif;
background:#fafafa;
padding:15px;
}
.page h1 {
margin:0;
}
<div class="page">
<h1>Добро пожаловать на мой сайтinput1
</div>
Подзаголовок второго уровня
Раздел путешествий уже имеет главный h1. Добавьте подзаголовок, который поясняет тему раздела, используя корректный уровень заголовка.
section {
padding:10px;
}
section h1 {font-size:22px;}
section h2 {font-size:18px;color:#009688;}
<section>
<h1>Путешествия по России</h1>
<input1>Лучшие направления</input2>
</section>
Заголовок третьего уровня в карточке рецепта
Секция «Рецепты» и рубрика «Супы» уже описаны. Добавьте заголовок третьего уровня, чтобы выделить конкретное блюдо. Стили для h3 уже готовы.
.card h1 {font-size:24px;}
.card h2 {font-size:20px;}
.card h3 {font-size:16px;color:#ff5722;}
<section class="card">
<h1>Рецепты</h1>
<h2>Супы</h2>
<input1>Том Ям</input2>
</section>
Правильная иерархия внутри статьи
В небольшой статье о фронтенде отсутствует подзаголовок второго уровня, из-за чего h3 «теряется». Добавьте недостающий уровень, чтобы восстановить логичную структуру документа.
article h1 {font-size:26px; margin-bottom:4px;}
article h2 {font-size:20px; margin:0 0 4px; color:#3f51b5;}
article h3 {font-size:16px;}
<article>
<h1>Frontend-разработка</h1>
<input1>HTML</input2>
<h3>Семантическая разметка</h3>
</article>
Независимые секции с собственным h1
На странице две логические секции. Первая уже содержит заголовок h1. Вторая должна иметь такой же уровень, так как это отдельный самостоятельный раздел. Добавьте его.
section {padding:8px 0;}
section h1 {font-size:22px; color:#795548;}
<section>
<h1>Фотогалерея</h1>
</section>
<section>
<input1>Контакты</input2>
</section>
Заголовок четвёртого уровня в списке FAQ
Секция вопросов-ответов оформлена списком. Для каждого пункта требуется краткий h4-заголовок. Добавьте недостающий тег для первого вопроса.
.faq h4 {font-size:15px; margin:6px 0; color:#e91e63;}
<section class="faq">
<ul>
<li>
<input1>Как оплатить заказ?</input2>
<p>Вы можете воспользоваться банковской картой...</p>
</li>
</ul>
</section>
Визуально скрытый заголовок для читателей скринридеров
Навигационный блок не должен занимать место на экране, но должен быть объявлен заголовком для устройств доступности. Добавьте h2 с классом visually-hidden.
.visually-hidden {
position:absolute;
left:-10000px;
top:auto;
width:1px;
height:1px;
overflow:hidden;
}
<nav>
<input1 class="visually-hidden">Навигация</input2>
<ul>
<li><a href="#">Главная</a></li>
<li><a href="#">Каталог</a></li>
</ul>
</nav>
Глубина структуры: до h5
В учебном плане курса уже расписаны темы до h4. Добавьте заголовок пятого уровня для конкретного урока.
.course h5 {font-size:13px; color:#0097a7; margin:2px 0;}
<div class="course">
<h1>Курс «HTML и CSS»</h1>
<h2>Модуль 1</h2>
<h3>Урок 3</h3>
<h4>Тема: Семантика</h4>
<input1>Подтема: Заголовки</input2>
</div>
Полная лестница h1-h6
Заключительное задание: соберите полную цепочку заголовков от h1 до h6. В разметке пропущен только последний, шестой уровень. Добавьте его и завершите структуру.
.levels h1 {font-size:24px;}
.levels h2 {font-size:20px;}
.levels h3 {font-size:18px;}
.levels h4 {font-size:16px;}
.levels h5 {font-size:14px;}
.levels h6 {font-size:12px; color:#607d8b;}
<div class="levels">
<h1>Заголовок 1</h1>
<h2>Заголовок 2</h2>
<h3>Заголовок 3</h3>
<h4>Заголовок 4</h4>
<h5>Заголовок 5</h5>
<input1>Заголовок 6</input2>
</div>