1. Основы HTML-структуры: разметка ключевых элементов табло
Основы HTML-структуры: разметка ключевых элементов табло
Представьте, что вы входите в ледовый дворец за 10 минут до начала матча. Ваш взгляд сразу падает на гигантское табло над площадкой: на нём уже горят названия команд, нули в графе счёта и таймер, ожидающий старта. Именно эту статичную, но информативно насыщенную «заготовку» мы создадим сегодня на HTML. Без неё не будет за что зацепиться ни стилям, ни скриптам.
Любое веб-табло — это набор контейнеров (или блоков), внутри которых лежат данные. Контейнеры помогают нам не только визуально группировать элементы, но и управлять ими через CSS и JavaScript как единым целым. Наша задача — распределить элементы табло по логическим группам, чтобы потом стилизовать и «оживить» их независимо.
Шапка табло: время матча и команды
Самый верхний блок — шапка (header). В ней мы разместим три ключевых блока: таймер матча по центру и названия команд по бокам. Используем семантический тег <header>, чтобы браузер и поисковики понимали важность этой области.
Обратите внимание на соглашение об именовании классов — методология BEM (Блок, Элемент, Модификатор). Класс team — это блок, team__name — его элемент, а team--home — модификатор, указывающий на хозяев площадки. Такой подход предотвращает конфликты имён и делает код самодокументируемым.
Основное поле: счёт и периоды
Центральная часть табло — это основной контейнер (main), где отображается счёт по периодам и общий результат. Разобьём его на две логические строки: детализация по периодам и итоговый счёт.
Здесь мы использовали тег <section> для выделения самостоятельного раздела с очками. Каждый показатель счёта обёрнут в <span> — строчный элемент, который не нарушает поток и идеально подходит для отображения чисел в таблице.
Подвал: штрафы и дополнительная информация
Нижняя часть табло — подвал (footer). В хоккее это зона для отображения штрафного времени, силы составов (например, 5 на 4) и прочих уведомлений. Создадим заготовку и для них.
Каждый штраф — это отдельный блок penalty с модификатором команды. Внутри — элементы для номера игрока, оставшегося времени и причины удаления. Такая структура позволит нам потом независимо стилизовать и управлять каждым штрафом через JavaScript.
Сборка всех фрагментов в единый документ
Теперь объединим все части в полноценный HTML-документ. Не забудем про doctype, кодировку и базовые мета-теги — они гарантируют корректное отображение в браузере.
Весь контент обёрнут в корневой контейнер div.scoreboard. Это главный контейнер, через который мы будем управлять всем табло: центрировать на странице, задавать фоновые стили и ограничивать ширину. Тег <script> подключён перед закрывающим </body> — это стандартная практика, чтобы браузер сначала загрузил и отобразил HTML, а потом исполнил JavaScript.
Проверка структуры: что мы получили
Откройте созданный HTML-файл в браузере. Пока вы увидите просто текст без оформления — это нормально. Главное, чтобы:
Такая семантическая разметка — фундамент. Каждый элемент находится в логическом контейнере, имеет понятный класс и готов к стилизации. В следующей статье мы превратим этот скелет в визуально привлекательное табло с помощью CSS, добавив спортивные цвета, шрифты и адаптивность под разные экраны.