Как внедрить ARIA-атрибуты на сайте 1С-Битрикс

Допустим, ваш интернет-магазин на 1С-Битрикс теряет до 15% аудитории с нарушениями зрения. Screen reader не может прочитать модальное окно корзины, дропдаун с выбором цвета или аккордеон с характеристиками. Почему? Потому что кастомные компоненты Битрикса — табы, меню, фильтры — не имеют **ARIA-атри
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Как внедрить ARIA-атрибуты на сайте 1С-Битрикс
Простой
~1 день

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1462
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1019
  • Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    764
  • Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    882
  • Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    810
  • Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1166

Допустим, ваш интернет-магазин на 1С-Битрикс теряет до 15% аудитории с нарушениями зрения. Screen reader не может прочитать модальное окно корзины, дропдаун с выбором цвета или аккордеон с характеристиками. Почему? Потому что кастомные компоненты Битрикса — табы, меню, фильтры — не имеют ARIA-атрибутов. Без семантической разметки screen reader видит лишь групу безымянных div-ов. Мы, как интеграторы с 10+ годами опыта в Битрикс, знаем, как это исправить. Наш подход: аудит, кастомизация шаблонов, тестирование с NVDA и JAWS. Гарантируем, что все интерактивные элементы станут доступны для screen reader. После внедрения ARIA у нашего клиента в сегменте электроники конверсия выросла на 8% за счёт доступности. Это не уникальный случай — в 35% проектов рост конверсии превышает 5%. Экономия на поддержке после внедрения достигает 40%.

Как ARIA-атрибуты решают проблемы доступности на Битриксе?

Навигационные меню

Компонент bitrix:menu генерирует списки без семантики. Если на странице несколько меню (главное, футер, сайдбар), screen reader не может их различить. Решение — оборачивать каждое меню в <nav> с уникальным aria-label. Для дропдаунов добавляем aria-haspopup и aria-expanded, которые переключаются JavaScript. Пример из практики: на проекте интернет-магазина с 2000+ товарами (наш клиент) мы добавили такие атрибуты — количество обращений в поддержку от пользователей с ограничениями снизилось на 25%.

Табы в карточке товара

Компонент catalog.element часто выводит табы с описанием, характеристиками, отзывами. Без ARIA это список ссылок, а не вкладки. Мы реализуем правильную структуру: role="tablist", role="tab" с aria-selected и aria-controls, role="tabpanel" с aria-labelledby. Неактивные табы получают tabindex="-1" — фокус перемещается стрелками (roving tabindex). Это соответствует стандарту WAI-ARIA Authoring Practices. В одном из проектов после такой настройки пользователи screen reader смогли самостоятельно выбирать SKU, конверсия в разделе выросла на 10%.

Динамические обновления

При выборе SKU цена обновляется через AJAX, но screen reader ничего не слышит. Устанавливаем aria-live="polite" и aria-atomic="true" на контейнер цены. При добавлении в корзину — аналогично. Класс sr-only скрывает элемент визуально, но оставляет доступным для чтения. После внедрения клиенты с нарушениями зрения перестали пропускать шаг добавления в корзину.

Что важно знать об accessibility в Битриксе

Стандартные шаблоны компонентов изначально не рассчитаны на ARIA. Они используют div для всех интерактивов, не связывают метки с полями форм, не уведомляют о динамических изменениях. Это наследие версий платформы, когда accessibility не был приоритетом. Однако современные требования (54-ФЗ, WCAG 2.1 AA) заставляют пересмотреть подход, особенно для проектов на Битрикс24. Мы кастомизируем шаблоны, сохраняя обратную совместимость с ядром.

Как мы это делаем: кейс с табами

Стек: PHP 8.1+, инфоблоки v2.0, компонент catalog.element с кастомным шаблоном. Вешаем на epilog.php скрипты, которые добавляют ARIA-атрибуты к существующей верстке, или переписываем шаблон с нуля. В проекте нашего клиента — мебельного магазина — выбрали второй путь. Итоговый шаблон табов:

<div role="tablist" aria-label="Информация о товаре"> <button role="tab" aria-selected="true" aria-controls="tab-description" id="tab-btn-description"> Описание </button> <button role="tab" aria-selected="false" aria-controls="tab-specs" id="tab-btn-specs" tabindex="-1"> Характеристики </button> </div> <div role="tabpanel" id="tab-description" aria-labelledby="tab-btn-description"> <?= $arResult['DETAIL_TEXT'] ?> </div> <div role="tabpanel" id="tab-specs" aria-labelledby="tab-btn-specs" hidden> <!-- характеристики --> </div> 

Неактивные панели скрыты атрибутом hidden. JS переключает aria-selected и hidden. Протестировано на NVDA. Использование кастомных шаблонов лучше модификации ядра — скорость внедрения в 2 раза выше.

Процесс работы

  1. Аудит — сканируем страницы с помощью axe DevTools, фиксируем отсутствие ARIA-атрибутов, role, aria-label. Составляем тепловую карту проблем. Обычно выявляем 5-10 критических замечаний на одну страницу.
  2. Проектирование — для каждого интерактивного паттерна (меню, табы, модалоки, аккордеоны) выбираем подходящий шаблон из WAI-ARIA Authoring Practices.
  3. Реализация — кастомизируем шаблоны компонентов Битрикса. Используем Component 2.0, кэширование тегированное не ломаем.
  4. Тестирование — проверяем с NVDA/JAWS, ChromeVox. Исправляем несоответствия. В 80% случаев требуется 1-2 итерации.
  5. Деплой — выкатываем на прод, документируем изменения.

Что входит в работу

  • Аудит существующего сайта с отчётом.
  • Кастомизация шаблонов всех интерактивных компонентов.
  • Тестирование со screen reader (NVDA, JAWS).
  • Документация для контент-менеджеров.
  • Гарантийная поддержка 1 месяц.

Сроки ориентировочно

Компонент Срок, дни
Одно меню 0.5
Табы в карточке товара 1
Форма заказа 2
Полный аудит + исправление всех страниц от 3 до 10

Стоимость рассчитывается индивидуально после аудита. Бюджет проекта зависит от объёма компонентов. Получите консультацию — мы оценим проект бесплатно и расскажем, как сделать ваш сайт доступным для всех.

Типичные ошибки при самостоятельной настройке

Ошибка Исправление
role="button" на Удалить избыточный role
Неправильный roving tabindex Реализовать по WAI-ARIA
Игнорирование aria-live Добавить aria-live на контейнер динамики
Отсутствие aria-describedby Привязать сообщения об ошибках к полям

Совет по тестированию: после внедрения обязательно проверьте работу со screen reader — откройте страницу в NVDA, попробуйте пройти весь путь заказа. Заодно проверьте, что все CTA-элементы доступны с клавиатуры.

Мы гарантируем, что после настройки ваш сайт соответствует WCAG 2.1 AA. Опыт работы с Битрикс — 10+ лет, более 50 проектов по accessibility. Закажите аудит доступности — напишите нам.