Сайт работает
Это тестовая страница на pskutils.kusigma.com. Ниже — длинный блок текста, чтобы проверить прокрутку: нижняя панель с локальным временем по объектам остаётся закреплённой у края окна.
Nginx и сертификат Let’s Encrypt настроены так, чтобы отдавать статический каталог без лишних задержек. При изменении конфигурации полезно сначала проверить синтаксис командой проверки, затем перезагрузить службу и убедиться по журналу, что новых предупреждений нет.
Когда появляется несколько независимых блоков на одной странице, важно заранее договориться о том, какие данные считаются источником истины. Для часов это всегда комбинация текущего момента UTC и выбранного IANA-идентификатора пояса: браузер сам переводит мгновение в «настенное» время нужного региона.
Интерфейс с фиксированной нижней полосой требует отступа у основного содержимого, иначе последние абзацы окажутся под панелью. Отступ в процентах от высоты окна совпадает с высотой панели — так визуальный ритм сохраняется на разных мониторах и при изменении масштаба.
Цветовое кодирование состояния «сейчас рабочий интервал или нет» должно оставаться предсказуемым: одинаковые правила для всех площадок, но сравнение выполняется по локальному времени каждой площадки, а не по московскому. Иначе на крайнем востоке и на Урале смысл подсветки разъедется.
Типографика на длинных страницах выигрывает от умеренной ширины колонки и выравнивания по ширине с аккуратной переносимостью. Слишком узкий контейнер утомляет глаз слишком частыми переносами, слишком широкий — затрудняет возврат к началу строки после конца предыдущей.
Для вспомогательных утилит вроде этой страницы разумно держать стили и сценарии в отдельных файлах: так проще сопровождать проект и не смешивать оформление, поведение и текстовое наполнение в одной куче. При необходимости данные можно вынести ещё и в JSON, если появится сборка или серверная подстановка.
Если когда-нибудь понадобится база данных, структуру «рабочее время» логично хранить как пару значений времени суток в локальной зоне объекта либо как интервал с явным указанием зоны. Пока же достаточно константы в коде: одинаковый график 08:00–19:00 для всех восьми площадок с учётом их часовых поясов.
Доступность не сводится к формальным атрибутам: имеет смысл давать развёрнутые подсказки по наведению для сокращённых подписей и обновлять живую область у часов без излишнего шума в объявлениях для скринридеров. Политика «одно обновление в секунду» для нижней панели обычно приемлема.
Ниже этот блок можно продолжить по мере появления реальных разделов сервиса. Пока он выполняет чисто демонстрационную функцию — создать вертикальный запас высоты примерно в два экрана, чтобы убедиться, что закреплённая панель не «отлипает» и не перекрывает контент без отступа.
При тестировании на мобильном устройстве стоит проверить и альбомную, и портретную ориентацию: восемь колонок в узкой полосе — осознанный компромисс; если читаемость пострадает, следующим шагом может стать горизонтальная прокрутка только панели или группировка объектов по два в ряд на очень узких экранах.
Завершая длинный абзац, отметим, что мониторинг после выкладки — отдельная дисциплина: проверка заголовков ответа, кэширования статики и корректности путей к ресурсам CSS и JS. После любого изменения стоит один раз открыть страницу в приватном окне, чтобы не попасть в ловушку устаревшего кэша браузера.