Opened 2 years ago
Last modified 8 days ago
#34041 assigned Cleanup/optimization
Accessibility improvements for admin breadcrumbs
Reported by: | Thibaud Colas | Owned by: | Jerry Wan |
---|---|---|---|
Component: | contrib.admin | Version: | dev |
Severity: | Normal | Keywords: | accessibility, landmarks, ARIA |
Cc: | Tom Carrick | Triage Stage: | Accepted |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | yes |
Pull Requests: | 16414, | ||
Description (last modified by ) ¶
There are two nice and simple accessibility improvements we could make to the Django admin’s breadcrumbs:
- (fixed in 872b61193b013a700ff88cf50f0eb2cf2c266ff7) Wrap them in a
<nav aria-label="{% translate 'Breadcrumbs' %}>">
region, so they can be identified as a navigation landmark by screen reader users. - Structure the links as a
<ol>
list with<li>
items for each crumb, so screen reader users know how many items there are (visually they don’t need any changes) - Switch the last item to also be a link, with a
aria-current="page"
attribute, so semantically the last item is marked as "current page" (again doesn’t necessarily need any visual change). Technically this would also work as a span but I believe switching to a link would be a nicer experience (consistent tabbing through all items in the breadcrumb)
All three improvements are based on the Breadcrumb ARIA authoring practices pattern. All can technically be done separately if desired.
According to the ticket's flags, the next step(s) to move this issue forward are:
- For anyone except the patch author to review the patch using the patch review checklist and either mark the ticket as "Ready for checkin" if everything looks good, or leave comments for improvement and mark the ticket as "Patch needs improvement".
Change History (13)
comment:1 by , 2 years ago
Triage Stage: | Unreviewed → Accepted |
---|
comment:2 by , 2 years ago
Type: | New feature → Cleanup/optimization |
---|
comment:3 by , 2 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:4 by , 2 years ago
Has patch: | set |
---|
comment:5 by , 2 years ago
Triage Stage: | Accepted → Ready for checkin |
---|
comment:7 by , 2 years ago
Description: | modified (diff) |
---|---|
Has patch: | unset |
Triage Stage: | Ready for checkin → Accepted |
comment:8 by , 2 years ago
Owner: | removed |
---|---|
Status: | assigned → new |
comment:9 by , 2 years ago
Owner: | set to |
---|---|
Status: | new → assigned |
comment:11 by , 2 years ago
Cc: | added |
---|
comment:12 by , 2 years ago
Patch needs improvement: | set |
---|
comment:13 by , 8 days ago
Patch needs improvement: | unset |
---|
Note:
See TracTickets
for help on using tickets.
PR: https://github.com/django/django/pull/16106