</> Praktum

Главная / HTML / table

Справочник HTML

Тег <table>: табличные данные

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

Структура

<table>
  <caption>Расписание</caption>
  <thead><tr><th>День</th><th>Урок</th></tr></thead>
  <tbody><tr><td>Пн</td><td>HTML</td></tr></tbody>
</table>

tr создаёт строку, th — заголовочную ячейку, td — обычную.

Заголовки

Для сложной таблицы добавляй scope="col" или scope="row", чтобы связать данные с заголовками.

Телефон

Широкую таблицу можно поместить в контейнер с overflow-x:auto. Не уменьшай текст до нечитаемого размера.

Ошибки

  • Таблица используется для раскладки страницы.
  • Нет заголовков th.
  • Смысл передаётся только цветом.

Попробуй

Собери таблицу сравнения трёх тарифов с caption и заголовками столбцов.

Как сделать таблицу понятной

Таблица подходит только для данных, которые действительно образуют строки и столбцы. Для раскладки страницы используй Grid или Flexbox. Заголовки столбцов отмечают th внутри thead, а основные данные помещают в tbody. caption кратко объясняет, что показывает таблица.

Атрибут scope связывает ячейку-заголовок с нужной строкой или столбцом и помогает пользователям программ чтения с экрана. На телефоне широкую таблицу можно поместить в контейнер с overflow-x: auto. Не уменьшай шрифт до нечитаемого размера только ради того, чтобы всё уместилось.

Разберём рабочий пример

<div class="table-scroll">
  <table>
    <caption>План обучения</caption>
    <thead><tr><th scope="col">Тема</th><th scope="col">Уроков</th></tr></thead>
    <tbody><tr><th scope="row">HTML</th><td>33</td></tr></tbody>
  </table>
</div>

Не копируй пример вслепую: измени данные, убери одну строку и посмотри, как меняется результат. Такой эксперимент быстрее показывает роль каждой части кода, чем простое чтение.

Проверка перед использованием

  • Есть caption или понятный заголовок рядом.
  • Заголовочные ячейки размечены th и scope.
  • Таблица используется для данных, а не раскладки.
  • На мобильном экране данные не обрезаются.

Попробуй в браузере

Измени код и нажми «Запустить». Результат появится ниже.

Ещё в разделе HTML