Глава 4.7. Элементы HTML

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

Интерфейсы описываются в том же порядке, что и элементы в Части I. Обратите внимание, что в Части I мы не описывали морально устаревшие элементы и атрибуты HTML. Здесь же мы решили дать полный перечень интерфейсов DOM, включая морально устаревшие элементы и свойства. Информацию о последних можно найти в Приложении 10.

Важно понимать, что для создания описанных ниже интерфейсов не требуется каких-то специальных методов. В процессе синтаксического разбора HTML-документа ядро обозревателя строит его дерево объектов; при этом оно анализирует тег очередного элемента и в зависимости от него создает объект соответствующего типа. Например, операция document.createElement("TABLE") возвращает указатель на новый объект типа HTMLTableElement.

4.7.1. Структурные элементы HTML

4.7.1.1. Интерфейс HTMLHtmlElement

Интерфейс HTMLHtmlElement соответствует элементу HTML. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
version DOMString version (морально устаревший) Да Да

4.7.1.2. Интерфейс HTMLHeadElement

Интерфейс HTMLHeadElement соответствует элементу HEAD. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
profile DOMString profile Да Да

4.7.1.3. Интерфейс HTMLTitleElement

Интерфейс HTMLTitleElement соответствует элементу TITLE. Он имеет следующие свойства:

Свойство Тип Описание MSHTML Gecko
text DOMString Титул документа как текстовая строка. Да Да

4.7.1.4. Интерфейс HTMLMetaElement

Интерфейс HTMLMetaElement соответствует элементу META. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
content DOMString content Да Да
httpEquiv DOMString http-equiv Да Да
name DOMString name Да Да
scheme DOMString scheme Да Да

4.7.1.5. Интерфейс HTMLBaseElement

Интерфейс HTMLBaseElement соответствует элементу BASE. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
href DOMString href Да Да
target DOMString target Да Да

4.7.1.6. Интерфейс HTMLLinkElement

Интерфейс HTMLLinkElement соответствует элементу LINK. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
charset DOMString charset Да Да
disabled логический Запрещает или разрешает данную связь. Имеет смысл только для внешних таблиц стилей. Да Да
href DOMString href Да Да
hreflang DOMString hreflang Игнорируется Игнорируется
media DOMString media Да Да
rel DOMString rel Да Да
rev DOMString rev Да Да
sheet StyleSheet Указатель на таблицу стилей (неизменяемый). Имеет смысл только для внешних таблиц стилей. Нет Да
target DOMString target Да Да
type DOMString type Да Да

4.7.1.7. Интерфейс HTMLStyleElement

Интерфейс HTMLStyleElement соответствует элементу STYLE. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
disabled логический Запрещает или разрешает данную таблицу стилей. Да Да
media DOMString media Да Да
sheet StyleSheet Указатель на таблицу стилей (неизменяемый). Нет Да
type DOMString type Да Да

4.7.1.8. Интерфейс HTMLBodyElement

Интерфейс HTMLBodyElement соответствует элементу BODY. Этот элемент всегда присутствует в документе, даже если соответствующие теги опущены. Он имеет следующие свойства, которые являются морально устаревшими:

Свойство Тип Атрибут MSHTML Gecko
aLink DOMString alink Да Да
background DOMString alink Да Да
bgColor DOMString bgcolor Да Да
link DOMString link Да Да
text DOMString text Да Да
vLink DOMString vlink Да Да

4.7.2. Отображение текста

4.7.2.1. Интерфейс HTMLParagraphElement

Интерфейс HTMLParagraphElement соответствует элементу P. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align (морально устаревший) Да Да

4.7.2.2. Интерфейс HTMLBRElement

Интерфейс HTMLBRElement соответствует элементу BR. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
clear DOMString clear (морально устаревший) Да Да

4.7.2.3. Интерфейс HTMLPreElement

Интерфейс HTMLPreElement соответствует элементу PRE. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
width целый width (морально устаревший) Игнорируется Да

4.7.2.4. Интерфейс HTMLHeadingElement

Интерфейс HTMLHeadingElement соответствует элементам H1 — H6. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align (морально устаревший) Да Да

4.7.2.5. Интерфейс HTMLQuoteElement

Интерфейс HTMLQuoteElement соответствует элементам BLOCKQUOTE и Q. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
cite DOMString cite Игнорируется Игнорируется

4.7.2.6. Интерфейс HTMLModElement

Интерфейс HTMLModElement соответствует элементам INS и DEL. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
cite DOMString cite Игнорируется Игнорируется
dateTime DOMString datetime Нет Игнорируется

4.7.3. Списки

4.7.3.1. Интерфейс HTMLUListElement

Интерфейс HTMLUListElement соответствует элементу UL. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
compact логический compact (морально устаревший) Игнорируется Игнорируется
type DOMString type (морально устаревший) Да Да

4.7.3.2. Интерфейс HTMLOListElement

Интерфейс HTMLOListElement соответствует элементу OL. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
compact логический compact (морально устаревший) Игнорируется Игнорируется
start целый start (морально устаревший) Да Да
type DOMString type (морально устаревший) Да Да

4.7.3.3. Интерфейс HTMLLIElement

Интерфейс HTMLLIElement соответствует элементу LI. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
type DOMString type (морально устаревший) Да Да
value целый value (морально устаревший) Да Да

4.7.3.4. Интерфейс HTMLDListElement

Интерфейс HTMLDListElement соответствует элементу DL. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
compact логический compact (морально устаревший) Игнорируется Игнорируется

4.7.4. Таблицы

4.7.4.1. Интерфейс HTMLTableElement

Интерфейс HTMLTableElement соответствует элементу TABLE. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align (морально устаревший) Да Да
bgColor DOMString bgcolor (морально устаревший) Да Да
border DOMString border Да Да
caption HTMLTableCaptionElement Указатель на CAPTION таблицы или null. Да Да
cellPadding DOMString cellpadding Да Да
cellSpacing DOMString cellspacing Да Да
frame DOMString frame Да Да
rows HTMLCollection Коллекция всех строк таблицы в ее элементах THEAD, TFOOT и TBODY (неизменяемая). Да Да
rules DOMString rules Да Да
summary DOMString summary Да Да
tBodies HTMLCollection Коллекция всех элементов TBODY в таблице (неизменяемая). Да Да
tFoot HTMLTableSectionElement Указатель на TFOOT таблицы или null. Да Да
tHead HTMLTableSectionElement Указатель на THEAD таблицы или null. Да Да
width DOMString width Да Да

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

Метод Результат Описание MSHTML Gecko
createCaption() HTMLElement Создает новый элемент CAPTION и возвращает указатель на него. Если такой элемент в таблице уже был, то возвращается указатель на него. Да Да
createTFoot() HTMLElement Создает новый элемент TFOOT и возвращает указатель на него. Если такой элемент в таблице уже был, то возвращается указатель на него. Да Да
createTHead() HTMLElement Создает новый элемент THEAD и возвращает указатель на него. Если такой элемент в таблице уже был, то возвращается указатель на него. Да Да
deleteCaption() Нет Удаляет элемент CAPTION, если он есть в таблице. Да Да
deleteRow(index) Нет Удаляет строку таблицы с номером index. Строки нумеруются с нуля сквозным образом, независимо от их группировки. Возможно исключение INDEX_SIZE_ERR. Да Да
deleteTFoot() Нет Удаляет элемент TFOOT, если он есть в таблице. Да Да
deleteTHead() Нет Удаляет элемент THEAD, если он есть в таблице. Да Да
insertRow(index) HTMLElement Вставляет пустую строку в таблицу перед строкой с номером index в той же группе строк и возвращает указатель на нее. Строки нумеруются с нуля сквозным образом, независимо от их группировки. Если index равен числу строк таблицы, то новая строка добавляется в конец таблицы. Возможно исключение INDEX_SIZE_ERR. Да Да

4.7.4.2. Интерфейс HTMLTableCaptionElement

Интерфейс HTMLTableCaptionElement соответствует элементу CAPTION. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align (морально устаревший) Да Да

4.7.4.3. Интерфейс HTMLTableSectionElement

Интерфейс HTMLTableSectionElement соответствует элементам, управляющим группировкой строк: THEAD, TFOOT и TBODY. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align Да Да
ch DOMString char Нет Нет
chOff DOMString charoff Нет Нет
rows HTMLCollection Коллекция всех строк данной группы (неизменяемая). Да Да
vAlign DOMString valign Да Да

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

Метод Результат Описание MSHTML Gecko
deleteRow(index) Нет Удаляет строку таблицы с номером index. Строки нумеруются с нуля сквозным образом, независимо от их группировки. Возможно исключение INDEX_SIZE_ERR. Да Да
insertRow(index) HTMLElement Вставляет пустую строку в таблицу перед строкой с номером index в той же группе строк и возвращает указатель на нее. Строки нумеруются с нуля сквозным образом, независимо от их группировки. Если index равен числу строк таблицы, то новая строка добавляется в конец таблицы. Возможно исключение INDEX_SIZE_ERR. Да Да

4.7.4.4. Интерфейс HTMLTableColElement

Интерфейс HTMLTableColElement соответствует элементам, управляющим группировкой столбцов: COL и COLGROUP. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align Да Да
ch DOMString char Нет Нет
chOff DOMString charoff Нет Нет
span DOMString span Да Да
vAlign DOMString valign Да Да
width DOMString width Да Да

4.7.4.5. Интерфейс HTMLTableRowElement

Интерфейс HTMLTableRowElement соответствует элементу TR. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
align DOMString align Да Да
bgColor DOMString bgcolor (морально устаревший) Да Да
cells HTMLCollection Коллекция всех ячеек данной строки (неизменяемая). Да Да
ch DOMString char Нет Нет
chOff DOMString charoff Нет Нет
rowIndex целый Сквозной номер строки в таблице, считая с нуля без учета групп строк (неизменяемый). Это номер в порядке прохождения дерева документа, а не в порядке отображения таблицы. Да Да
sectionRowIndex целый Номер строки в текущей группе строк (THEAD, TFOOT или TBODY), считая с нуля. Да Да
vAlign DOMString valign Да Да

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

Метод Результат Описание MSHTML Gecko
deleteCell(index) Нет Удаляет ячейку данной строки с номером index, считая с нуля. Возможно исключение INDEX_SIZE_ERR. Да Да
insertCell(index) HTMLElement Вставляет пустую ячейку в данную строку перед ячейкой с номером index, считая с нуля, и возвращает указатель на нее. Если index равен числу ячеек в строке, то новая ячейка добавляется в конец строки. Возможно исключение INDEX_SIZE_ERR. Да Да

4.7.4.6. Интерфейс HTMLTableCellElement

Интерфейс HTMLTableCellElement соответствует элементам TH и TD. Он имеет следующие свойства:

Свойство Тип Атрибут MSHTML Gecko
abbr DOMString abbr Игнорируется Игнорируется
align DOMString align Да Да
axis DOMString axis Игнорируется Игнорируется
bgColor DOMString bgcolor (морально устаревший) Да Да
cellIndex целый Сквозной номер ячейки в строке, считая с нуля (неизменяемый). Это номер в порядке прохождения дерева документа, а не в порядке отображения таблицы. Да Да
ch DOMString char Нет Нет
chOff DOMString charoff Нет Нет
colSpan DOMString colspan Нет Нет
headers DOMString headers Игнорируется Игнорируется
height DOMString height (морально устаревший) Да Да
noWrap логический nowrap (морально устаревший) Да Да
rowSpan DOMString rowspan Нет Нет
scope DOMString scope Игнорируется Игнорируется
vAlign DOMString valign Да Да
width DOMString width (морально устаревший) Да Да