CSS и вёрстка

Как сделать таблицу в html и css

Как сделать таблицу в html и css 📅 ⏱ 05:59 ⏳ 2 мин 💬 0

Как сделать таблицу в html и css: простыми словами, по шагам и с примерами. Разбираем, как это работает на практике, типичные ошибки и лучшие решения. Раскрывае

Как сделать таблицу в html и css

Коротко: таблица в HTML строится тегами <table>, <thead>, <tbody>, <tr>, <th>, <td>. В CSS её оформляют через border-collapse: collapse, отступы в ячейках, «зебру» строк и границы. Для мобильных таблицу оборачивают в блок с горизонтальной прокруткой.

Кому и зачемТаблицы — для прайсов, тарифов, сравнений, характеристик. Важно не только «нарисовать», но и сделать их читаемыми на телефоне и доступными для незрячих пользователей.

Правильная разметка

CODE
<table class="table">
  <caption>Сравнение тарифов</caption>
  <thead>
    <tr>
      <th scope="col">Тариф</th>
      <th scope="col">Цена</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th scope="row">Базовый</th>
      <td>1 000 ₽</td>
    </tr>
    <tr>
      <th scope="row">Про</th>
      <td>2 500 ₽</td>
    </tr>
  </tbody>
</table>

Вкладки: разбор




  • thead — шапка таблицы;
  • tbody — основное содержимое;
  • tfoot — итоговая строка;
  • th — ячейка-заголовок (жирный, по центру);
  • td — обычная ячейка.

caption — подпись таблицы, важна для доступности и SEO.

CODE
<td colspan="2">Итого</td>   /* объединить по строке */
<td rowspan="2">Да</td>     /* объединить по столбцу */

colspan объединяет ячейки по горизонтали, rowspan — по вертикали. Будьте аккуратны: легко «съехать» на одну ячейку.

CSS
.table {
  width: 100%;
  border-collapse: collapse;   /* убрать двойные рамки */
  font-size: 16px;
}
.table th, .table td {
  padding: 12px 16px;
  border-bottom: 1px solid #eee;
  text-align: left;
}
.table thead th {
  background: #f3f3f3;
  font-weight: 600;
}
.table tbody tr:nth-child(even) {
  background: #fafafa;   /* «зебра» */
}

border-collapse: collapse — главное свойство: без него рамки удваиваются и таблица выглядит «толстой».

CSS
.table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

Оберните таблицу в контейнер с прокруткой — тогда на телефоне прокручивается только сама таблица, а не страница. Альтернатива — «карточная» раскладка через медиа-запрос.

Не используйте таблицы для вёрсткиРаньше таблицами строили раскладку страниц — сегодня так делать нельзя: это ломает адаптив и доступность. Таблицы — только для табличных данных.

Практика: таблица тарифов

  1. Разметьте шапку в thead, данные в tbody.
  2. Добавьте caption с названием.
  3. Стилизуйте: border-collapse, отступы, границы.
  4. Добавьте «зебру» для читаемости.
  5. Оберните в контейнер с overflow-x: auto.
  6. Проверьте на телефоне.

Частые ошибки: причина → решение

Симптом Причина Решение
Двойные рамки нет border-collapse добавить collapse
Таблица «вылезает» на мобильном нет прокрутки обернуть в overflow-x: auto
Ячейки «съехали» ошибка в colspan/rowspan пересчитать объединения
Не читается вслепую нет th и scope использовать заголовки ячеек

Проверьте себя

Чек-лист




Какое свойство убирает двойные рамки таблицы?




Что делает colspan="2"?




Вопросы и ответы

th — ячейка-заголовок, браузер показывает её жирной и по центру, скринридеры читают её как заголовок строки или столбца.

Селектором tbody tr:nth-child(even) { background: #fafafa; } — чередование фона каждой второй строки.

Позиционированием thead th { position: sticky; top: 0; } внутри прокручиваемого контейнера.

Разбивать на страницы, добавлять поиск и сортировку, либо переносить данные в отдельные блоки-карточки на мобильных.

Итоги

  • Структура: table/thead/tbody/tr/th/td, подпись — caption.
  • Объединение ячеек — colspan и rowspan.
  • Стилизация — border-collapse, отступы, «зебра».
  • На мобильных — обёртка с overflow-x: auto.
Поделиться: ВКонтакте Telegram WhatsApp Одноклассники Viber Мой Мир

Комментарии

Пока комментариев нет — будьте первым, кто поделится мнением.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Получите консультацию нашего маркетолога

Изучит ваш проект, подберет подходящие услуги и тарифы

Получите бесплатный аудит

Наш специалист сделает базовый аудит вашего проекта и предложит персональные предложения.

Закажите услугу Каталог морепродуктов

Наш специалист свяжется с вами в ближайшее время и уточнит детали

Закажите адаптивный сайт

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт лендинг

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт каталог

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите интернет-магазин

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите веб-приложение

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите тариф Аутсорс

Стоимость от 150 000 ₽

Закажите тариф Магазин

Стоимость 90 000 ₽

Закажите тариф Классический

Стоимость 60 000 ₽

Закажите тариф Эконом

Стоимость 40 000 ₽

Закажите SEO продвижение

Наш специалист свяжется с вами, проведет анализ, предложит стоимость