Что такое выгода <thead> - PullRequest
       7

Что такое выгода <thead>

16 голосов
/ 23 апреля 2010

Какая польза от использования thead вместо просто td? Если есть польза ...

Ответы [ 10 ]

19 голосов
/ 23 апреля 2010

Элементы thead, tbody и tfoot в HTML используются для группировки строк таблицы в логические разделы на основе их содержимого. Есть две основные причины, по которым вы хотите это сделать:

  1. Для прокрутки тела независимо от заголовка и / или сноска

  2. Чтобы было проще наносить разные правила стиля для разных разделы таблицы.

4 голосов
/ 24 апреля 2010

Я не вижу здесь упоминания, но еще одно преимущество заключается в том, что в большинстве браузеров вы действительно можете кодировать <thead>, <tfoot> и <tbody> не по порядку, и они появятся в нужном месте на Таблица. Пока неясно, я уже воспользовался этим раньше. Например:

<?php $count = 0; ?>
<table>
  <tbody>
    <?php foreach($foo as $f):?>
      <tr>...</tr>
      <?php $count++; ?>
    <?php endforeach; ?>
  </tbody>
  <thead>
    <th>Entries (<?=$count?> total)</th>
    ...
  </thead>
</table>

Мне нужно общее количество строк, перечисленных в заголовке, поэтому я увеличил счетчик в моем foreach() и поместил <thead> внизу, чтобы я мог использовать значение $count в своем заголовке.

Конечно, не главное преимущество, но, тем не менее, преимущество.

4 голосов
/ 23 апреля 2010

Строки таблицы могут быть сгруппированы в таблицу голова, ножка стола и один или несколько разделы тела таблицы, используя THEAD, Элементы TFOOT и TBODY, соответственно. Это разделение позволяет пользовательские агенты для поддержки прокрутки тела стола независимо от стол и голова. Когда длинные столы напечатаны, голова и нога стола информация может повторяться на каждом страница, содержащая данные таблицы.

Головка стола и ножка стола должны содержать информацию о таблице колонны. Тело таблицы должно содержать строки данных таблицы.

http://www.w3.org/TR/html401/struct/tables.html#h-11.2.3

2 голосов
/ 23 апреля 2010

thead и td никоим образом не сопоставимы. thead просто представляет заголовок таблицы, а td ячейку таблицы.

<table>
    <thead>
        <tr><th>head1</th><th>head2</th></tr>
    </thead>
    <tbody>
        <tr><td>row1col1</td><td>row1col2</td></tr>
        <tr><td>row2col1</td><td>row2col2</td></tr>
    </tbody>
</table>

Также см. Учебник w3schools .

Семантическое преимущество заключается в том, что вы отделяете заголовок таблицы от тела таблицы (и, если есть, также нижний колонтитул таблицы, который может быть представлен <tfoot>). Техническое преимущество заключается в том, что вы можете создавать их по отдельности и, например, легко получить таблицу с прокручиваемым телом с фиксированным верхним / нижним колонтитулом, просто задав <tbody> фиксированную высоту и переполнение. К сожалению MSIE - единственный браузер, который его не поддерживает.

2 голосов
/ 23 апреля 2010

Использование thead, tfoot и tbody позволяет применять специальное форматирование к соответствующим частям таблицы. Например, вы можете включить верхний и нижний колонтитулы на всех распечатанных страницах таблицы или сделать прокрутку tbody, тогда как thead & tfoot останется статичным.

0 голосов
/ 22 мая 2017

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

0 голосов
/ 23 апреля 2010

thead используется не очень часто. Он идентифицирует секцию table, которая является «заголовком» и является своего рода подсказкой для браузера, что пользователь может захотеть увидеть этот фрагмент, даже если он прокручивает остальную часть таблицы вверх и вниз. http://www.w3schools.com/tags/tag_thead.asp

0 голосов
/ 23 апреля 2010

Из спецификации w3c:

Строки таблицы могут быть сгруппированы в заголовок таблицы, основание таблицы и один или несколько разделов тела таблицы, используя элементы THEAD, TFOOT и TBODY соответственно. Это разделение позволяет пользовательским агентам поддерживать прокрутку тел таблицы независимо от ее головы и ноги. Когда печатаются длинные таблицы, информация о заголовке и стопе таблицы может повторяться на каждой странице, содержащей данные таблицы.

Надеюсь, это поможет.

0 голосов
/ 23 апреля 2010

<thead> <tbody> и <tfoot> помечают определенные разделы таблицы (вы помещаете строки внутри из них) как заголовок, тело и нижний колонтитул таблицы. Это может быть использовано для повторения верхних и нижних колонтитулов в каждой таблице (некоторые браузеры делают это по умолчанию, другие, похоже, нуждаются в помощи). См. Повтор заголовков таблицы в режиме печати

0 голосов
/ 23 апреля 2010

THEAD предназначен для переноса всех строк заголовка. Его аналогами являются TBODY и TFOOT. Они полезны, если вы хотите различать эти строки с помощью CSS или JavaScript.

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