Полным синтаксисом языка html. Синтаксис html и структура html-документа

DOM как часть языка

В языке HTML5 впервые было введено понятие DOM (хотя он существовал и до этого, однако он не был частью языка) , теперь HTML-документ рассматривается как набор обектов, а не тегов. Поэтому как такого синтаксиса HTML5 не существует. Однако при написании кода вы можете придерживаться правил разметки тегов , которые были установлены в HTML 4.01 или XHTML 1.0

Синтаксис HTML 4.01

В HTML до пятой версии, существовало несколько правил написания кода:

  • Свободный режим loose , используемый в HTML 4.01
  • Cтрогий режим strict , используемый в HTML 4.01
  • Еще был синтаксис связанный с фреймами. Фреймы в HTML5 считаются устаревшими, но многие разработчики всё равно используют их, поскольку фреймы очень удобны при разработке некоторых веб-приложений.
  • Синтаксис XHTML 1.0

    В XHTML , существовало два правила написания кода:

  • Переходный режим transitional , используемый в XHTML 1.0
  • Строгий режим strict , используемый в XHTML 1.0
  • Современный синтаксис HTML5

    При использовании HTML5, написав в начале HTML-документа, доктайп , вы можете использовать любой из перечисленных выше синтаксисов языка (правил написания кода) или даже совмещать HTML 4.01 и XHTML 1.0 друг с другом.

    Например не обрамлять кавычками значения атрибутов атрибут=значение (свободный режим HTML 4.01 — loose) , но в тоже время ставить слеш в одиночных тегах
    (строгий режим ХHTML 1.0 — strict) .

    XHTML (strict), наиболее предпочтителен

    Опытные HTML-верстальщики обычно используют при написании кода на HTML5, строгий синтаксис XHTML strict , поскольку он держит верстальщика в тонусе, не позволяет ему расслабляться и тем самым оберегает его от возможных ошибок в коде. Также использование строгого синтаксиса пригодится при изучении программирования, ибо там строгость синтаксиса, крайне важна.

    Синтаксис HTML5

    Как вы уже узнали, в HTML5 некоторые правила были ослаблены. Это было сделано потому, что создатели HTML5 хотели, чтобы этот язык реальнее отражал действительную работу веб-браузеров. Иными словами, они хотели сократить разрыв между "работающими веб-страницами" и "веб-страницами, правильными с точки зрения стандарта". В следующем разделе мы рассмотрим изменения в правилах более подробно.

    Конечно же, все еще существуют устаревшие методы, поддерживаемые браузерами, употребление которых абсолютно не одобряется стандартом HTML5. Эти методы можно обнаружить с помощью валидатора HTML5.

    Ослабленные правила

    При нашем первом знакомстве с разметкой HTML5 мы узнали, что использования элементов , и не является обязательным для этой разметки. Но ослабление правил в HTML5 на этом не заканчивается.

    В нем также разрешается использовать в тегах как прописные, так и строчные буквы, как в следующем примере:

    В тегах можно использовать как прописные, так и строчные буквы.

    Также можно не использовать закрывающую обратную косую черту в пустых элементах, т.е. элементах без содержимого, таких как (изображение),
    (разрыв строки) или (горизонтальная линия). Далее приведены три равнозначных способа вставить разрыв строки:

    Пример
    разрыва
    строки

    В HTML5 также подверглись изменениям правила для атрибутов. Значения атрибутов больше не требуется брать в кавычки, но только при условии, что они не содержат запретных символов (обычно это символы >, = или пробел). Вот пример использования элемента таким образом:

    Также разрешены атрибуты без значений. Таким образом, если для установки флажка в XHTML требуется несколько повторяющийся синтаксис:

    то в HTML5 это можно делать в традициях HTML 4.01, указывая только одно название атрибута:

    Но некоторых особенно беспокоит не то, что все это разрешено в HTML5, а то, что не особенно последовательные разработчики могут небрежно использовать как строгие, так и ослабленные правила, иногда даже в одном и том же документе. Но в действительности подобная небрежная разметка возможна и в XHTML. В обоих стандартах обязанность за хороший стиль разметки лежит на веб-разработчике, т.к. браузер скушает все, что ему будет подано.

      Использование элементов , и . В элементе удобно размещать определение естественного языка страницы, а элементы и позволяют отделить информацию о странице от собственно содержимого страницы.

      Строчные буквы в тегах . Использование строчных букв в тегах не является обязательным, но такие теги намного больше распространены, их легче вводить (т. к. не требуется задействовать клавишу ), а также не так режут глаз, как теги с прописными буквами.

      Взятие в кавычки значений атрибутов . Значения атрибутов берутся в кавычки потому, что на это есть причина - помочь избежать ошибок, которые в противном случае очень легко допустить. Без кавычек один неправильный символ значения атрибута может испортить всю страницу.

    Проверка кода HTML5

    Новый расслабляющий подход к правилам в HTML5 может быть вполне по душе одним веб-разработчикам. Других же сама мысль о том, что за фасадом работающего без сучка, без задоринки браузера может скрываться непоследовательная, полная ошибок разметка, способна лишить сна.

    Если вы принадлежите ко второму типу, то знайте, что инструмент для проверки правильности разметки, называющийся валидатором, может обнаружить код, который не соответствует рекомендуемым стандартам HTML5, даже если браузер и глазом не моргнет при обработке этого кода.

    Некоторые из возможных проблем, которые валидатор в состоянии уловить, включают следующие:

      отсутствие обязательных элементов (например, элемента );

      отсутствие закрывающего тега;

      неправильно внедренные теги;

      отсутствие атрибутов у тегов, для которых они обязательны (например, атрибута src тега );

      неправильное расположение элементов или содержимого (например, текста в блоке ).

    Инструменты для разработки веб-страниц, такие как Dreamweaver и Expression Web, оснащены собственными валидаторами, но только самые последние версии поддерживают HTML5. В таком случае можно воспользоваться одним из онлайновых валидаторов. Далее даются инструкции по использованию популярного валидатора от организации W3C:

    Ваш код будет отправлен на проверку, и после короткого ожидания в браузере будет выведен отчет с результатами валидации. Если код не прошел проверку, то в отчете будут указаны выявленные валидатором ошибки:

    Даже для полностью правильного HTML-документа в отчете может быть указано несколько предупреждений (хотя полностью безобидных), включая такие, что кодировка была определена автоматически и услуга валидации кода HTML5 является экспериментальной и не совсем доведенной до логического конца.

    Как можно видеть на рисунке, валидатор выявил в документе четыре нарушения правил HTML5, являющиеся результатом двух ошибок в коде. Первая ошибка - отсутствует обязательный элемент . Вторая - элемент закрывается до закрытия вложенного в него элемента . Тем не менее, несмотря на эти ошибки, эта разметка правильная, и все браузеры будут отображать эту страницу должным образом.

    Возвращение XHTML

    Как мы уже узнали, восхождение спецификации HTML5 знаменует, по идее, закат предыдущего короля Всемирной паутины - стандарта XHTML. Но действительность не так проста, и поклонникам XHTML не нужно отказываться ни от чего, что им мило в языках разметки предыдущего поколения.

    Прежде всего, вспомним, что синтаксис XHTML продолжает существовать. Налагаемые XHTML правила либо продолжают использоваться в качестве руководящих принципов (например, правила правильного вложения элементов), либо поддерживаются в виде необязательных соглашений (например, соглашение об использовании закрывающей косой черты с пустыми элементами).

    Но что, если вы хотите сделать следование правилам XHTML-синтаксиса обязательным? Возможно, вы беспокоитесь, что вы (или ваши коллеги по работе) неосознанно потихоньку впадете в использование ослабленных соглашений обычного HTML. Чтобы не допустить этого, вам нужно использовать XHTML5 , это менее распространенный стандарт, который, по сути, является HTML5, облаченным в ограничения, основанные на XML.

    Чтобы сделать документ HTML5 документом XHTML, нужно явно указывать пространство имен XHTML в элементе , закрывать каждый элемент, обязательно использовать строчные буквы в тегах и т. д. В следующем листинге приводится пример кода, в котором выполнены все эти требования:

    Крошечный документ HTML5

    Дадим встряску браузеру в стиле HTML5!

    В тегах XHTML нельзя использовать прописные буквы.

    Для проверки этого кода требуется валидатор XHTML, который контролирует следование строгим старым правилам XHTML. Валидатор от W3C для этого не подойдет, но зато подойдет валидатор на сайте http://validator.nu, где нужно указать требуемый стандарт (т.е. XHTML) в раскрывающемся списке Preset. Также нужно установить флажок Be lax about HTTP Content-Type, если только вы не вставляете проверяемый код непосредственно в текстовое поле.

    Следуя этим шагам, вы сможете создать документ XHTML и выполнить его проверку. Тем не менее браузеры все равно будут обрабатывать этот документ, как обычную страницу HTML5, которая просто пыжится походить на XML-документ. Никаких дополнительных правил при обработке такой страницы применять они не будут.

    Если же вы хотите, чтобы и браузеры обрабатывали страницу согласно правилам XHTML, то вам нужно настроить свой веб-сервер для подачи страниц с MIME-типом application/xhtml+xml или application/xml, вместо стандартного типа text/html. Кстати, браузеры, поддерживающие XHTML5, обрабатывают такую разметку по-другому, чем обычный код HTML5. Они пытаются обрабатывать страницу как документ XML, и если это им не удается (по причине ошибки в коде), браузер прекращает обработку оставшейся части документа.

    Какой из этого следует вывод? Для подавляющего большинства веб-разработчиков, от любителей до серьезных профессионалов, игра по строгим правилам XHTML не стоит требуемых для этого свеч. Единственным исключением является разработка специальных решений, например страниц с содержимым, которым нужно манипулировать посредством XML-инструментов, таких как, например, XQuery и XPath.

    Если вам интересно, можно обмануть браузер и заставить его переключиться в режим XHTML. Для этого нужно лишь переименовать файл с расширением xhtml или xht, а потом открыть его с жесткого диска вашего компьютера. Большинство браузеров (включая Firefox, Chrome и IE 9) будут обрабатывать такую страницу, как будто бы она была загружена с веб-сервера с настройками MIME XML. Если страница содержит любую незначительную ошибку, в браузере отобразится частично обработанная страница (IE 9), сообщение об ошибке XML (Firefox) или то и другое вместе (Chrome).

    HTML-теги — основа языка HTML. Теги используются для разграничения начала и конца элементов в разметке.

    Каждый HTML-документ состоит из дерева HTML-элементов и текста. Каждый HTML-элемент обозначается начальным (открывающим) и конечным (закрывающим) тегом. Открывающий и закрывающий теги содержат имя тега.

    Все HTML-элементы делятся на пять типов:

    • пустые элементы — , ,
      , , , , , , , , , , , , ;
    • элементы с неформатированным текстом — , ;
    • элементы, выводящие неформатированный текст — , ;
    • элементы из другого пространства имён — MathML и SVG;
    • обычные элементы — все остальные элементы.

    В таблице приведен полный список элементов, поддерживаемых HTML4 и HTML5. Экспериментальные и устаревшие теги исключены. Элементы, добавленные в спецификацию HTML5, выделены бирюзовым цветом.

    Полный список HTML-элементов Таблица 1. HTML-элементы Тег Описание
    Используется для добавления комментариев.
    Объявляет тип документа и предоставляет основную информацию для браузера — его язык и версия.
    Создаёт гипертекстовые ссылки.
    Определяет текст как аббревиатуру или акроним. Поясняющий текст задаётся с помощью атрибута title .
    Задает контактные данные автора/владельца документа или статьи. Отображается в браузере курсивом.
    Представляет собой гиперссылку с текстом, соответствующей определенной области на карте-изображении или активную область внутри карты-изображения. Всегда вложен внутрь тега .
    Раздел контента, который образует независимую часть документа или сайта, например, статья в журнале, запись в блоге, комментарий.
    Представляет контент страницы, который имеет косвенное отношение к основному контенту страницы/сайта.
    Загружает звуковой контент на веб-страницу.
    Задает полужирное начертание отрывка текста, не придавая акцент или важность выделенному.
    Задает базовый адрес (URL), относительно которого вычисляются все относительные адреса. Это поможет избежать проблем при переносе страницы в другое место, так как все ссылки будут работать, как и прежде.
    Изолирует отрывок текста, написанный на языке, в котором чтение текста происходит справа налево, от остального текста.
    Отображает текст в направлении, указанном в атрибуте dir , переопределяя текущее направление написания текста.
    Выделяет текст как цитату, применяется для описания больших цитат.
    Представляет тело документа (содержимое, не относящееся к метаданным документа).

    Перенос текста на новую строку.
    Создает интерактивную кнопку. Внутрь тега можно поместить содержимое — текст или изображение.
    Холст-контейнер для динамического отображения изображений, таких как простые изображения, диаграммы, графики и т.п. Для рисования используется скриптовый язык JavaScript.
    Добавляет подпись к таблице. Вставляется сразу после тега .
    Используется для указания источника цитирования. Отображается курсивом.
    Представляет фрагмент программного кода, отображается шрифтом семейства monospace .
    Выбирает для форматирования один или несколько столбцов таблицы, не содержащих информацию одного типа.
    Создает структурную группу столбцов, выделяющую множество логически однородных ячеек.
    Элемент используется для связывания значения атрибута value , которое представлено в машиночитаемом формате и может быть обработано компьютером, с содержимым тега.
    Элемент-контейнер для выпадающего списка элемента . Варианты значений помещаются в элементы .
    Используется для описания термина из тега .
    Помечает текст как удаленный, перечёркивая его.
    Создаёт интерактивный виджет, который пользователь может открыть или закрыть. Представляет собой контейнер для контента, видимый заголовок виджета помещается в тег .
    Определяет слово как термин, выделяя его курсивом. Текст, идущий следом, должен содержать расшифровку этого термина.
    Интерактивный элемент, с которым взаимодействует пользователь для выполнения задачи, например, диалоговое окно, инспектор или окно. Без атрибута open не виден для пользователя.
    Тег-контейнер для разделов HTML-документа. Используется для группировки блочных элементов с целью форматирования стилями.
    Тег-контейнер, внутри которого находятся термин и его описание.
    Используется для задания термина.
    Выделяет важные фрагменты текста, отображая их курсивом.
    Тег-контейнер для встраивания внешнего интерактивного контента или плагина.
    Группирует связанные элементы в форме, рисуя рамку вокруг них.
    Заголовок/подпись для элемента .
    Самодостаточный тег-контейнер для такого контента как иллюстрации, диаграммы, фотографии, примеры кода, обычно с подписью.
    Определяет завершающую область (нижний колонтитул) документа или раздела.
    Форма для сбора и отправки на сервер информации от пользователей. Не работает без атрибута action .
    Создают заголовки шести уровней для связанных с ними разделов.
    Элемент-контейнер для метаданных HTML-документа, таких как , , , , .
    Секция для вводной информации сайта или группы навигационных ссылок. Может содержать один или несколько заголовков, логотип, информацию об авторе.
    Горизонтальная линия для тематического разделения параграфов.
    Корневой элемент HTML-документа. Сообщает браузеру, что это HTML-документ. Является контейнером для всех остальных html-элементов.
    Выделяет отрывок текста курсивом, не придавая ему дополнительный акцент.
    Создает встроенный фрейм, загружая в текущий HTML-документ другой документ.
    Встраивает изображения в HTML-документ с помощью атрибута src , значением которого является адрес встраиваемого изображения.
    Создает многофункциональные поля формы, в которые пользователь может вводить данные.
    Выделяет текст подчеркиванием. Применяется для выделения изменений, вносимых в документ.
    Выделяет текст, который должен быть введён пользователем с клавиатуры, шрифтом семейства monospace.
    Используется для хранения дополнительной информации о странице. Эту информацию используют браузеры для обработки страницы, а поисковые системы — для ее индексации. В блоке может быть несколько тегов , так как в зависимости от используемых атрибутов они несут разную информацию.
    Индикатор измерения в заданном диапазоне.
    Раздел документа, содержащий навигационные ссылки по сайту.
    Определяет секцию, не поддерживающую сценарий (скрипт).
    Контейнер для встраивания мультимедиа (например, аудио, видео, Java-апплеты, ActiveX, PDF и Flash). Также можно вставить другую веб-страницу в текущий HTML-документ. Для передачи параметров встраиваемого плагина используется тег .
    Упорядоченный нумерованный список. Нумерация может быть числовая или алфавитная.
    Контейнер с заголовком для группы элементов .
    Определяет вариант/опцию для выбора в раскрывающемся списке , или .
    Поле для вывода результата вычисления, рассчитанного с помощью скрипта.

    Параграфы в тексте.
    Определяет параметры для плагинов, встраиваемых с помощью элемента .
    Элемент-контейнер, содержащий один элемент и ноль или несколько элементов . Сам по себе ничего не отображает. Дает возможность браузеру выбирать наиболее подходящее изображение.
    Выводит текст без форматирования, с сохранением пробелов и переносов текста. Может быть использован для отображения компьютерного кода, сообщения электронной почты и т.д.
    Индикатор выполнения задачи любого рода.
    Определяет краткую цитату.
    Контейнер для Восточно-Азиатских символов и их расшифровки.
    Определяет вложенный в него текст как базовый компонент аннотации.
    Добавляет краткую характеристику сверху или снизу от символов, заключенных в элементе , выводится уменьшенным шрифтом.
    Отмечает вложенный в него текст как дополнительную аннотацию.
    Выводит альтернативный текст в случае если браузер не поддерживает элемент .
    Отображает текст, не являющийся актуальным, перечеркнутым.
    Используется для вывода текста, представляющего результат выполнения программного кода или скрипта, а также системные сообщения. Отображается моноширинным шрифтом.
    Используется для определения сценария на стороне клиента (обычно JavaScript). Содержит либо текст скрипта, либо указывает на внешний файл сценария с помощью атрибута src .
    Определяет логическую область (раздел) страницы, обычно с заголовком.
    Элемент управления, позволяющий выбирать значения из предложенного множества. Варианты значений помещаются в .
    Отображает текст шрифтом меньшего размера.
    Указывает местоположение и тип альтернативных медиаресурсов для элементов , , .
    Контейнер для строчных элементов. Можно использовать для форматирования отрывков текста, например, выделения цветом отдельных слов.
    Расставляет акценты в тексте, выделяя полужирным.
    Подключает встраиваемые таблицы стилей.
    Задает подстрочное написание символов, например, индекса элемента в химических формулах.
    Создаёт видимый заголовок для тега . Отображается с закрашенным треугольником, кликнув по которому можно просмотреть подробности заголовка.
    Задает надстрочное написание символов.
    Тег для создания таблицы.
    Определяет тело таблицы.
    Создает ячейку таблицы.
    Используется для объявления фрагментов HTML-кода, которые могут быть клонированы и вставлены в документ скриптом. Содержимое тега не является его дочерним элементом.
    Создает большие поля для ввода текста.
    Определяет нижний колонтитул таблицы.
    Создает заголовок ячейки таблицы.
    Определяет заголовок таблицы.
    Определяет дату/время.
    Заголовок HTML-документа, отображаемый в верхней части строки заголовка браузера. Также может отображаться в результатах поиска, поэтому это следует принимать во внимание предоставление названия.
    Создает строку таблицы.
    Добавляет субтитры для элементов и .
    Выделяет отрывок текста подчёркиванием, без дополнительного акцента.
    Создает маркированный список.
    Выделяет переменные из программ, отображая их курсивом.
    Добавляет на страницу видео-файлы. Поддерживает 3 видео формата: MP4, WebM, Ogg.
    Указывает браузеру возможное место разрыва длинной строки.
    Таблица-шпаргалка с тегами

    Для удобства пользования я сгруппировала теги по тематическим разделам, добавив значения свойства display для каждого тега. Чтобы перейти к таблице, кликните по рисунку.

    HTML расшифровывается как HyperText Markup Language (язык разметки гипертекста ):

    • язык означает, что он может быть прочитан как человеком, так и компьютером;
    • разметка означает, что написанный вами код помечается с помощью ключевых слов;
    • гипертекст означает, что он использует HTTP как часть Интернета.

    Как и любой язык, HTML поставляется с набором правил . Эти правила относительно простые и сводятся к определению границ , чтобы знать, где что-то начинается и где заканчивается.

    Ниже приведён пример абзаца в HTML:

    Если Тетрис и научил меня чему-то, так это тому, что ошибки накапливаются, а достижения исчезают.

    То, что вы видите в угловых скобках < и > называется тегами HTML. Они определяют, где что-то начинается и где оно заканчивается.

    Каждый из тегов несёт определённый смысл . В нашем случае обозначает абзац текста.

    Как правило, они идут парами:

    • открывающий тег определяет начало абзаца;
    • закрывающий тег

      определяет его конец.

    Единственным различием между открывающим и закрывающим тегами является слэш /, который предшествует имени тега.

    При объединении открывающего, закрывающего тегов и всего между ними, вы получите элемент HTML . Строка целиком представляет собой элемент HTML, который использует теги HTML и

    .

    Если вы просмотрите этот пример в вашем браузере, то заметите, что теги HTML в браузере не отображаются . Они читаются только браузером, чтобы знать, какой тип контента вы написали.

    Где писать HTML

    Вы, вероятно, сталкивались c простыми текстовыми файлами, теми, которые имеют расширение.txt. Чтобы такой текстовый файл стал HTML-документом (вместо текстового), вам нужно использовать расширение.html.

    Откройте текстовый редактор, скопируйте и вставьте следующее содержимое:

    Это моя первая веб-страница!

    Сохраните этот файл как my-first-webpage.html, просто откройте его вашим браузером и вы увидите:

    Это моя первая веб-страница!

    • используйте текстовый редактор, вроде Notepad++, для создания HTML-документов;
    • используйте браузер, вроде Firefox, для открытия HTML-документов.
    Атрибуты

    Атрибуты действуют как дополнительная информация, привязанная к элементу HTML. Они пишутся внутри тега HTML. Таким образом, они также не отображаются в браузере.

    Например, атрибут href используется для определения назначения ссылки (которая создаётся тегом ):

    Скачать Firefox

    Есть 16 атрибутов HTML , которые могут быть использованы в любом элементе HTML. Все они не являются обязательными.

    Вы в основном будете применять class (который используется для CSS) и title (подсказка, которая появляется при наведении курсора на объект, вроде этого).

    Некоторые элементы HTML содержат обязательные атрибуты. Например, при вставке изображения вы должны указать его расположение с помощью атрибута src :

    Принимая во внимание, что цель элемента заключается в показе изображения, то имеет смысл путь к изображению сделать обязательным .

    Комментарии

    Если вы пишете что-то в своём коде без нарушения отображения страницы браузером, то вы можете писать комментарии . Они будут игнорироваться браузером и могут быть использованы только для людей, которые пишут код.

    Комментарий начинается с .

    Привет, мир!

    Самозакрывающиеся элементы

    Некоторые элементы HTML имеют только открывающий тег:


    Поскольку у них нет закрывающего тега и, следовательно, они не могут содержать ничего внутри, самозакрывающие элементы обычно несут с собой несколько атрибутов, которые предоставляют дополнительную информацию.

    HTML-теги — основа языка HTML. Теги используются для разграничения начала и конца элементов в разметке.

    Каждый HTML-документ состоит из дерева HTML-элементов и текста. Каждый HTML-элемент обозначается начальным (открывающим) и конечным (закрывающим) тегом. Открывающий и закрывающий теги содержат имя тега.

    Все HTML-элементы делятся на пять типов:

    • пустые элементы — , ,
      , , , , , , , , , , , , ;
    • элементы с неформатированным текстом — , ;
    • элементы, выводящие неформатированный текст — , ;
    • элементы из другого пространства имён — MathML и SVG;
    • обычные элементы — все остальные элементы.

    В таблице приведен полный список элементов, поддерживаемых HTML4 и HTML5. Экспериментальные и устаревшие теги исключены. Элементы, добавленные в спецификацию HTML5, выделены бирюзовым цветом.

    Полный список HTML-элементов Таблица 1. HTML-элементы Тег Описание
    Используется для добавления комментариев.
    Объявляет тип документа и предоставляет основную информацию для браузера — его язык и версия.
    Создаёт гипертекстовые ссылки.
    Определяет текст как аббревиатуру или акроним. Поясняющий текст задаётся с помощью атрибута title .
    Задает контактные данные автора/владельца документа или статьи. Отображается в браузере курсивом.
    Представляет собой гиперссылку с текстом, соответствующей определенной области на карте-изображении или активную область внутри карты-изображения. Всегда вложен внутрь тега .
    Раздел контента, который образует независимую часть документа или сайта, например, статья в журнале, запись в блоге, комментарий.
    Представляет контент страницы, который имеет косвенное отношение к основному контенту страницы/сайта.
    Загружает звуковой контент на веб-страницу.
    Задает полужирное начертание отрывка текста, не придавая акцент или важность выделенному.
    Задает базовый адрес (URL), относительно которого вычисляются все относительные адреса. Это поможет избежать проблем при переносе страницы в другое место, так как все ссылки будут работать, как и прежде.
    Изолирует отрывок текста, написанный на языке, в котором чтение текста происходит справа налево, от остального текста.
    Отображает текст в направлении, указанном в атрибуте dir , переопределяя текущее направление написания текста.
    Выделяет текст как цитату, применяется для описания больших цитат.
    Представляет тело документа (содержимое, не относящееся к метаданным документа).

    Перенос текста на новую строку.
    Создает интерактивную кнопку. Внутрь тега можно поместить содержимое — текст или изображение.
    Холст-контейнер для динамического отображения изображений, таких как простые изображения, диаграммы, графики и т.п. Для рисования используется скриптовый язык JavaScript.
    Добавляет подпись к таблице. Вставляется сразу после тега .
    Используется для указания источника цитирования. Отображается курсивом.
    Представляет фрагмент программного кода, отображается шрифтом семейства monospace .
    Выбирает для форматирования один или несколько столбцов таблицы, не содержащих информацию одного типа.
    Создает структурную группу столбцов, выделяющую множество логически однородных ячеек.
    Элемент используется для связывания значения атрибута value , которое представлено в машиночитаемом формате и может быть обработано компьютером, с содержимым тега.
    Элемент-контейнер для выпадающего списка элемента . Варианты значений помещаются в элементы .
    Используется для описания термина из тега .
    Помечает текст как удаленный, перечёркивая его.
    Создаёт интерактивный виджет, который пользователь может открыть или закрыть. Представляет собой контейнер для контента, видимый заголовок виджета помещается в тег .
    Определяет слово как термин, выделяя его курсивом. Текст, идущий следом, должен содержать расшифровку этого термина.
    Интерактивный элемент, с которым взаимодействует пользователь для выполнения задачи, например, диалоговое окно, инспектор или окно. Без атрибута open не виден для пользователя.
    Тег-контейнер для разделов HTML-документа. Используется для группировки блочных элементов с целью форматирования стилями.
    Тег-контейнер, внутри которого находятся термин и его описание.
    Используется для задания термина.
    Выделяет важные фрагменты текста, отображая их курсивом.
    Тег-контейнер для встраивания внешнего интерактивного контента или плагина.
    Группирует связанные элементы в форме, рисуя рамку вокруг них.
    Заголовок/подпись для элемента .
    Самодостаточный тег-контейнер для такого контента как иллюстрации, диаграммы, фотографии, примеры кода, обычно с подписью.
    Определяет завершающую область (нижний колонтитул) документа или раздела.
    Форма для сбора и отправки на сервер информации от пользователей. Не работает без атрибута action .
    Создают заголовки шести уровней для связанных с ними разделов.
    Элемент-контейнер для метаданных HTML-документа, таких как , , , , .
    Секция для вводной информации сайта или группы навигационных ссылок. Может содержать один или несколько заголовков, логотип, информацию об авторе.
    Горизонтальная линия для тематического разделения параграфов.
    Корневой элемент HTML-документа. Сообщает браузеру, что это HTML-документ. Является контейнером для всех остальных html-элементов.
    Выделяет отрывок текста курсивом, не придавая ему дополнительный акцент.
    Создает встроенный фрейм, загружая в текущий HTML-документ другой документ.
    Встраивает изображения в HTML-документ с помощью атрибута src , значением которого является адрес встраиваемого изображения.
    Создает многофункциональные поля формы, в которые пользователь может вводить данные.
    Выделяет текст подчеркиванием. Применяется для выделения изменений, вносимых в документ.
    Выделяет текст, который должен быть введён пользователем с клавиатуры, шрифтом семейства monospace.
    Используется для хранения дополнительной информации о странице. Эту информацию используют браузеры для обработки страницы, а поисковые системы — для ее индексации. В блоке может быть несколько тегов , так как в зависимости от используемых атрибутов они несут разную информацию.
    Индикатор измерения в заданном диапазоне.
    Раздел документа, содержащий навигационные ссылки по сайту.
    Определяет секцию, не поддерживающую сценарий (скрипт).
    Контейнер для встраивания мультимедиа (например, аудио, видео, Java-апплеты, ActiveX, PDF и Flash). Также можно вставить другую веб-страницу в текущий HTML-документ. Для передачи параметров встраиваемого плагина используется тег .
    Упорядоченный нумерованный список. Нумерация может быть числовая или алфавитная.
    Контейнер с заголовком для группы элементов .
    Определяет вариант/опцию для выбора в раскрывающемся списке , или .
    Поле для вывода результата вычисления, рассчитанного с помощью скрипта.

    Параграфы в тексте.
    Определяет параметры для плагинов, встраиваемых с помощью элемента .
    Элемент-контейнер, содержащий один элемент и ноль или несколько элементов . Сам по себе ничего не отображает. Дает возможность браузеру выбирать наиболее подходящее изображение.
    Выводит текст без форматирования, с сохранением пробелов и переносов текста. Может быть использован для отображения компьютерного кода, сообщения электронной почты и т.д.
    Индикатор выполнения задачи любого рода.
    Определяет краткую цитату.
    Контейнер для Восточно-Азиатских символов и их расшифровки.
    Определяет вложенный в него текст как базовый компонент аннотации.
    Добавляет краткую характеристику сверху или снизу от символов, заключенных в элементе , выводится уменьшенным шрифтом.
    Отмечает вложенный в него текст как дополнительную аннотацию.
    Выводит альтернативный текст в случае если браузер не поддерживает элемент .
    Отображает текст, не являющийся актуальным, перечеркнутым.
    Используется для вывода текста, представляющего результат выполнения программного кода или скрипта, а также системные сообщения. Отображается моноширинным шрифтом.
    Используется для определения сценария на стороне клиента (обычно JavaScript). Содержит либо текст скрипта, либо указывает на внешний файл сценария с помощью атрибута src .
    Определяет логическую область (раздел) страницы, обычно с заголовком.
    Элемент управления, позволяющий выбирать значения из предложенного множества. Варианты значений помещаются в .
    Отображает текст шрифтом меньшего размера.
    Указывает местоположение и тип альтернативных медиаресурсов для элементов , , .
    Контейнер для строчных элементов. Можно использовать для форматирования отрывков текста, например, выделения цветом отдельных слов.
    Расставляет акценты в тексте, выделяя полужирным.
    Подключает встраиваемые таблицы стилей.
    Задает подстрочное написание символов, например, индекса элемента в химических формулах.
    Создаёт видимый заголовок для тега . Отображается с закрашенным треугольником, кликнув по которому можно просмотреть подробности заголовка.
    Задает надстрочное написание символов.
    Тег для создания таблицы.
    Определяет тело таблицы.
    Создает ячейку таблицы.
    Используется для объявления фрагментов HTML-кода, которые могут быть клонированы и вставлены в документ скриптом. Содержимое тега не является его дочерним элементом.
    Создает большие поля для ввода текста.
    Определяет нижний колонтитул таблицы.
    Создает заголовок ячейки таблицы.
    Определяет заголовок таблицы.
    Определяет дату/время.
    Заголовок HTML-документа, отображаемый в верхней части строки заголовка браузера. Также может отображаться в результатах поиска, поэтому это следует принимать во внимание предоставление названия.
    Создает строку таблицы.
    Добавляет субтитры для элементов и .
    Выделяет отрывок текста подчёркиванием, без дополнительного акцента.
    Создает маркированный список.
    Выделяет переменные из программ, отображая их курсивом.
    Добавляет на страницу видео-файлы. Поддерживает 3 видео формата: MP4, WebM, Ogg.
    Указывает браузеру возможное место разрыва длинной строки.
    Таблица-шпаргалка с тегами

    Для удобства пользования я сгруппировала теги по тематическим разделам, добавив значения свойства display для каждого тега. Чтобы перейти к таблице, кликните по рисунку.

    Интернет