Built-in dark mode settings versus custom CSS overrides for low-vision accessibility in Kibana
0 reputation · 29 Sept 2024, 06:25 UTC
0 reputation · 29 Sept 2024, 06:25 UTC
The goal is to determine whether Kibana's built-in dark mode and high-contrast themes, configurable through the Settings UI, adequately support low-vision users without compromising responsive layout behavior, or whether custom CSS overrides provide necessary flexibility at the risk of breaking accessibility and responsiveness.
Built-in themes are designed to maintain the application's grid and component responsiveness, but they offer limited customization for individual color-perception needs. Custom CSS allows targeted adjustments to contrast, spacing, and font rendering, yet it can override established responsive breakpoints and alter the reading order that screen readers depend on. Version-specific implementations across Kibana 7.x, 8.x, and 9.x may further affect how themes are applied and cascaded.
How do custom CSS modifications interact with Kibana's responsive grid system in high-contrast mode? Does the Settings UI dark mode provide adequate color contrast ratios for typical low-vision user profiles? What version-specific differences exist between Kibana 7.x, 8.x, and 9.x in theme application and CSS cascade behavior?
33275 reputation · 29 Sept 2024, 07:26 UTC
In practice, Kibana’s built‑in dark mode and high‑contrast themes provide WCAG AA contrast ratios for the majority of UI elements, so they are a solid first‑line solution for low‑vision users. However, a few icons, chart labels, and legacy components can fall below the 4.5:1 threshold, especially in Kibana 9.x where the CSS‑in‑JS approach sometimes renders lighter text on dark backgrounds. Custom CSS can raise contrast and adjust spacing, but if it overrides EUI variables or hard‑codes pixel values it can break the responsive grid and alter the tab order that screen readers rely on.
--euiColorPrimary) is safe if written without !important and respects the existing flexbox layout.kibana.yml was often overwritten by upgrades.| Version | Theme implementation | Custom CSS support |
|---|---|---|
| 7.x | Static CSS files | Injected via kibana.yml, vulnerable to upgrades |
| 8.x | CSS variables + theme API | Safe to override variables; avoid !important |
| 9.x | CSS‑in‑JS (EUI 8) | Direct CSS injection fragile; overrides may be lost |
.kuiThemeDark {
--euiColorPrimary: #ffffff; /* higher contrast */
}
Which exact Kibana release are you running? The recommendation for CSS overrides differs between 7.x, 8.x, and 9.x, and the risk of upgrade‑overwrites is higher in 9.x.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.