Если нажатие на спойлер ничего не даёт или блок сразу показывает весь текст, чаще всего дело в трёх вещах: спойлер реализован через JavaScript, который не подгрузился; используется тег <details>, который старые браузеры или парсеры RSS не поддерживают; либо CSS-стили темы сайта перебивают стили самого спойлера. Проверка занимает пару минут.
Как проверить, в чём причина
- Откройте консоль разработчика (F12 → Console) и обновите страницу — если там красные ошибки про undefined function или jQuery, спойлер сломан из-за скрипта.
- Отключите блокировщик рекламы и расширения — они нередко режут скрипты форумов вместе с рекламными.
- Посмотрите исходный код через «Просмотр кода страницы» — если вместо <details><summary> там просто <div class=»spoiler»> без атрибутов, значит раскрытие целиком держится на JS-обработчике клика.
- Попробуйте другой браузер или отключите режим для чтения / AMP-версию страницы — упрощённые версии часто вырезают интерактивные блоки.
Спойлер не работает на форуме или в BB-коде
На форумных движках (phpBB, vBulletin, Invision) спойлер обычно собирается из BB-кода
Спойлер не работает при вставке в свой сайт
Если вы сами вставляете чужой спойлер-виджет (например, скопированный HTML) в CMS вроде WordPress, редактор часто обрезает атрибуты open/onclick или оборачивает код в лишние теги при сохранении. Решение — вставлять через режим «Текст/HTML», а не визуальный редактор, и проверять результат сразу после публикации, а не только в черновике.
Нативный тег <details><summary>текст</summary>содержимое</details> работает без JavaScript почти во всех современных браузерах и не ломается при смене темы оформления — если есть возможность переделать спойлер на него, это снимает большинство подобных проблем разом.