1. Введение в веб-технологии: семантическая верстка на HTML5 и основы стилизации CSS3
Введение в веб-технологии: семантическая верстка на HTML5 и основы стилизации CSS3
Добро пожаловать в курс «Основы фронтенд-разработки: с нуля до первого проекта»! Это первая статья, с которой начнется ваше путешествие в мир создания веб-сайтов. Сегодня мы разберем фундамент, на котором держится весь интернет: языки HTML и CSS.
Представьте, что создание сайта — это строительство дома. Вам нужен каркас (стены, перекрытия), чтобы здание стояло, и отделка (обои, фасад, мебель), чтобы в нем было приятно находиться. В веб-разработке роль каркаса выполняет HTML, а роль отделки — CSS.
Как работает веб: краткий экскурс
Прежде чем писать код, важно понять, что происходит, когда вы вводите адрес сайта в браузере. Интернет работает по модели «Клиент-Сервер».
* Клиент — это ваш браузер (Chrome, Firefox, Safari). Он отправляет запрос. * Сервер — это удаленный компьютер, который хранит файлы сайта. Он отправляет ответ.
Когда сервер присылает файлы, браузер выступает в роли переводчика: он читает код и превращает его в красивую картинку, которую вы видите на экране.
!Визуализация процесса обмена данными между браузером пользователя и удаленным сервером.
HTML5: Скелет вашего сайта
HTML (HyperText Markup Language) — это язык гипертекстовой разметки. Это не язык программирования в привычном смысле (здесь нет переменных или циклов), это язык структуры.
HTML состоит из тегов. Тег — это команда для браузера, заключенная в угловые скобки. Большинство тегов являются парными: у них есть открывающая часть и закрывающая часть (со слэшем /).
Пример анатомии тега:
Здесь:
* <p> — открывающий тег (обозначает абзац).
* class="text" — атрибут (дополнительная информация о теге).
* Привет, мир! — содержимое.
* </p> — закрывающий тег.
Структура HTML-документа
Любой современный сайт начинается с базового шаблона. Давайте посмотрим на минимально необходимый код:
Разберем по строкам:
<!DOCTYPE html> — сообщает браузеру, что мы используем современный стандарт HTML5.<html> — корневой элемент, контейнер для всего кода.<head> — «голова» сайта. Здесь хранится техническая информация, которая не видна на странице (кодировка, заголовок вкладки, подключение стилей).<body> — «тело» сайта. Всё, что вы напишете здесь, пользователь увидит в окне браузера.Семантическая верстка: почему это важно?
В старых версиях HTML разработчики часто использовали тег <div> (обычный блок) для всего подряд. Это работало визуально, но создавало проблемы для поисковиков (Google, Яндекс) и людей с ограниченными возможностями.
Семантическая верстка — это подход, при котором тег выбирается в зависимости от смысла содержимого, а не от того, как оно должно выглядеть.
HTML5 представил набор семантических тегов, которые описывают структуру страницы:
* <header> — «шапка» сайта (логотип, меню).
* <nav> — навигация (ссылки на другие страницы).
* <main> — основное уникальное содержимое страницы.
* <article> — независимый материал (например, статья в блоге).
* <section> — смысловой раздел документа.
* <aside> — боковая панель (реклама, дополнительные ссылки).
* <footer> — «подвал» сайта (контакты, копирайт).
!Структура современной веб-страницы с использованием семантических тегов HTML5.
> Использование правильных тегов помогает скринридерам (программам для незрячих) корректно читать ваш сайт. Это называется доступностью (Accessibility).
Подробнее о семантике можно прочитать в документации MDN Web Docs.
CSS3: Добавляем стиль
Если HTML — это скелет, то CSS (Cascading Style Sheets) — это кожа и одежда. CSS отвечает за цвета, шрифты, отступы и расположение элементов.
Синтаксис CSS
CSS состоит из правил. Каждое правило имеет селектор (к чему применяем стиль) и блок объявлений (что именно меняем).
* p — селектор (выбираем все абзацы).
* color — свойство.
* red — значение.
Основные виды селекторов
h1 { ... } — применится ко всем заголовкам h1..button { ... } — применится ко всем элементам с атрибутом class="button". Классы начинаются с точки.#logo { ... } — применится к одному уникальному элементу с id="logo". ID начинается с решетки.> Хорошей практикой считается использование классов для стилизации. ID лучше оставлять для уникальных элементов или для JavaScript, так как ID имеет слишком высокий приоритет, который сложно переопределить.
Блочная модель (Box Model)
Это самая важная концепция в CSS. Каждый элемент на странице — это прямоугольный ящик (box). Даже если он выглядит круглым или прозрачным, браузер видит его как прямоугольник.
Этот «ящик» состоит из четырех слоев (от центра наружу):
!Визуальное представление блочной модели CSS: контент, внутренние отступы, границы и внешние отступы.
Пример кода для понимания отступов:
Практика: Собираем всё вместе
Давайте создадим простую карточку товара, используя полученные знания.
HTML:
CSS:
В этом примере мы использовали семантический тег <article>, так как карточка товара — это самостоятельная единица контента. Мы задали классы для гибкой стилизации и использовали свойства блочной модели (padding, width, border) для оформления.
Заключение
Сегодня вы сделали первый шаг в веб-разработке. Мы разобрали: * Как браузер получает данные от сервера. * Структуру HTML-документа и важность семантических тегов. * Основы синтаксиса CSS и концепцию блочной модели.
В следующей статье мы углубимся в работу с формами и вводами данных, чтобы сделать наши страницы интерактивными.
Попробуйте самостоятельно создать HTML-файл на своем компьютере и поэкспериментировать с тегами и стилями. Практика — лучший учитель!