1. Основы синтаксиса и базовая структура HTML-документа
Основы синтаксиса и базовая структура HTML-документа
Добро пожаловать в курс «HTML с нуля»! Если вы читаете эту статью, значит, вы решили узнать, как устроен интернет изнутри, и создать свой первый веб-сайт. Это отличное решение.
Прежде чем мы начнем писать код, давайте разберемся, с чем нам предстоит работать. Представьте, что создание сайта — это строительство дома. В этом процессе участвуют три главных «прораба»:
В этой статье мы сосредоточимся исключительно на первом и самом важном этапе — HTML. Без него некуда будет клеить обои и негде проводить электричество.
Что такое HTML-тег?
HTML — это язык разметки. Он не «вычисляет» сложные уравнения, как языки программирования. Его задача — сказать браузеру: «Вот это — заголовок, а вот это — картинка».
Основной строительный блок HTML — это тег.
!Анатомия HTML-элемента: открывающий тег, содержимое и закрывающий тег.
Парные теги
Большинство элементов в HTML являются парными. Они работают как контейнеры. У них есть начало и конец.
Синтаксис выглядит так:
* Открывающий тег: состоит из угловых скобок < и > с именем тега внутри.
* Закрывающий тег: выглядит так же, но перед именем тега стоит косая черта /.
Пример заголовка:
Одиночные (пустые) теги
Некоторые элементы не могут содержать текст или другие теги. Например, изображение или перенос строки. У них нет «внутренностей», поэтому им не нужен закрывающий тег.
Примеры:
* <img> — картинка.
* <br> — перенос строки.
* <hr> — горизонтальная линия.
В современном стандарте HTML5 их можно писать просто как <br>, но иногда вы можете встретить старую запись <br /> (с закрывающим слешем в конце). Оба варианта допустимы, но первый — современнее.
Атрибуты: настройка тегов
Теги могут иметь дополнительные настройки. Эти настройки называются атрибутами. Атрибуты всегда пишутся внутри открывающего тега.
Формула атрибута:
Разберем на примере ссылки. Тег ссылки — <a> (от английского anchor — якорь). Но просто написать <a>Перейти</a> недостаточно. Браузер спросит: «Куда перейти?». Для этого нужен атрибут href.
Здесь:
* a — имя тега.
* href — имя атрибута (куда ведет ссылка).
* "https://google.com" — значение атрибута (адрес).
* Поиск в Google — текст, который увидит пользователь.
> Важное правило: значения атрибутов всегда следует заключать в кавычки (обычно двойные).
Вложенность: принцип матрешки
HTML-документ — это набор коробок, вложенных друг в друга. Вы можете поместить один тег внутрь другого. Это называется вложенностью.
Пример: мы хотим сделать слово «важно» жирным внутри абзаца.
Здесь тег <strong> (жирный шрифт) находится внутри тега <p> (абзац).
Главное правило вложенности: Тег, который открылся последним, должен закрыться первым. Нельзя допускать пересечения тегов.
* Правильно: <p>Текст <strong>Жирный</strong></p>
* Неправильно: ~~<p>Текст <strong>Жирный</p></strong>~~
!Принцип вложенности: внутренний элемент должен полностью находиться внутри внешнего.
Базовая структура HTML-документа
Любой, даже самый маленький сайт, должен иметь строгую структуру. Браузер ожидает увидеть определенный набор тегов, чтобы корректно отобразить страницу. Этот набор часто называют «шаблоном» или «бойлерплейтом» (boilerplate).
Вот как выглядит минимальный код любой HTML-страницы:
Давайте разберем каждую строчку этого кода.
1. <!DOCTYPE html>
Это самая первая строчка любого документа. Технически это не совсем тег, а инструкция для браузера. Она говорит: «Эй, браузер! Я использую современный стандарт HTML5». Если вы забудете эту строку, браузер может решить, что сайт написан в 1999 году, и отобразить его в «режиме совместимости», что может сломать верстку.
2. <html>
Это корневой элемент. Весь ваш код (кроме DOCTYPE) должен находиться внутри него. Атрибут lang="ru" подсказывает браузеру и поисковым системам, что основной язык страницы — русский.
3. <head> (Голова)
Этот раздел содержит служебную информацию. Всё, что находится внутри <head>, не отображается на самой странице (в белом поле браузера). Это «мозг» вашего документа.
Что обычно лежит в <head>:
* <meta charset="UTF-8">: Критически важная строка. Она устанавливает кодировку символов. Без неё вместо русского текста вы можете увидеть «кракозябры» ().
* <title>: Заголовок вкладки браузера. То, что написано на ярлычке вкладки, когда вы открываете сайт.
* Подключения стилей (CSS) и скриптов (об этом мы поговорим в следующих статьях).
4. <body> (Тело)
Это видимая часть документа. Всё, что вы хотите показать пользователю — текст, картинки, видео, кнопки — пишется строго между открывающим <body> и закрывающим </body>.
Дерево документа (DOM)
Если посмотреть на структуру выше, можно заметить, что она напоминает перевернутое дерево или родословную. В программировании это называется DOM (Document Object Model).
* html — это предок всех элементов (корень).
head и body — это дети элемента html и братья (siblings*) по отношению друг к другу.
* title — это ребенок head и внук html.
Понимание этой иерархии («родитель», «ребенок», «сосед») будет критически важно, когда мы начнем изучать CSS, так как стили часто наследуются от родителей к детям.
Пробелы и переносы строк
В HTML есть интересная особенность работы с текстом. Браузер игнорирует лишние пробелы и переносы строк в коде.
Если вы напишете в редакторе:
Браузер отобразит это как:
Привет, мир!
Он «схлопывает» любые последовательности пробелов и переносов в один единственный пробел. Если вам нужно принудительно перенести строку, используйте тег <br>. Если нужны множественные пробелы, используются специальные символы (например, ), но об этом позже.
Комментарии
Иногда вам нужно оставить заметку в коде для себя или другого разработчика, которая не должна быть видна пользователю. Для этого используются комментарии.
Синтаксис комментария:
Комментарии могут быть многострочными и очень полезны для разделения больших блоков кода.
Итог
Мы заложили фундамент. Теперь вы знаете, что:
<!DOCTYPE>, html, head, body.head лежит техническая информация, а в body — контент.В следующей статье мы начнем заполнять наш body реальным содержимым: изучим заголовки, параграфы, списки и ссылки, чтобы превратить пустую страницу в настоящий документ.