dequelabs / dequelabs/axe-core

Color contrast may need to work across frame boundaries

Open
#4,228 0 comments 0 reactions 0 assignees View on GitHub
color contrast false negative fix support
Dominant language
JavaScript
Stars
7.5k
Forks
933
Avg merge
2d 13h
Merged PRs (30d)
29

Description

The HTML element of a page loaded in an iframe has opacity of 0. Because of this, the text in an iframe can be displayed on top of a background color that is in its parent frame:

I.e; Axe should not pass this:

```html




```

Ideally axe-core should have an after method for its color contrast rules that can compute contrast of elements across frame boundaries. That's quite a big restructure for something that in practice has never been reported, so a simpler thing we could do is set incomplete for nodes inside a frame when there is no background.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the iframe example and trace axe-core’s color contrast rules and frame-boundary handling. Compare the proposed cross-frame contrast calculation with marking nodes incomplete when no background is available, then confirm the expected behavior and cover it with a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
accessibility
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.