1
0
mirror of https://github.com/django/django.git synced 2025-10-26 23:26:08 +00:00

Fixed #34621 -- Made admin site header render in <div> tag.

This was problematic for screen reader users because they use headings
to navigate. Having two <h1> is confusing, and the one in the header
wasn’t particularly helpful since it’s the same on all pages.
This commit is contained in:
Howard Cox
2023-06-02 11:54:07 +01:00
committed by Mariusz Felisiak
parent 89c27d8672
commit cd413bd78a
8 changed files with 19 additions and 10 deletions

View File

@@ -367,7 +367,7 @@ a section of code like:
.. code-block:: html+django
{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">Polls Administration</a></h1>
<div id="site-name"><a href="{% url 'admin:index' %}">Polls Administration</a><div>
{% endblock %}
We use this approach to teach you how to override templates. In an actual

View File

@@ -2848,9 +2848,13 @@ Templates can override or extend base admin templates as described in
.. attribute:: AdminSite.site_header
The text to put at the top of each admin page, as an ``<h1>`` (a string).
The text to put at the top of each admin page, as a ``<div>`` (a string).
By default, this is "Django administration".
.. versionchanged:: 5.0
In older versions, ``site_header`` was using an ``<h1>`` tag.
.. attribute:: AdminSite.site_title
The text to put at the end of each admin page's ``<title>`` (a string). By

View File

@@ -419,6 +419,11 @@ Miscellaneous
* :class:`~django.db.models.functions.Now` database function now uses
``LOCALTIMESTAMP`` instead of ``CURRENT_TIMESTAMP`` on Oracle.
* :attr:`.AdminSite.site_header` is now rendered in a ``<div>`` tag instead of
``<h1>``. Screen reader users rely on heading elements for navigation within
a page. Having two ``<h1>`` elements was confusing and the site header wasn't
helpful as it is repeated on all pages.
.. _deprecated-features-5.0:
Features deprecated in 5.0