Opened 12 days ago

Last modified 7 days ago

#36192 assigned Cleanup/optimization

Use semantic HTML for buttons in Django Admin

Reported by: Eliana Rosselli Owned by: Eliana Rosselli
Component: contrib.admin Version: 5.1
Severity: Normal Keywords: accessibility
Cc: Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Eliana Rosselli)

Right now the Django Admin has some buttons that are actually link tags with role="button" set, i.e

<a role="button">

We also have anchor elements with

<a href="#" >

that are also acting as buttons. One example is the "Today" button that can be found next to date and time inputs.

We should change these to be proper HTML buttons , and update their CSS so they maintain their existing styling. Below is an example of this kind of button; in the image, the "Add another Release" button is using an anchor element

Example of a button that uses an anchor tag: "Add another Release"

According to the ticket's flags, the next step(s) to move this issue forward are:

  • To provide a patch by sending a pull request. Claim the ticket when you start working so that someone else doesn't duplicate effort. Before sending a pull request, review your work against the patch review checklist. Check the "Has patch" flag on the ticket after sending a pull request and include a link to the pull request in the ticket comment when making that update. The usual format is: [https://github.com/django/django/pull/#### PR].

Change History (4)

by Eliana Rosselli, 12 days ago

Attachment: examplebutton.png added

Example of a button that uses an anchor tag: "Add another Release"

comment:1 by Eliana Rosselli, 12 days ago

Description: modified (diff)

comment:2 by Sarah Boyce, 10 days ago

Triage Stage: UnreviewedAccepted
Type: UncategorizedCleanup/optimization

This is a follow on from #35795

comment:3 by Eliana Rosselli, 7 days ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top