При использовании выпадающего меню уведомлений по теме (Слежение/Отслеживание/Обычное/Заглушено) текст и иконка текущего выбранного пункта становятся невидимыми из-за недостаточного контраста между цветом фона выделения и цветами переднего плана.
Шаги для воспроизведения
-
Откройте любую тему
-
Нажмите кнопку с колокольчиком уведомлений в нижней части темы
-
Обратите внимание на текущий выбранный уровень уведомлений (например, «Отслеживание»)
Ожидаемое поведение
Выбранный пункт должен иметь четко видимый текст и иконку с хорошим контрастом.
Фактическое поведение
-
Текстовая метка исчезает или становится очень трудно читаемой
-
Иконка колокольчика становится невидимой
-
Проблема наиболее заметна в темных темах, но может проявляться в любой теме в зависимости от цветовой палитры
Технические детали
В файле app/assets/stylesheets/common/select-kit/select-kit.scss состояние .is-selected устанавливает только цвет фона, не обеспечивая контрастность переднего плана:
&.is-selected,
&.is-selected.is-highlighted {
background: var(--d-selected);
// Нет переопределения цвета для текста или иконок
}
CSS-переменная --d-selected берется из цвета $selected темы, но текст (.name, .desc) и иконки (.d-icon) сохраняют свои цвета по умолчанию, которые могут плохо контрастировать с фоном выделения.
Скриншоты
Окружение
-
Версия Discourse: последняя
-
Браузер: Edge
-
Тема: тема Foundation

