<td>: Элемент ячейки таблицы данных
Базовая линия Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Элемент <td> HTML определяет ячейку таблицы, содержащую данные, и может использоваться в качестве дочернего элемента элемента <tr>.
Попробуйте
Атрибуты
Этот элемент включает глобальные атрибуты.
colspan-
Содержит целое неотрицательное значение, указывающее, сколько столбцов охватывает или расширяет ячейка данных. Значение по умолчанию —
1. Пользовательские агенты игнорируют значения, превышающие 1000, устанавливая значение по умолчанию (1). headers-
Содержит список разделенных пробелами строк, каждая из которых соответствует атрибуту
idэлементов<th>, которые предоставляют заголовки для этой ячейки таблицы. rowspan-
Содержит целое неотрицательное значение, указывающее, сколько строк охватывает или расширяет ячейка данных. Значение по умолчанию —
1; если его значение установлено в0, оно расширяется до конца раздела группировки таблицы (<thead>,<tbody>,<tfoot>, даже если оно определено неявно), к которому принадлежит ячейка. Значения, превышающие65534, обрезаются до65534.
Устаревшие атрибуты
Следующие атрибуты устарели и не должны использоваться. Они документированы ниже для справки при обновлении существующего кода и только для исторической справки.
-
abbrУстарело -
Содержит краткое сокращенное описание содержимого ячейки данных. Некоторые пользовательские агенты, такие как программы для чтения с экрана, могут отобразить это описание перед самим содержимым. Поместите сокращенное содержимое в ячейку, а (более длинное) описание — в атрибут
title, так как этот атрибут устарел. Или, что предпочтительнее, включите содержимое в ячейку данных и используйте CSS для визуального обрезания переполняющего текста. -
alignУстарело -
Указывает горизонтальное выравнивание ячейки данных. Возможные перечисленные значения —
left,center,right,justify, иchar. В тех случаях, когда это поддерживается, значениеcharвыравнивает текстовое содержимое по символу, определенному в атрибутеchar, и смещению, определенному в атрибутеcharoff. Используйте свойство CSStext-alignвместо этого атрибута, так как он устарел. -
axisУстарело -
Содержит список разделенных пробелами строк, каждая из которых соответствует атрибуту
idгруппы ячеек, к которым относится ячейка данных. -
bgcolorУстарело -
Определяет цвет фона ячейки данных. Значение — HTML-цвет; либо 6-значный шестнадцатеричный код RGB, предваряемый '
#', либо ключевое слово цвета. Другие значения CSS<color>не поддерживаются. Используйте свойство CSSbackground-colorвместо этого атрибута, так как он устарел. -
charУстарело -
Ничего не делает. Изначально предназначался для указания выравнивания содержимого по символу ячейки данных. Типичные значения включают точку (
.) при попытке выравнивания чисел или денежных значений. Еслиalignне установлено вchar, этот атрибут игнорируется. -
charoffУстарело -
Ничего не делает. Изначально предназначался для указания количества символов для смещения содержимого ячейки данных от символа выравнивания, указанного атрибутом
char. -
heightУстарело -
Определяет рекомендуемую высоту ячейки данных. Используйте свойство CSS
heightвместо этого атрибута, так как он устарел. -
scopeУстарело -
Определяет ячейки, к которым относится заголовок (определенный в элементе
<th>). Возможные перечисленные значения —row,col,rowgroup, иcolgroup. Используйте этот атрибут только с элементом<th>для определения строки или столбца, для которого он является заголовком, так как этот атрибут устарел для элемента<td>. -
valignУстарело -
Указывает вертикальное выравнивание ячейки данных. Возможные перечисленные значения —
baseline,bottom,middle, иtop. Используйте свойство CSSvertical-alignвместо этого атрибута, так как он устарел. -
widthУстарело -
Определяет рекомендуемую ширину ячейки данных. Используйте свойство CSS
widthвместо этого атрибута, так как он устарел.
Примечания по использованию
- Элемент
<td>может использоваться только внутри элемента<tr>. - При использовании атрибутов
colspanиrowspanдля охвата ячеек данных по нескольким столбцам и строкам, ячейки без этих атрибутов (со значением по умолчанию1) автоматически подгоняются под свободные доступные места в структуре таблицы, охватывающие 1x1 ячейки, как показано на рисунке ниже:Примечание: Эти атрибуты не должны использоваться для перекрытия ячеек.
Примеры
См. <table> для примера полной таблицы, в котором представлены общие стандарты и лучшие практики.
Базовые ячейки данных
В этом примере используются элементы <td> вместе с другими элементами таблиц, чтобы представить простую таблицу с данными о фонетическом алфавите.
HTML
Некоторые строки таблицы (<tr> элементы) содержат ячейки заголовка (<th> элементы) и ячейки данных <td> элементы. Элемент <th>, являющийся первым потомком каждой строки, образует первый столбец таблицы, и каждый <th> предоставляет заголовок строки для ячеек данных в этой строке. Каждый соответствующий элемент <td> содержит данные, выровненные с соответствующим заголовком столбца и заголовком строки.
Примечание: Обычно для лучшего понимания информации в столбцах используется группа заголовков таблицы с заголовками столбцов. Элементы <thead> и <tbody> используются для группировки таких строк заголовков и данных в соответствующие секции заголовка и тела таблицы. В этом примере это не реализовано, чтобы сфокусироваться на ячейках данных и уменьшить сложность примера.
<table> <tr> <th scope="row">A</th> <td>Alfa</td> <td>AL fah</td> </tr> <tr> <th scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td>DELL tah</td> </tr> </table>
CSS
Для стилизации таблицы и её ячеек используется несколько основных правил CSS. CSS селекторы атрибутов и псевдокласс :nth-of-type используются для чередования внешнего вида ячеек, что облегчает понимание и распознавание информации в таблице.
td, th { border: 1px solid rgb(160 160 160); padding: 8px 10px; } tr:nth-of-type(odd) td { background-color: #eee; } tr th[scope="row"] { background-color: #d6ecd4; }
Результат
Объединение столбцов и строк
Этот пример расширяет и улучшает базовую таблицу из предыдущего примера, добавив дополнительную ячейку «ABC».
HTML
Вводится дополнительная ячейка данных (элемент <td> ) в первой строке (<tr> элемент). Это создает четвертый столбец в таблице.
Используя атрибут rowspan, ячейка «ABC» охватывает первые три строки таблицы. Последние ячейки данных последующих строк охватывают по два столбца, что достигается с помощью атрибута colspan для правильного выравнивания в структуре таблицы. Обратите внимание, что в таблицу добавлена дополнительная строка (<tr> элемент) для иллюстрации этого.
<table> <tr> <th scope="row">A</th> <td>Alfa</td> <td>AL fah</td> <td rowspan="3">ABC</td> </tr> <tr> <th scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td colspan="2">DELL tah</td> </tr> <tr> <th scope="row">E</th> <td>Echo</td> <td colspan="2">ECK oh</td> </tr> </table>
CSS
В CSS используются псевдоклассы :first-of-type и :last-of-type для выбора и стилизации добавленной ячейки данных «ABC».
tr:first-of-type td:last-of-type { width: 60px; background-color: #505050; color: #fff; font-weight: bold; text-align: center; } td, th { border: 1px solid rgb(160 160 160); padding: 8px 10px; } tr:nth-of-type(odd) td { background-color: #eee; } tr th[scope="row"] { background-color: #d6ecd4; }
Результат
Связывание ячеек данных с ячейками заголовков
Для более сложных взаимосвязей между ячейками данных (элементы <td> ) и ячейками заголовков (<th> элементы), использование элементов <th> с атрибутом scope может быть недостаточно для технологий辅助, особенно для программных читателей.
HTML
Для повышения доступности предыдущего примера и возможности озвучивания заголовков, связанных с каждой ячейкой данных программами чтения, например, можно использовать атрибут headers вместе с атрибутами id. Каждая ячейка заголовка строки (<th> элемент), связанная с ячейкой данных «ABC», то есть буквами «A», «B» и «C», получает уникальный идентификатор с помощью атрибута id. Ячейка данных «ABC» (элемент <td> ) затем использует эти значения id в виде списка, разделенного пробелами, для атрибута headers.
Примечание: Рекомендуется использовать более описательные и полезные значения для атрибута id. Каждый id в документе должен быть уникальным для этого документа. В этом примере значения id являются одиночными символами для сохранения фокуса на концепции атрибута headers.
<table> <tr> <th id="a" scope="row">A</th> <td>Alfa</td> <td>AL fah</td> <td headers="a b c" rowspan="3">ABC</td> </tr> <tr> <th id="b" scope="row">B</th> <td>Bravo</td> <td>BRAH voh</td> </tr> <tr> <th id="c" scope="row">C</th> <td>Charlie</td> <td>CHAR lee</td> </tr> <tr> <th scope="row">D</th> <td>Delta</td> <td colspan="2">DELL tah</td> </tr> <tr> <th scope="row">E</th> <td>Echo</td> <td colspan="2">ECK oh</td> </tr> </table>
Результат
Хотя визуальный результат не изменился по сравнению с предыдущей таблицей, каждая ячейка данных (<td>) теперь явно связана со своей ячейкой заголовка строки (<th>).
Техническое описание
| Категории контента | Корень раздела. |
|---|---|
| Разрешенный контент | Потоковый контент. |
| Пропуск тега | Стартовый тег обязателен. Конечный тег может быть пропущен, если за ним сразу следует элемент <th> или <td> элемент, или если в родительском элементе больше нет данных. |
| Разрешенные родительские элементы | Элемент <tr>. |
| Неявная роль ARIA | cell , если является потомком элемента <table> |
| Разрешенные роли ARIA | Любые |
| Интерфейс DOM | HTMLTableCellElement |
Спецификации
| Спецификация |
|---|
| Стандарт HTML # the-td-element |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
td |
1 | 12 | 1 | ≤12.1 | 1 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 |
abbr |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
align |
1 | 12 | 1 | 15 | 3 | 18 | 4 | 14 | 2 | 1.0 | 4.4 |
axis |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
bgcolor |
1 | 12 | 1 | ≤15 | 1 | 18 | 4 | ≤14 | 1 | 1.0 | 4.4 |
char |
1 | 12 | Нет | 15 | ≤4 | 18 | Нет | 14 | ≤3.2 | 1.0 | 4.4 |
charoff |
1 | 12 | 1 | 15 | ≤4 | 18 | 4 | 14 | ≤3.2 | 1.0 | 4.4 |
colspan |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
headers |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
rowspan |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
scope |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
valign |
1 | 12 | 1 | 15 | 3 | 18 | 4 | 14 | 2 | 1.0 | 4.4 |
width |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
См. также
- Учебник: HTML таблицы
-
<caption>,<col>,<colgroup>,<table>,<tbody>,<tfoot>,<th>,<thead>,<tr>: Другие элементы, связанные с таблицами -
background-color: Свойство CSS для задания цвета фона каждой ячейки данных -
border: Свойство CSS для управления границами ячеек данных -
height: Свойство CSS для управления рекомендуемой высотой ячеек данных -
text-align: Свойство CSS для горизонтального выравнивания содержимого каждой ячейки данных -
vertical-align: Свойство CSS для вертикального выравнивания содержимого каждой ячейки данных -
width: Свойство CSS для управления рекомендуемой шириной ячеек данных -
:nth-of-type,:first-of-type,:last-of-type: Псевдоклассы CSS для выбора нужных ячеек данных
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td