Тег `<iframe>` встраивает другую HTML-страницу или виджет внутрь вашей: карту, видео с другого сервиса, форму. Атрибут `src` указывает адрес встраиваемого документа.

Не злоупотребляйте iframe без необходимости — это влияет на безопасность и производительность.

HTML
<iframe src="https://example.com/map" width="600" height="400" title="Карта"></iframe>
Игра Упражнение

Бесплатно, вход не требуется

Содержание книги

Всего: 43 глав

Книга, игра и упражнения доступны без регистрации и покупки.

Раздел №1. ВведениеЛюбая страница в браузере — это HTML-документ, стили CSS и при необходимости скрипты JavaScript. Браузер загружает файлы с сервера, строит DOM-дерево и отображает результат на экране.Откройте инструмен...
Раздел №2. Изучаем HTMLДля вёрстки удобно использовать редактор кода с подсветкой синтаксиса. Популярный бесплатный вариант — Visual Studio Code: установите его с официального сайта и добавьте расширения для HTML и CSS.С...
Минимальная страница содержит объявление `&lt;!doctype html&gt;`, корневой тег `&lt;html&gt;`, секции `&lt;head&gt;` и `&lt;body&gt;`. В `&lt;head&gt;` указывают кодировку и заголовок вкладки, в `&lt;body&gt;` — видимый...
Заголовки `&lt;h1&gt;`–`&lt;h6&gt;` задают иерархию текста: один `&lt;h1&gt;` — главный заголовок страницы, далее подзаголовки уровней 2–6. Не пропускайте уровни без необходимости — так проще навигация и SEO.Заголовки бл...
Абзацы оформляют тегом `&lt;p&gt;`, перенос строки — `&lt;br&gt;`. Для акцента: `&lt;strong&gt;` (важное), `&lt;em&gt;` (выделение), `&lt;mark&gt;` (подсветка). Тег `&lt;span&gt;` — строчный контейнер без смысловой нагру...
Маркированный список — `&lt;ul&gt;` с пунктами `&lt;li&gt;`, нумерованный — `&lt;ol&gt;`. Списки определений: `&lt;dl&gt;`, `&lt;dt&gt;` (термин), `&lt;dd&gt;` (описание).Списки удобны для меню, шагов инструкции и перечи...
Изображение вставляют тегом `&lt;img&gt;` с атрибутами `src` (путь к файлу) и `alt` (описание для доступности). Можно задать `width` и `height`, чтобы страница не «прыгала» при загрузке.Храните картинки в папке проекта и...
Ссылки создаются тегом `&lt;a href=&quot;...&quot;&gt;`. Атрибут `href` может указывать на другую страницу, якорь `#id`, email `mailto:` или телефон `tel:`.Текст ссылки должен быть понятным: «Скачать программу», а не «на...
Контент группируют блочными `&lt;div&gt;` и строчными `&lt;span&gt;`. В HTML5 есть семантические теги: `&lt;header&gt;`, `&lt;nav&gt;`, `&lt;main&gt;`, `&lt;section&gt;`, `&lt;article&gt;`, `&lt;aside&gt;`, `&lt;footer&g...
Тег `&lt;iframe&gt;` встраивает другую HTML-страницу или виджет внутрь вашей: карту, видео с другого сервиса, форму. Атрибут `src` указывает адрес встраиваемого документа.Не злоупотребляйте iframe без необходимости — это...
Таблицы строят из `&lt;table&gt;`, строк `&lt;tr&gt;`, ячеек `&lt;td&gt;` и заголовков `&lt;th&gt;`. Для подписи используйте `&lt;caption&gt;`. Таблицы подходят для табличных данных, а не для всей вёрстки страницы.Группи...
Форма `&lt;form&gt;` отправляет данные на сервер. Поля: `&lt;input&gt;`, `&lt;textarea&gt;`, `&lt;select&gt;`, кнопки `&lt;button&gt;`. Атрибуты `action` и `method` задают адрес и способ отправки (GET или POST).Связывайт...
HTML5-тег `&lt;video&gt;` воспроизводит ролики. Атрибут `controls` показывает панель управления, `poster` — картинку до старта. Источники задают через `&lt;source src=&quot;...&quot; type=&quot;video/mp4&quot;&gt;`.Добав...
Тег `&lt;audio&gt;` работает аналогично `&lt;video&gt;`, но для звука. Атрибуты `controls`, `loop`, `muted` управляют воспроизведением. Форматы часто: MP3, OGG, WAV.Для подкастов и фоновой музыки на лендингах используйте...
Favicon — маленькая иконка во вкладке браузера. Подключают в `&lt;head&gt;` через `&lt;link rel=&quot;icon&quot; href=&quot;favicon.ico&quot; type=&quot;image/x-icon&quot;&gt;`. Можно использовать PNG или SVG.Подготовьте...
Спецсимволы в HTML записывают мнемониками: `&lt;` → `&amp;lt;`, `&gt;` → `&amp;gt;`, `&amp;` → `&amp;amp;`, неразрывный пробел → `&amp;nbsp;`, копирайт → `&amp;copy;`.Мнемоники нужны, чтобы браузер не воспринимал символы...
Раздел №3. Изучаем CSSCSS-правило: селектор и блок { свойство: значение; }. Селектор указывает, к каким элементам применить стили.CSS отделяет оформление от HTML-разметки.CSSp { color: #333; font-size: 16px; }
Три способа: внешний файл через link, блок style в head, inline style на элементе. Для проектов лучше внешний файл — проще поддерживать и кешировать.HTML&lt;link rel=&quot;stylesheet&quot; href=&quot;css/style.css&quot;&...
Шрифт задают свойством font-family. Можно подключить файл через @font-face или Google Fonts. Указывайте запасные шрифты: Roboto, Arial, sans-serif.CSS@font-face { font-family: &quot;MyFont&quot;; src: url(&quot;fonts/myf...
Оформление текста: font-size, font-weight, line-height, text-align, text-decoration, color. Межстрочный интервал line-height: 1.5 улучшает читаемость.CSSh1 { font-size: 2rem; font-weight: 700; text-align: center; } p { l...
Частые единицы: px, %, em, rem, vw и vh. rem удобен для масштабируемых интерфейсов — считается от корневого font-size.CSS.box { width: 80%; padding: 1rem; font-size: 1.125rem; }
Селектор по тегу, классу (.menu), id (#header). Комбинаторы: nav a, ul &gt; li. Псевдоклассы: :hover, :focus, :nth-child().CSS.btn { padding: 8px 16px; } .btn:hover { background: #2563eb; } nav a { text-decoration: none;...
Списки оформляют через list-style-type и list-style-image. list-style: none часто используют для меню навигации.CSSul.menu { list-style: none; padding: 0; } ul.menu li { display: inline-block; margin-right: 16px; }
Блоковая модель: width, height, margin, padding, border. box-sizing: border-box включает padding и border в заданную ширину.CSS.card { width: 300px; padding: 20px; margin: 16px auto; border: 1px solid #ddd; box-sizing: b...
Фон блока: background-color, background-image, background-size, background-position, background-repeat.CSS.hero { background-color: #1e293b; background-image: url(&quot;bg.jpg&quot;); background-size: cover; background-p...
Линейный градиент: linear-gradient. Радиальный: radial-gradient. Градиенты задают через background или background-image.CSS.banner { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; }
float: left или right заставляет блок обтекаться текстом. clear: both сбрасывает обтекание. Для макетов чаще Flexbox и Grid.CSSimg.float-left { float: left; margin: 0 16px 16px 0; } .clearfix::after { content: &quot;&quo...
position: static, relative, absolute, fixed, sticky. Свойства top, left, right, bottom смещают элемент. z-index управляет слоями.CSS.modal { position: fixed; inset: 0; background: rgba(0,0,0,.5); } .badge { position: abs...
Анимации через @keyframes и animation. Плавные переходы — transition при изменении свойств, например при :hover.CSS@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .box { animation: fadeIn 0.5s ease; transit...
transform: translate, rotate, scale, skew. transform-origin задаёт точку трансформации. Не путайте с transition и animation.CSS.icon { transform: rotate(-10deg) scale(1.2); transform-origin: center; }
Раздел №4. Вёрстка страницВёрстка начинается с макета: шапка, контент, подвал. Сначала HTML-структура и семантика, затем CSS.Не верстайте «картинкой» — используйте текст и стили.Схемаheader → nav main → sections footer
Создайте index.html, css/style.css, папки images и fonts. Задайте box-sizing: border-box и сброс margin у body.CSS*, *::before, *::after { box-sizing: border-box; } body { margin: 0; font-family: system-ui, sans-serif; }
Меню в header и nav. Ссылки ul/li/a оформляют через Flexbox: display flex и gap.CSSnav ul { display: flex; list-style: none; gap: 1rem; padding: 0; }
Поле input type=&quot;file&quot; выбирает файл. Атрибут accept ограничивает типы: image/* или .pdf.HTML&lt;label&gt;Загрузить фото&lt;input type=&quot;file&quot; name=&quot;photo&quot; accept=&quot;image/*&quot;&gt;&lt;/...
Галерею собирают на CSS Grid с repeat(auto-fit, minmax(200px, 1fr)). Ячейка — figure с img и figcaption.CSS.gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
Подвал footer содержит копирайт и контакты. После просмотра этих уроков у вас уже будет полное понимание того, как верстаются web-страницы, и вы сможете легко верстать несложные сайты.Закрепите навыки: сверстайте лендинг...
Раздел №6. Адаптивная вёрсткаАдаптивная вёрстка подстраивает макет под ширину экрана. Используют %, max-width, Flexbox, Grid и медиа-запросы. Mobile-first: база для узкого экрана, расширения через min-width.CSS.container...
Медиа-запрос @media (min-width: 768px) применяет стили от заданной ширины. Можно проверять ориентацию и prefers-reduced-motion.CSS@media (min-width: 768px) { .menu { flex-direction: row; } } @media (max-width: 767px) { ....
На mobile меню сворачивают в бургер или вертикальный список. Уменьшайте padding и font-size в медиа-запросах.CSS@media (max-width: 767px) { header { padding: 12px; } nav ul { flex-direction: column; } }
На телефоне — одна колонка, на десктопе — две-три. Картинки: max-width 100% и height auto.CSSimg { max-width: 100%; height: auto; } @media (min-width: 992px) { .content { display: grid; grid-template-columns: 2fr 1fr; ga...
Пагинация должна быть удобна на touch: зона нажатия около 44px. На узком экране сокращайте число видимых пунктов.CSS.pagination a { display: inline-block; min-width: 44px; min-height: 44px; line-height: 44px; text-align:...
Footer на mobile: колонки становятся вертикальным стеком. Увеличьте line-height и отступы между блоками.CSS@media (max-width: 767px) { footer .columns { flex-direction: column; gap: 24px; } }
Вы прошли путь от первой HTML-страницы до адаптивной вёрстки. Практикуйтесь: сверстайте лендинг и проверьте в DevTools.Дальше — JavaScript, фреймворки или Bootstrap.Чек-лист✓ Семантический HTML ✓ Отдельный CSS ✓ Адаптив...

Интерактивная игра

Финальный тест в формате Duolingo: 645 вопросов по всем темам курса.

Начать игру