Огляди, рейтинги та поради з вибору техніки 2026
Hi-News: Цифровий Світ » Компютери » Робота з таблицями в HTML: від базових тегів до сучасних стандартів стилізації

Робота з таблицями в HTML: від базових тегів до сучасних стандартів стилізації

23.05.2026, 20:43
2 099
0

Повний практичний посібник із побудови структури даних, об'єднання комірок та адаптивного веб-дизайну

У структуруванні цифрової інформації таблична форма є одним із найефективніших способів представлення даних. У таблицях зручно розташовувати масиви інформації, об'єднані між собою логічними зв'язками, чисельними залежностями або хронологічними послідовностями. Веб-технології надають розробникам гнучкий інструментарій для проектування таких структур.

Для створення таблиць у мові розмітки HTML використовуються спеціальні семантичні теги. З їхньою допомогою можна сконструювати інформаційну сітку будь-якої складності — від простого переліку параметрів до багаторівневих звітів із розгалуженою структурою. Історично склалося, що використання таблиць виходило далеко за межі їхнього прямого призначення: тривалий час була поширена практика так званої табличної верстки, яка дозволяла розташовувати графічні та текстові елементи на веб-сторінці. У цьому посібнику ми детально розберемо як класичні основи створення таблиць, так і сучасні вимоги до їхнього оформлення.

Створення першої таблиці: базовий каркас

Процес розробки будь-якого веб-документа починається з підготовки робочого простору. Відкрийте ваш текстовий редактор або спеціалізоване середовище розробки (IDE), на кшталт VS Code, створіть порожній HTML-файл із правильним розширенням .html і всередині тегу <body> вставте базову структуру таблиці.

Ось як виглядає мінімальний валідний код для створення найпростішої таблиці на два рядки та два стовпці:

<table style="width: 100%; border-collapse: collapse;">
  <tr>
    <td style="border: 1px solid #cbd5e0; padding: 10px;">Комірка 1</td>
    <td style="border: 1px solid #cbd5e0; padding: 10px;">Комірка 2</td>
  </tr>
  <tr>
    <td style="border: 1px solid #cbd5e0; padding: 10px;">Комірка 3</td>
    <td style="border: 1px solid #cbd5e0; padding: 10px;">Комірка 4</td>
  </tr>
</table>

Збережіть документ та відкрийте його за допомогою будь-якого сучасного веб-браузера. Якщо в коді не припущено синтаксичних помилок, ви побачите чітку сітку з даними. Проаналізуємо кожен тег, що бере участь у побудові цієї структури:

  • Теги <table> та </table> — є головними контейнерами. Вони оголошують браузеру, що весь внутрішній контент є табличними даними і має інтерпретуватися відповідно до специфікації.
  • Теги <tr> (Table Row) — слугують для створення рядків таблиці. Скільки пар таких тегів ви пропишете один за одним, стільки горизонтальних рядів матиме ваша структура.
  • Теги <td> (Table Data) — позначають окремі комірки всередині рядка. Кількість тегів <td>, вкладених у межах одного тегу <tr>, безпосередньо визначає кількість вертикальних стовпців.

Правило роботи з порожніми комірками:

Якщо за архітектурою таблиці вам необхідно залишити певну клітинку порожньою, не рекомендується залишати тег взагалі без вмісту (тобто <td></td>). Деякі застарілі рендери браузерів або специфічні мобільні екрани можуть спотворити загальну сітку, «схлопнувши» межі порожнього елемента. Щоб уникнути цього, всередині комірки прописують спеціальний невидимий сутнісний пробіл Юнікоду — знайомий усім HTML-мнемонік &nbsp; (Non-Breaking Space).

Важливо пам'яті, що вмістом клітинки може бути абсолютно будь-який елемент мови розмітки: звичайні числа, масиви тексту, списки, графічні зображення, гіперпосилання, інтерактивні форми і навіть інші повноцінні таблиці. Головне завдання розробника при цьому — не просто знати технічний синтаксис, а суворо дотримуватися правил вкладеності тегів (всі <td> повинні лежати виключно всередині <tr>, і ніяк інакше).

Керування розмірами: адаптивність замість жорстких рамок

Початкові приклади таблиць без додаткових стилів виглядають дуже стиснутими, оскільки за замовчуванням браузер підлаштовує розмір комірки під довжину тексту, що знаходиться всередині неї. Це робить інформацію незручною для швидкого зорового сприйняття.

Раніше для модифікації габаритів використовувалися прямі атрибути тегу:

  1. width — відповідав за фіксацію ширини.
  2. height — відповідав за встановлення висоти.

Значення цих параметрів задавалися або в абсолютних одиницях (пікселях), або у відносних (відсотках від батьківського контейнера). Проте сучасний стандарт розробки вимагає повної відмови від презентаційних атрибутів у самому HTML-коді. Всі параметри відображення повинні контролюватися за допомогою каскадних таблиць стилів (CSS). Це зумовлено тим, що жорстко прописані параметри в пікселях ламають адаптивність сайту на екранах смартфонів.

Якщо зафіксувати ширину таблиці на рівні width="800", то користувач, який зайшов на сайт зі звичайного мобільного телефона з шириною екрана 360 пікселів, побачить розірваний інтерфейс та жахливу горизонтальну смугу прокручування. Текст стане дрібним і нечитабельним. Тому для сучасних інтерфейсів застосовують гнучкі стилі CSS:

/* Сучасний підхід до адаптивності таблиць через CSS */
table {
  width: 100%;
  max-width: 600px;
  margin: 20px auto;
  font-size: 16px;
}

Позиціонування та вирівнювання елементів

Позиціонування включає два завдання: гармонійне розміщення самої таблиці на сторінці відносно інших блоків та вирівнювання текстового контенту безпосередньо всередині кожної клітинки. Стара специфікація пропонувала вирішувати це за допомогою атрибута align, який мав три класичні значення:

Параметр align Результат позиціонування контенту
left Об'єкт притискається до лівого краю екрана (налаштування за замовчуванням).
center Елемент ідеально вирівнюється по центру робочої області сторінки.
right Об'єкт зміщується до правої межі батьківського блоку.

Сьогодні для вирівнювання внутрішнього вмісту комірок (тексту, цифр чи картинок) застосовують виключно CSS-властивість text-align для горизонтальної осі та vertical-align для вертикальної координати. Наприклад, щоб зафіксувати текст строго по центру комірки, до тегу застосовують таку конструкцію: <td style="text-align: center; vertical-align: middle;">Вміст</td>.

Складні структури: об'єднання рядків по горизонталі (Colspan)

Дуже часто логіка представлення даних вимагає створення загальних шапок або об'єднаних блоків, які охоплюють одразу кілька стовпців. Для реалізації такого ефекту використовується спеціальний атрибут colspan (Column Span), який прописується безпосередньо всередині цільового тегу <td> або <th>.

Значення цього атрибута має дорівнювати цілому числу, яке вказує, скільки саме стандартних комірок по горизонталі має поглинути ця велика об'єднана клітинка. Тут діє важливе залізне правило математичного балансу сітки: коли ви додаєте атрибут об'єднання, ви обов'язково повинні фізично видалити з коду наступні теги <td> у цьому ж рядку. Кількість тегів, які підлягають видаленню, вираховується за простою формулою:

Кількість видалених тегів = Значення colspan - 1

Розглянемо практичну реалізацію. Потрібно створити рядок, де одна комірка займає простір трьох стандартних. Код виглядатиме так:

<tr>
  <td colspan="3" style="text-align: center; font-weight: bold;">Загальний об'єднаний стовпець</td>
  <td>Окремий стовпець 4</td>
</tr>

Оскільки colspan="3", ми інтегрували три комірки в одну, відповідно, наступні дві комірки з цього ряду були видалені з коду, щоб таблиця не «перекосилася» і не вилізла за загальні межі сітки.

Об'єднання стовпців по вертикалі (Rowspan)

Об'єднання клітинок за вертикальною віссю (тобто поєднання кількох рядків в один великий блок) реалізується за допомогою спорідненого атрибута rowspan (Row Span). Числове значення цього параметра чітко визначає кількість вертикальних рядків, які будуть інтегровані в єдиний сегмент.

Ця тема традиційно викликає найбільші труднощі у студентів та веб-майстрів-початківців, оскільки візуально утримувати в голові структуру перетину вертикальних ліній значно складніше. Найкращий лайфхак для залізобетонного освоєння цього процесу на етапі навчання — створити матрицю, де кожна комірка чітко пронумерована цифрами від 1 до 12. Коли ви прописуєте, наприклад, для клітинки з цифрою 6 атрибут rowspan="2", ви зобов'язані повністю видалити тег комірки, що знаходиться строго під нею у наступному горизонтальному рядку (у нашому випадку це була б клітинка з числом 10).

Погляньте на чистий приклад правильного вертикального об'єднання у коді:

<!-- Рядок 1 -->
<tr>
  <td rowspan="2" style="background: #edf2f7;">Вертикальне об'єднання</td>
  <td>Комірка Б1</td>
</tr>
<!-- Рядок 2 -->
<tr>
  <!-- Перша комірка тут відсутня, вона поглинута рядком вище -->
  <td>Комірка Б2</td>
</tr>

Семантичні заголовки таблиці (Теги caption та th)

Для підвищення рівня доступності сайту, покращення індексації пошуковими роботами Google та забезпечення красивого візуального оформлення, таблиці необхідно оснащувати правильними заголовками. Для цього архітектура HTML пропонує два ключових теги:

  1. Тег <caption> — використовується для створення загальної назви (титулу) всієї таблиці. Його необхідно розміщувати безпосередньо після відкриваючого головного тегу <table>. Браузер автоматично вирівнює цей напис по центру над усією структурою даних.
  2. Тег <th> (Table Header) — застосовується замість стандартного тегу <td> для оформлення назв окремих стовпців або бічних назв рядків. Весь текст, укладений між тегами <th>, автоматично відображається напівжирним накресленням шрифту та вирівнюється строго по центру комірки, навіть без додаткових налаштувань стилів.

Аналітичний погляд: Чому таблична верстка сайтів назавжди відійшла в минуле?

На світанку розвитку веб-індустрії (наприкінці 1990-х та у 2000-х роках) використання таблиць як основного каркаса для побудови дизайну всього сайту було тотальним стандартом. Веб-розробники створювали величезну невидиму таблицю, де в одну верхню клітинку ховали шапку сайту (хедер), у ліву колонку поміщали меню навігації, у центральну — головну статтю, а в нижній рядок монтували підвал сайту (футер).

Такий алгоритм мав чітку послідовність дій:

  • Дизайнер створював цілісний графічний макет.
  • Спеціальним софтом (наприклад, Photoshop) картинка буквально «нарізалася» на дрібні шматочки.
  • Програміст розставляв ці графічні фрагменти по клітинках HTML-таблиці, імітуючи цілісний інтерфейс.

Станом на 2026 рік такий підхід вважається грубою технічною помилкою і ознакою абсолютної непрофесійності. Таблична верстка має критичні недоліки, які зробили її неприпустимою в сучасних реаліях:

Головні мінуси використання таблиць не за призначенням:

  1. Жахливе роздуття коду (Code Bloat). Для створення найпростішої сторінки потрібні сотні вкладених тегів <table><tr><td>. Це колосально збільшує вагу файлу і критично знижує швидкість завантаження сайту, що негативно впливає на SEO-ранжування в Google.
  2. Повна відсутність адаптивності. Таблична сітка є жорсткою та негнучкою за своєю природою. Перебудувати елементи таблиці так, щоб на екрані смартфона бічна панель автоматично опустилася під основний контент, штатними засобами неможливо.
  3. Проблеми з індексацією та доступністю. Пошукові роботи та спеціальні скрінрідери для людей із порушеннями зору зчитують табличний код лінійно. У результаті замість осмисленого контенту програма зчитує технічні координати осередків, що руйнує юзабіліті сайту.

Сучасним і єдиним правильним рішенням для верстки сітки сайту є використання семантичних тегів HTML5 (<header>, <nav>, <main>, <footer>) у поєднанні з потужними технологіями стилізації CSS Flexbox та CSS Grid Layout. Вони дозволяють створювати легкі, адаптивні та неймовірно швидкі інтерфейси, залишаючи тег <table> виключно для виконання його прямої та природної функції — відображення структурованих аналітичних даних.

Схожі статті
HTML: таблична верстка. Приклади, опис, застосування, поради
HTML: таблична верстка. Приклади, опис, застосування, поради
Майже кожен користувач інтернету в певні момент замислювався над створенням власного сайту. Зараз це зробити дуже просто, а головне - цікаво.
Розмір тексту в HTML: правила форматування
Розмір тексту в HTML: правила форматування
HTML — це мова гіпертекстової розмітки, за допомогою якого здійснюється форматування веб-документів. Він надає основні можливості упорядкування
Прокомментировать
Натисніть на зображення, щоб оновити код, якщо він нерозбірливий