Начальный тег: необходим, Конечный тег: не обязателен
<!ELEMENT TBODY O O (TR)+ -- тело таблицы -->Начальный тег: не обязателен, Конечный тег: не обязателен
<!ATTLIST (THEAD|TBODY|TFOOT) -- раздел таблицы -- %attrs; -- %coreattrs, %i18n, %events -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- >Атрибуты, определённые в другом месте
Ряды таблицы могут быть сгруппированы в "шапку", футер и один или более разделов тела документа с помощью элементов THEAD, TFOOT и TBODY соответственно. Это разделение делает возможным для ПА поддерживать прокрутку тела таблицы независимо от "шапки" и футера. Если распечатываются большие таблицы, информация "шапки" и футера может повторяться на каждой странице, содержащей данные таблицы.
"Шапка" и футер таблицы должны содержать информацию о столбцах таблицы. Тело таблицы должно содержать ряды данных таблицы.
Если элементы THEAD, TFOOT и TBODY
установлены, каждый из них содержит группу рядов.
Каждая группа рядов должна содержать минимум один ряд, определённый элементом TR.
Этот пример иллюстрирует порядок и структуру "шапки", футера и тела таблицы.
<TABLE> <THEAD> <TR> ...информация "шапки"... </THEAD> <TFOOT> <TR> ...информация футера... </TFOOT> <TBODY> <TR> ...первый ряд данных блока 1... <TR> ...второй ряд данных блока 1... </TBODY> <TBODY> <TR> ...первый ряд данных блока 2... <TR> ...второй ряд данных блока 2... <TR> ...третий ряд данных блока 2... </TBODY> </TABLE>TFOOT должен появляться перед TBODY внутри определения TABLE так, чтобы ПА могли отобразить футер до получения (возможно, многочисленных) рядов данных. Вот краткое резюме того, какие теги необходимы и какие могут быть опущены:
Соответствующие требованиям разборщики пользовательских агентов должны всегда следовать этим правилам для обеспечения обратной совместимости.
Таблица предыдущего примера может быть укорочена за счёт удаления некоторых конечных тегов:
<TABLE> <THEAD> <TR> ...информация "шапки"... <TFOOT> <TR> ...информация футера... <TBODY> <TR> ...первый ряд данных блока 1... <TR> ...второй ряд данных блока 1... <TBODY> <TR> ...первый ряд данных блока 2... <TR> ...второй ряд данных блока 2... <TR> ...третий ряд данных блока 2... </TABLE>Разделы THEAD, TFOOT и TBODY должны содержать одинаковое количество столбцов.