Skip to content

Simplify the global navigation markup #671

@NicolaSaunders

Description

@NicolaSaunders

Describe the issue
As reported by @gosko, the markup required for the global navigation is quite verbose and there is a preference to try and simplify it. The main reasons for the verbosity are:

  • the use of the .clean-list class on lists to remove all bullets/margin/padding
  • adding role="list" to the lists to ensure that when list styles are removed by the .clean-list class, WebKit browsers will continue to correctly honour the list semantics
  • inline SVGs used for decorative icons

Recommended solution

  • Remove default bullets/margin/padding on lists used within <nav> elements, thereby removing the need to apply the .clean-list class
  • Drop the requirement to add role="list" to lists used within <nav> elements, as per the Jan 2023 update to the "Fixing" lists blog post
  • Replace inline SVG icons with pseudo elements styled with CSS

Additional context
Removing default bullets/margin/padding on lists used within <nav> elements means that the use of the .clean-list class and role="list" are no longer needed in other areas too. For example, see issue #669

Metadata

Metadata

Type

No type

Projects

Status

✅ Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions