Типы html элементов
Разбираемся в типах html элементов
Модель содержимого
Каждый html элемент имеет модель которая, описывает ожидаемое содержимое.
То есть модель содержимого - это описание того какие элементы и текст могут вкладываться в html элемент.
При этом html элемент может содержать только то, что указано в его модели содержимого, нарушение этого является ошибкой.
Содержимое элемента - это его дочерние узлы в DOM дереве.
Пробелы между элементами при этом разрешены, они представляют собой текстовый узел.
В итоге html документ должен быть структурирован в соответствии с правилами установленными в спецификации, и что определенные типы узлов не влияют на семантическое значение документов.
Группы элементов
Все html элементы согласно спецификации делят по их логической роли. Один элемент может попадать в несколько категорий сразу.
Связи между группами элементов показаны на схеме.
Flow(Потоковый) - самая общая группа элементов, которые составляют поток документаSectioning(Секции) - элементы создают секции в документе. Они определяют структуру документа.Heading(Заголовки) - определяют заголовки разделов.Phrasing(Фразы) - элементы, которые определяют текст, и как он будет отформатирован внутри текстовых блоков.Embedded(Встроенный) - импорт или встраивание других ресурсов в документ.Interactive(Интерактивный) - элементы предназначенные для взаимодействия с пользователем.Metadata(Метаданные) - элементы содержат мета информацию о документе.
Как эти группы связаны между собой:
SectioningиHeadingиспользуются для структурированияFlowконтента.PhrasingвнутриFlowиспользуется для создания текстаEmbeddedиInteractiveмогут быть частьюPhrasingиFlowконтентаMetadataобычно это элементы к которым нет доступа, но могут быть элементы воFlowконтенте.
Так же еще есть дополнительные группы элементов:
Form-associated elements- элементы связанные с формами и участвующие в ее отправкеListed elements- это элементы, которые есть вAPIform.elementsиfieldset.elementsSubmittable elements- элементы которые могут отправлять из формыResettable elements- элементы формы которые можно сбрасыватьAutocapitalize-and-autocorrect-inheriting elements- элементы, которые наследуют атрибутыautocapitalizeиautocorrectот элементаform.Labelable elements- элементы в которых можно использовать элементlabel.Palpable- содержимое элементов этой группы, которое визуально физически воспринимается пользователем, например, текст, изображения, видео и другие элементы, которые можно “ощутить” на странице. Это контент, который виден и доступен для взаимодействия.Script-supporting elements- элементы которые поддерживают скрипты, но сами по себе никак не отображаются на страницеselect element inner content elements- элементы которые разрешены в качестве потомковselect.optgroup element inner content elements- элементы которые разрешены в качестве потомковoptgroup.option element inner content elements- элементы которые разрешены в качестве потомковoption.
Не вижу смысла перечислять элементы из каждой из этих групп, гораздо полезнее будет рассмотреть как элементы используются.
Хотите оптимизировать свой бизнес, нужен сервис, сайт или интеграция.
Бесплатно расчитаю время разработки, предложу решение вашей задачи.

