- Модуль 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: Практические проекты
Создание простой ссылки на Email
Ваша первая задача — создать базовую кликабельную ссылку. При нажатии на неё у пользователя должен открываться почтовый клиент по умолчанию с уже вставленным адресом получателя. Обратите внимание на специальный протокол, который нужно использовать в атрибуте `href`.
body {
font-family: sans-serif;
padding: 15px;
}
a {
color: #007bff;
text-decoration: none;
font-size: 18px;
}
a:hover {
text-decoration: underline;
}
<a href="input1:info@example.com">
Напишите нам на почту
</a>
Создание простой ссылки на телефон
Теперь создайте ссылку, при клике на которую (особенно на мобильных устройствах) будет предложено позвонить по указанному номеру. Для этого также используется специальный протокол, но уже другой.
body {
font-family: sans-serif;
padding: 15px;
}
a {
color: #28a745;
text-decoration: none;
font-size: 18px;
}
a:hover {
text-decoration: underline;
}
<a href="input1:+74951234567">
Позвонить нам
</a>
Заполнение атрибута для email-ссылки
В этом задании вам нужно не только указать протокол и адрес, но и правильно назвать атрибут, который отвечает за адрес ссылки. Допишите недостающий атрибут, чтобы ссылка стала рабочей.
body {
font-family: sans-serif;
padding: 15px;
}
a {
display: inline-block;
background-color: #007bff;
color: white;
padding: 10px 15px;
border-radius: 5px;
text-decoration: none;
font-size: 16px;
}
a:hover {
background-color: #0056b3;
}
<a input1="mailto:support@example.com">
Служба поддержки
</a>
Email-ссылка с темой письма
Усложним задачу. Сделайте так, чтобы при клике на ссылку не только открывался почтовый клиент с адресом, но и автоматически подставлялась тема письма. Это делается с помощью специального параметра в `href`.
body {
font-family: sans-serif;
padding: 15px;
}
a {
color: #dc3545;
text-decoration: none;
font-size: 18px;
font-weight: bold;
}
a:hover {
text-decoration: underline;
}
<a href="mailto:order@example.com?input1=Заказ%20с%20сайта">
Оформить заказ по почте
</a>
Email-ссылка с темой и текстом
Теперь давайте добавим еще и текст письма по умолчанию. Это полезно, когда вы хотите, чтобы пользователь отправил письмо по определенному шаблону. Для этого используется еще один параметр, который добавляется после темы.
body {
font-family: sans-serif;
padding: 15px;
}
a {
color: #17a2b8;
text-decoration: none;
font-size: 18px;
}
a:hover {
text-decoration: underline;
}
<a href="mailto:hr@example.com?subject=Отклик%20на%20вакансиюinput1body=Добрый%20день,%20меня%20заинтересовала%20ваша%20вакансия.">
Откликнуться на вакансию
</a>
Изображение как ссылка для звонка
Любой элемент можно сделать ссылкой, включая изображения. В этом задании вам нужно обернуть иконку телефона в тег ссылки, чтобы при клике на картинку предлагался звонок по номеру.
body {
font-family: sans-serif;
padding: 15px;
text-align: center;
}
img {
width: 80px;
height: 80px;
cursor: pointer;
transition: transform 0.2s;
}
img:hover {
transform: scale(1.1);
}
<input1 href="tel:+78005553535">
<img src="https://naytikurs.ru/img/8.png" alt="Позвонить">
</input1>
Комплексная карточка контактов
Финальное задание. Создайте небольшую карточку контактов с двумя ссылками: одна для email, другая для телефона. Вам нужно правильно заполнить пропущенные атрибуты и протоколы, чтобы обе ссылки работали корректно.
body {
font-family: sans-serif;
}
.contact-card {
border: 1px solid #ccc;
border-radius: 8px;
padding: 20px;
max-width: 300px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.contact-card h3 {
margin-top: 0;
}
.contact-card p {
margin: 10px 0;
font-size: 16px;
}
.contact-card a {
color: #007bff;
text-decoration: none;
}
.contact-card a:hover {
text-decoration: underline;
}
<div class="contact-card">
<h3>Свяжитесь с нами</h3>
<p>
Почта:
<a input1="input2:manager@example.com">
manager@example.com
</a>
</p>
<p>
Телефон:
<a href="input3:+79111111111">
+7 (911) 111-11-11
</a>
</p>
</div>