[Django] #34038: Low text contrast and no visual cues for links within body text in admin UI

50 views
Skip to first unread message

Django

unread,
Sep 24, 2022, 3:41:23 AM9/24/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud | Owner: nobody
Colas |
Type: Bug | Status: new
Component: | Version: 4.0
contrib.admin | Keywords: accessibility,
Severity: Normal | color contrast, ux
Triage Stage: | Has patch: 0
Unreviewed |
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 1 |
-------------------------------------+-------------------------------------
The Django admin’s light theme uses a light blue for links within text,
with no other distinction of what is a link. This is problematic for two
reasons:

- The current shade of blue, `#447e9b`, doesn’t have enough contrast
against the white body background.
- For people with color blindness, there is no visual cue that a link is a
link.

For those reasons, I would recommend:

- Changing the link color of `--link-fg`. My recommendation would be to
use an ever-so-slightly darker `#437c98` (1% less lightness in HSL
representation)
- Introduce an underline for all links within body text, so they can be
identified unambiguously.

--
Ticket URL: <https://code.djangoproject.com/ticket/34038>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Sep 24, 2022, 5:24:48 AM9/24/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: nobody
Type: Bug | Status: new
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* stage: Unreviewed => Accepted


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

Django

unread,
Sep 24, 2022, 6:54:11 AM9/24/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: William
Type: Bug | Status: assigned

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by William):

* cc: William (added)
* owner: nobody => William
* status: new => assigned


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

Django

unread,
Sep 24, 2022, 10:05:57 AM9/24/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: William
| Claassen

Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by William Claassen):

* has_patch: 0 => 1


Comment:

A pull request has been added:
[https://github.com/django/django/pull/16101 PR]. This includes:
- Changing the default colour to a slightly darkened in light mode (-1%
lightness in HSL colour space) as requested
- Adding underline on hover for all default links (add/create links,
breadcrumbs...) to make links easier to identify

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:3>

Django

unread,
Oct 10, 2022, 11:42:34 PM10/10/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: William
| Claassen
Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1

Easy pickings: 0 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* needs_better_patch: 0 => 1


--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:4>

Django

unread,
Dec 12, 2022, 11:41:56 PM12/12/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: (none)
Type: Bug | Status: new

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 1 | UI/UX: 1

-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* owner: William Claassen => (none)
* status: assigned => new
* easy: 0 => 1


Old description:

> The Django admin’s light theme uses a light blue for links within text,
> with no other distinction of what is a link. This is problematic for two
> reasons:
>
> - The current shade of blue, `#447e9b`, doesn’t have enough contrast
> against the white body background.
> - For people with color blindness, there is no visual cue that a link is
> a link.
>
> For those reasons, I would recommend:
>
> - Changing the link color of `--link-fg`. My recommendation would be to
> use an ever-so-slightly darker `#437c98` (1% less lightness in HSL
> representation)
> - Introduce an underline for all links within body text, so they can be
> identified unambiguously.

New description:

The Django admin’s light theme uses a light blue for links within text,
with no other distinction of what is a link. This is problematic for two
reasons:

- The current shade of blue, `#447e9b`, doesn’t have enough contrast
against the white body background.
- For people with color blindness, there is no visual cue that a link is a
link.

For those reasons, I would recommend:

- Changing the link color of `--link-fg`. My recommendation would be to
use an ever-so-slightly darker `#437c98` (1% less lightness in HSL
representation)

~~- Introduce an underline for all links within body text, so they can be
identified unambiguously.~~

--

Comment:

The new color have enough contrast when the background is white.
Unfortunately `--link-fg` is also used with yellow (`#ffffcc`) and gray
backgrounds (`#f8f8f8`). We should make it even darker to meet AA
standards, e.g. `#417893`.

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:5>

Django

unread,
Dec 13, 2022, 12:13:23 AM12/13/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Nimra
Type: Bug | Status: assigned

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0

Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* owner: (none) => Nimra
* needs_better_patch: 1 => 0
* has_patch: 1 => 0


* status: new => assigned


--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:6>

Django

unread,
Dec 13, 2022, 2:11:27 AM12/13/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Nimra
Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Ready for
color contrast, ux | checkin
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* has_patch: 0 => 1
* stage: Accepted => Ready for checkin


Comment:

[https://github.com/django/django/pull/16378 PR]

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:7>

Django

unread,
Dec 13, 2022, 2:41:14 AM12/13/22
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Nimra
Type: Bug | Status: closed
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution: fixed

Keywords: accessibility, | Triage Stage: Ready for
color contrast, ux | checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak <felisiak.mariusz@…>):

* status: assigned => closed
* resolution: => fixed


Comment:

In [changeset:"1d0fa848e084cad62d0bb6bde3b51e4862558e57" 1d0fa848]:
{{{
#!CommitTicketReference repository=""
revision="1d0fa848e084cad62d0bb6bde3b51e4862558e57"
Fixed #34038 -- Improved color contrast for links in admin.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:8>

Django

unread,
Oct 27, 2023, 11:17:59 AM10/27/23
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Nimra
Type: Bug | Status: new

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* status: closed => new


* has_patch: 1 => 0

* resolution: fixed =>
* stage: Ready for checkin => Accepted


Comment:

Reopen per [https://code.djangoproject.com/ticket/34917#comment:5
Thibaud's comment]. We need an underline and a better contrast.

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:9>

Django

unread,
Oct 27, 2023, 11:18:08 AM10/27/23
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: (none)
Type: Bug | Status: assigned

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* owner: Nimra => (none)


* status: new => assigned


--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:10>

Django

unread,
Oct 27, 2023, 11:18:12 AM10/27/23
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: (none)
Type: Bug | Status: new

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* status: assigned => new


--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:11>

Django

unread,
Oct 28, 2023, 12:01:04 AM10/28/23
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: yushan
Type: Bug | Status: assigned

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by yushan):

* owner: (none) => yushan


* status: new => assigned


--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:12>

Django

unread,
Oct 28, 2023, 1:45:33 AM10/28/23
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: yushan
Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by yushan):

* has_patch: 0 => 1


Comment:

[https://github.com/django/django/pull/17419 PR]

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:13>

Django

unread,
Jan 17, 2024, 11:30:09 AM1/17/24
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: yushan
Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------

Comment (by Natalia Bidart):

Pasting
[https://github.com/django/django/pull/17419#pullrequestreview-1820021243
the latest comment from the linked PR] to re-puporse this ticket for
providing admin link underlines:

{{{
We had a good chat about this at our latest @django/accessibility meeting.
We agreed that for now, we should just fix the colours and not add the
underline.
We should still do the underline part, but as a new ticket, because:
* The changes can easily be done separately.
* Because of the difficulty in deciding what should and shouldn't be
underlined, it's better to get the less contentious change out first.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:14>

Django

unread,
Feb 3, 2024, 5:54:11 AM2/3/24
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: (none)
Type: Bug | Status: new
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* owner: yushan => (none)


* status: assigned => new

* has_patch: 1 => 0

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:15>

Django

unread,
Feb 4, 2024, 4:06:04 PM2/4/24
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Dylan
| Patrick Go
Type: Bug | Status: assigned

Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Dylan Patrick Go):

* owner: (none) => Dylan Patrick Go


* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:16>

Django

unread,
Feb 5, 2024, 10:02:01 PM2/5/24
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Dylan
| Patrick Go
Type: Bug | Status: assigned
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution:
Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Dylan Patrick Go):

* has_patch: 0 => 1

Comment:

[https://github.com/django/django/pull/17825 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:17>

Django

unread,
Feb 6, 2024, 12:06:31 AM2/6/24
to django-...@googlegroups.com
#34038: Low text contrast and no visual cues for links within body text in admin UI
-------------------------------------+-------------------------------------
Reporter: Thibaud Colas | Owner: Dylan
| Patrick Go
Type: Bug | Status: closed
Component: contrib.admin | Version: 4.0
Severity: Normal | Resolution: fixed

Keywords: accessibility, | Triage Stage: Accepted
color contrast, ux |
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* status: assigned => closed


* has_patch: 1 => 0

* resolution: => fixed

Comment:

Thibaud, I don't see any contrast issues with the new color: `#417893`, so
closing as fixed.
--
Ticket URL: <https://code.djangoproject.com/ticket/34038#comment:18>

Reply all
Reply to author
Forward
0 new messages