Использовать TBODY для каждой строки в TABLE?(и имеет ли это значение для семантики?) - PullRequest
1 голос
/ 05 декабря 2011

Я переделываю табличный класс в PHP. Одна из его функций заключается в том, что один блок данных может охватывать несколько TR. Для этой функции я сейчас использую теги TBODY, чтобы сгруппировать эти строки вместе.

Однако, это заставило меня задуматься о семантике TBODY. Я знаю, что соглашение состоит в том, что таблицы имеют один TBODY и используют один блок данных на TR. Но не должен ли каждый ТР содержаться в TBODY тогда?

Ответы [ 2 ]

2 голосов
/ 05 декабря 2011

Соглашение состоит в том, что таблицы имеют один TBODY и используют один набор данных на TR.

Это не обязательно верно. Каждый TR представляет собой строку, и ничего более. Если у вас есть группа строк, которые связаны друг с другом, то каждая группа имеет собственный TBODY. Для одной таблицы совершенно нормально иметь несколько тел таблиц; спецификация HTML 4.01 демонстрирует таблицу с двумя телами или блоками данных:

<TABLE>
<THEAD>
     <TR> ...header information...
</THEAD>
<TFOOT>
     <TR> ...footer information...
</TFOOT>
<TBODY>
     <TR> ...first row of block one data...
     <TR> ...second row of block one data...
</TBODY>
<TBODY>
     <TR> ...first row of block two data...
     <TR> ...second row of block two data...
     <TR> ...third row of block two data...
</TBODY>
</TABLE>
1 голос
/ 05 декабря 2011

HTML допускает наличие нескольких тегов TBODY в одной таблице (но только один THEAD и TFOOT). Поэтому, хотя это может быть не совсем обычным (и тратить несколько байтов), я не вижу веской причины не включать каждый TR в отдельный TBODY, если это подходит вашему приложению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...