- Модуль 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: Практические проекты
Базовый элемент figure
Создайте простую фигуру с изображением природы. Используйте правильный семантический элемент для обертки изображения.
figure {
margin: 20px 0;
padding: 10px;
background: #f5f5f5;
border-radius: 8px;
}
img {
width: 100%;
height: auto;
display: block;
}
<input1>
<img src="https://naytikurs.ru/img/1.png" alt="Природа">
</input1>
Добавление подписи к изображению
Добавьте подпись к изображению горного пейзажа. Подпись должна быть семантически связана с изображением.
figure {
margin: 15px 0;
text-align: center;
background: #fff;
border: 1px solid #ddd;
padding: 15px;
}
img {
width: 100%;
max-width: 300px;
height: auto;
}
figcaption {
margin-top: 10px;
font-style: italic;
color: #666;
font-size: 14px;
}
<figure>
<img src="https://naytikurs.ru/img/2.png" alt="Горы">
<input1>Горный пейзаж на закате</input1>
</figure>
Подпись перед изображением
Создайте фигуру, где подпись расположена перед изображением. Это часто используется для заголовков иллюстраций.
figure {
background: linear-gradient(to bottom, #f0f0f0, #fff);
padding: 20px;
border-radius: 10px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
figcaption {
font-weight: bold;
color: #333;
margin-bottom: 15px;
font-size: 16px;
}
img {
width: 100%;
border-radius: 5px;
}
<input1>
<input2>Рисунок 1. Архитектура здания</input2>
<img src="https://naytikurs.ru/img/4.png" alt="Здание">
</input1>
Фигура с несколькими изображениями
Создайте фигуру с двумя связанными изображениями и общей подписью. Это используется для сравнения или демонстрации последовательности.
figure {
background: #fafafa;
padding: 15px;
border-left: 4px solid #4CAF50;
}
.image-group {
display: flex;
gap: 10px;
margin-bottom: 10px;
}
img {
width: 50%;
height: auto;
}
figcaption {
text-align: center;
color: #555;
font-size: 14px;
}
<input1>
<div class="image-group">
<img src="https://naytikurs.ru/img/5.png" alt="До">
<img src="https://naytikurs.ru/img/6.png" alt="После">
</div>
<input2>Сравнение: до и после обработки</input2>
</input1>
Фигура с видео контентом
Оформите видео как фигуру с описательной подписью. Видео должно иметь элементы управления.
figure {
margin: 0;
padding: 10px;
background: #222;
border-radius: 8px;
}
video {
width: 100%;
border-radius: 4px;
}
figcaption {
color: #fff;
margin-top: 10px;
font-size: 13px;
opacity: 0.9;
}
<input1>
<input2 src="https://naytikurs.ru/img/1.mp4" controls></input2>
<figcaption>Видеоурок: основы веб-разработки</figcaption>
</input1>
Фигура с аудио
Создайте фигуру с аудиоплеером и подписью. Аудио должно иметь элементы управления воспроизведением.
figure {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
padding: 20px;
border-radius: 12px;
text-align: center;
}
audio {
width: 100%;
max-width: 300px;
}
figcaption {
color: white;
margin-top: 15px;
font-weight: 500;
}
<figure>
<input1 src="https://naytikurs.ru/img/1.mp3" input2></input1>
<figcaption>Подкаст: Современные технологии</figcaption>
</figure>
Фигура с блоком кода
Оформите пример кода как фигуру с подписью. Код должен быть в соответствующих семантических тегах.
figure {
margin: 15px 0;
background: #f8f8f8;
border: 1px solid #e0e0e0;
border-radius: 6px;
overflow: hidden;
}
pre {
margin: 0;
padding: 15px;
background: #282c34;
color: #abb2bf;
overflow-x: auto;
}
code {
font-family: 'Courier New', monospace;
font-size: 14px;
}
figcaption {
padding: 10px 15px;
background: #fff;
border-top: 1px solid #e0e0e0;
font-size: 13px;
color: #666;
}
<input1>
<pre><input2>function hello() {
console.log('Hello, World!');
}</input2></pre>
<figcaption>Пример 1. Функция приветствия</figcaption>
</input1>
Фигура с цитатой
Создайте фигуру с цитатой и указанием источника в подписи. Цитата должна быть в правильном семантическом теге.
figure {
margin: 20px 0;
padding: 0;
border-left: 5px solid #3498db;
background: #ecf0f1;
}
blockquote {
margin: 0;
padding: 20px;
font-style: italic;
font-size: 16px;
color: #2c3e50;
}
figcaption {
padding: 10px 20px;
background: #fff;
color: #7f8c8d;
font-size: 14px;
text-align: right;
}
<figure>
<input1>«Простота — залог надежности»</input1>
<input2>— Эдсгер Дейкстра</input2>
</figure>
Фигура с SVG графикой
Оформите SVG изображение как фигуру с подписью. SVG должно быть встроено через тег img.
figure {
display: inline-block;
margin: 10px;
padding: 15px;
background: white;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
border-radius: 8px;
}
img {
width: 100px;
height: 100px;
display: block;
margin: 0 auto;
}
figcaption {
margin-top: 12px;
text-align: center;
font-size: 14px;
color: #555;
}
<input1>
<img src="https://naytikurs.ru/img/11s.svg" input2="Иконка">
<input3>Векторная иконка</input3>
</input1>
Фигура с таблицей данных
Создайте фигуру с таблицей и описательной подписью. Таблица должна содержать простые данные.
figure {
margin: 15px 0;
background: #fff;
border: 1px solid #ddd;
border-radius: 4px;
overflow: hidden;
}
table {
width: 100%;
border-collapse: collapse;
}
tr:nth-child(even) {
background: #f9f9f9;
}
td {
padding: 10px;
border-bottom: 1px solid #eee;
}
figcaption {
padding: 10px;
background: #f5f5f5;
font-size: 14px;
color: #666;
}
<input1>
<input2>
<tr><td>HTML</td><td>Структура</td></tr>
<tr><td>CSS</td><td>Стили</td></tr>
<tr><td>JS</td><td>Логика</td></tr>
</input2>
<figcaption>Таблица 1. Веб-технологии</figcaption>
</input1>
Фигура с диаграммой
Оформите изображение диаграммы как фигуру с нумерованной подписью для научной статьи.
figure {
margin: 20px auto;
max-width: 350px;
padding: 10px;
background: #fafafa;
border: 2px solid #e0e0e0;
}
img {
width: 100%;
height: auto;
}
figcaption {
margin-top: 10px;
padding-top: 10px;
border-top: 1px solid #ddd;
font-size: 14px;
text-align: center;
}
.figure-number {
font-weight: bold;
color: #333;
}
<input1>
<img src="https://naytikurs.ru/img/7.png" alt="График роста">
<input2><span class="figure-number">Рис. 3.</span> Динамика роста показателей за 2024 год</input2>
</input1>
Фигура с атрибутами доступности
Создайте доступную фигуру с изображением, используя ARIA атрибуты для улучшения доступности.
figure {
margin: 15px 0;
padding: 15px;
background: linear-gradient(to right, #f5f7fa, #c3cfe2);
border-radius: 10px;
}
img {
width: 100%;
border-radius: 5px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
figcaption {
margin-top: 12px;
color: #2c3e50;
font-weight: 500;
text-align: center;
}
<figure input1="figure" input2="caption1">
<img src="https://naytikurs.ru/img/8.png" alt="Пейзаж">
<figcaption input3="caption1">Осенний пейзаж в парке</figcaption>
</figure>
Галерея с несколькими фигурами
Создайте мини-галерею из двух независимых фигур, каждая со своим изображением и подписью.
.gallery {
display: flex;
gap: 15px;
flex-wrap: wrap;
}
figure {
flex: 1;
min-width: 150px;
margin: 0;
background: white;
border: 1px solid #e0e0e0;
border-radius: 8px;
overflow: hidden;
}
img {
width: 100%;
height: 120px;
object-fit: cover;
}
figcaption {
padding: 8px;
font-size: 12px;
text-align: center;
background: #f8f8f8;
}
<div class="gallery">
<input1>
<img src="https://naytikurs.ru/img/1j.jpeg" alt="Фото 1">
<input2>Утренний рассвет</input2>
</input1>
<input3>
<img src="https://naytikurs.ru/img/4j.jpeg" alt="Фото 2">
<figcaption>Вечерний закат</figcaption>
</input3>
</div>
Комплексная фигура с медиа
Создайте сложную фигуру с картинкой в формате WebP и развернутой подписью с дополнительной информацией.
figure {
max-width: 350px;
margin: 20px auto;
background: #fff;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
border-radius: 10px;
overflow: hidden;
}
img {
width: 100%;
height: auto;
display: block;
}
figcaption {
padding: 15px;
background: #f7f7f7;
}
.caption-title {
font-weight: bold;
color: #333;
margin-bottom: 5px;
}
.caption-meta {
font-size: 12px;
color: #777;
}
<input1>
<img src="https://naytikurs.ru/img/1w.webp" input2="Современная архитектура">
<input3>
<div class="caption-title">Инновационный дизайн</div>
<div class="caption-meta">Фото: WebP формат • 2024 год</div>
</input3>
</input1>