HTML-элемент


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

Как обычно понимается, позиция элемента указывается как простирающаяся от начального тега и заканчивающаяся конечным тегом. [1] Это относится ко многим, но не ко всем элементам HTML-документа. Это различие явно подчеркивается в спецификации HTML 4.01 :

Элементы не являются тегами. Некоторые называют элементы тегами (например, «тег P»). Помните, что элемент — это одно, а тег (будь то начальный или конечный тег) — другое. Например, элемент HEAD присутствует всегда, хотя в разметке могут отсутствовать как начальный, так и конечный теги HEAD. [1]

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

Некоторые теги могут быть опущены .
ПРИМЕЧАНИЕ.
Отсутствие начального тега элемента (...) не означает, что элемент отсутствует; это подразумевается, но это все еще там. Например, HTML-документ всегда имеет корневой <html>элемент, даже если строка <html>не появляется нигде в разметке.


Поскольку HTML (до HTML5) основан на SGML , [2] его синтаксический анализ также зависит от определения типа документа (DTD) , в частности от HTML DTD (например, HTML 4.01 [3] [примечание 1] ). DTD указывает, какие типы элементов возможны (т. е. он определяет набор типов элементов), а также допустимые комбинации, в которых они могут появляться в документе. Частью общего поведения SGML является то, что там, где возможна только одна допустимая структура (в соответствии с DTD), ее явное утверждение в каком-либо заданном документе обычно не требуется. В качестве простого примера, тег, указывающий начало элемента абзаца, должен быть дополнен<p></p>тег, указывающий на его конец. Но поскольку в DTD указано, что элементы абзаца не могут быть вложенными, фрагмент HTML-документа , таким образом, считается эквивалентным . (Если один элемент абзаца не может содержать другой, любой открытый в данный момент абзац должен быть закрыт перед началом другого.) Поскольку это следствие основано на комбинации DTD и отдельного документа, обычно невозможно вывести элементы только из тегов документа, но только с помощью синтаксического анализатора, поддерживающего SGML или HTML и знающего DTD. HTML5 создает аналогичный результат, определяя, какие теги можно опустить. [4]<p>Para 1 <p>Para 2 <p>Para 3<p>Para 1 </p><p>Para 2 </p><p>Para 3


Части элемента контейнера HTML