dequelabs / dequelabs/axe-core
Color contrast may need to work across frame boundaries
- 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
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