Skip to content

Contrast improvements issues: ensure that WCAG 3 APCA is used over WCAG 2 AA/AAA contrast rule #65

@krassowski

Description

@krassowski

As outlined in jupyter/jupyter.github.io#587, I find some changes made in good faith aiming to improve accessibility metrics, unfortunately do not achieve intended end goal of actually improving accessibility but result in the contrary. There are a few issues with changing colours, including:

  • the relative importance of elements in the layout gets changed and may create a distractive environment (this requires to rethink how the layout should look like with the new colours!)
  • the number of visually distinct colours decreases because we restrict luminance bringing remaining colours closer (especially affecting partially colourblind people)
  • users prone to migraine might experience more exacerbations when working in high-contrast environment

While all are important (and were discussed previously in various issues and accessibility meetings), I want to draw attention to a new problem, which I was experiencing for some time now but did not understand on technical level and could not express it clearly; it comes down to the limitations of the tools which we use when evaluating contrast.

Most tools in 2021 use the WCAG 2 algorithm which computes luminance difference ignoring most aspects of human contrast perception. WCAG 3 will include a much better algorithm called Advanced Perceptual Contrast Algorithm (APCA) which solves some of the issues.

APCA is already available in the Chrome DevTools 89 (see Color and contrast accessibility, and how to enable it) and guidelines are included in the draft of WCAG 3. A very colorful APCA contrast calculator is available on: https://www.myndex.com/SAPC/.

May I suggest that going forward any changes to colours aiming to increase contrast/accessibility will be evaluated with the use of APCA over AA/AAA rules from WCAG 2? At the minimum, could we consider both and discuss whether a change is really needed?

Ideally we would perform some user testing like an informal anonymous survey for each major change. I would not want it to be something with high burden (not even surveymonkey or google forms) - just a simple Twitter poll or equivalent.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions