[Django] #36582: Accessibility improvement for required field labels in the admin.

7 views
Skip to first unread message

Django

unread,
Aug 29, 2025, 7:08:58 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------+-----------------------------------------
Reporter: Antoliny | Type: Uncategorized
Status: new | Component: contrib.admin
Version: 5.2 | Severity: Normal
Keywords: accessibility | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+-----------------------------------------
Currently, in the admin, labels for required fields are displayed in bold.

[[Image(Screenshot 2025-08-29 at 7.57.57 PM.png)]]

The fact that the label is displayed in bold allows sighted users to
recognize that the field is required, but users who rely on screen readers
and cannot see the visual styling are unable to perceive this.

When accessing a label, additional descriptive text should be provided, or
an element indicating that the field is required should be placed to the
right of the label with appropriate ARIA attributes, so that users of
screen readers can recognize that the field is required.

Personally, I prefer indicating required fields using a red asterisk (*).
--
Ticket URL: <https://code.djangoproject.com/ticket/36582>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Aug 29, 2025, 7:09:09 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------+--------------------------------------
Reporter: Antoliny | Owner: (none)
Type: Uncategorized | Status: new
Component: contrib.admin | Version: 5.2
Severity: Normal | Resolution:
Keywords: accessibility | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Changes (by Antoliny):

* Attachment "Screenshot 2025-08-29 at 7.57.57 PM.png" added.

Django

unread,
Aug 29, 2025, 7:09:28 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------+--------------------------------------
Reporter: Antoliny | Owner: Antoliny
Type: Uncategorized | Status: assigned
Component: contrib.admin | Version: 5.2
Severity: Normal | Resolution:
Keywords: accessibility | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Changes (by Antoliny):

* owner: (none) => Antoliny
* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/36582#comment:1>

Django

unread,
Aug 29, 2025, 7:14:27 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------------+-------------------------------------
Reporter: Antoliny | Owner: Antoliny
Type: | Status: assigned
Cleanup/optimization |
Component: contrib.admin | Version: 5.2
Severity: Normal | Resolution:
Keywords: accessibility | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Antoliny):

* type: Uncategorized => Cleanup/optimization

--
Ticket URL: <https://code.djangoproject.com/ticket/36582#comment:2>

Django

unread,
Aug 29, 2025, 9:46:04 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------------+-------------------------------------
Reporter: Antoliny | Owner: Antoliny
Type: | Status: assigned
Cleanup/optimization |
Component: contrib.admin | Version: 5.2
Severity: Normal | Resolution:
Keywords: accessibility | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* cc: Eliana Rosselli, Thibaud Colas, Sarah Abderemane, Tom Carrick
(added)

Comment:

> users who rely on screen readers and cannot see the visual styling are
unable to perceive this.

When I test with a screen reader, the required input elements are
announced as required. So there's no missed information here
Bold is not conveying meaning by a different color (which would not work
for color blind users), so I actually think we might be for this one.
I will let the accessibility team make the final call here though
--
Ticket URL: <https://code.djangoproject.com/ticket/36582#comment:3>

Django

unread,
Aug 29, 2025, 10:24:43 AMAug 29
to django-...@googlegroups.com
#36582: Accessibility improvement for required field labels in the admin.
-------------------------------------+-------------------------------------
Reporter: Antoliny | Owner: Antoliny
Type: | Status: assigned
Cleanup/optimization |
Component: contrib.admin | Version: 5.2
Severity: Normal | Resolution:
Keywords: accessibility | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Antoliny):

Replying to [comment:3 Sarah Boyce]:

> When I test with a screen reader, the required input elements are
announced as required. So there's no missed information here
> Bold is not conveying meaning by a different color (which would not work
for color blind users), so I actually think we might be for this one.
> I will let the accessibility team make the final call here though

Sorry! I should have provided more information. For regular forms, this
isn’t really an issue, but for inline forms, even though required fields
are displayed in bold, the inline form itself is not marked as required.
This means that even if a field inside the inline is required when
creating an object, there is no indication of its required status (other
than the visual bold style).

The reason I focused on regular forms in the ticket is because,
personally, I think it would be better to have something other than bold
text some element explicitly indicating that a field is required. That
way, the information would be provided consistently to both screen reader
users and sighted users.

I suppose we’ll need to discuss further how exactly this issue should be
addressed.
--
Ticket URL: <https://code.djangoproject.com/ticket/36582#comment:4>
Reply all
Reply to author
Forward
0 new messages