Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix a11y audit: Missing aria-hidden on some decorative SVGs #2691

Open
wants to merge 15 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions site/content/docs/5.3/components/orange-navbar.md
Original file line number Diff line number Diff line change
Expand Up @@ -432,29 +432,29 @@ To easily integrate it in your project, you can start from our [Navbar mode sele
<ul class="navbar-nav flex-row">
<li class="nav-item dropdown">
<button class="nav-link nav-icon dropdown-toggle" id="bd-theme" aria-expanded="false" data-bs-toggle="dropdown" data-bs-display="static" aria-label="Toggle mode (auto)">
<svg class="theme-icon-active"><use href="#ui-auto-mode"></use></svg>
<svg class="theme-icon-active" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
<span class="d-lg-none ms-2" id="bd-theme-text">Toggle mode</span>
</button>
<ul class="dropdown-menu dropdown-menu-end mb-2" aria-labelledby="bd-theme-text">
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
<svg class="me-2"><use href="#ui-light-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-light-mode"></use></svg>
Light
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
<svg class="me-2"><use href="#ui-dark-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-dark-mode"></use></svg>
Dark
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true">
<svg class="me-2"><use href="#ui-auto-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
Auto
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
</ul>
Expand Down
2 changes: 1 addition & 1 deletion site/content/docs/5.3/components/tags.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ For a list of tags of an article, for example, add a heading (`<h1>–<h6>`) to
<li><span class="tag">Bird</span></li>
<li>
<span class="tag">
<svg xmlns='http://www.w3.org/2000/svg' fill="currentColor" viewBox='0 0 32 32'><path d='M32 7a13 13 0 01-3.8 1.1 6.6 6.6 0 003-3.6c-1.4.7-2.8 1.3-4.3 1.6a6.6 6.6 0 00-11.1 6A18.6 18.6 0 012.2 5a6.6 6.6 0 002 8.9c-1 0-2-.4-3-.9v.1c0 3.2 2.4 5.9 5.4 6.5a6.6 6.6 0 01-3 0 6.6 6.6 0 006.1 4.6A13.2 13.2 0 010 27.1a18.6 18.6 0 0028.7-16.6C30 9.5 31.1 8.4 32 7z'/></svg>
<svg xmlns='http://www.w3.org/2000/svg' fill="currentColor" viewBox='0 0 32 32'><path d='M32 7a13 13 0 01-3.8 1.1 6.6 6.6 0 003-3.6c-1.4.7-2.8 1.3-4.3 1.6a6.6 6.6 0 00-11.1 6A18.6 18.6 0 012.2 5a6.6 6.6 0 002 8.9c-1 0-2-.4-3-.9v.1c0 3.2 2.4 5.9 5.4 6.5a6.6 6.6 0 01-3 0 6.6 6.6 0 006.1 4.6A13.2 13.2 0 010 27.1a18.6 18.6 0 0028.7-16.6C30 9.5 31.1 8.4 32 7z' aria-hidden="true"/></svg>
Twitter
</span>
</li>
Expand Down
14 changes: 7 additions & 7 deletions site/content/docs/5.3/examples/download-app/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,29 +54,29 @@ <h1 class="two-lined">
<ul class="navbar-nav flex-row">
<li class="nav-item dropdown">
<button class="nav-link nav-icon dropdown-toggle" id="bd-theme" aria-expanded="false" data-bs-toggle="dropdown" data-bs-display="static" aria-label="Toggle mode (auto)">
<svg class="theme-icon-active"><use href="#ui-auto-mode"></use></svg>
<svg class="theme-icon-active" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
<span class="d-lg-none ms-2" id="bd-theme-text">Toggle mode</span>
</button>
<ul class="dropdown-menu dropdown-menu-end mb-2" aria-labelledby="bd-theme-text">
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
<svg class="me-2"><use href="#ui-light-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-light-mode"></use></svg>
Light
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
<svg class="me-2"><use href="#ui-dark-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-dark-mode"></use></svg>
Dark
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true">
<svg class="me-2"><use href="#ui-auto-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
Auto
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
</ul>
Expand Down
14 changes: 7 additions & 7 deletions site/content/docs/5.3/examples/form/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -72,29 +72,29 @@ <h1 class="title">Travel</h1>
<ul class="navbar-nav flex-row">
<li class="nav-item dropdown">
<button class="nav-link nav-icon dropdown-toggle" id="bd-theme" aria-expanded="false" data-bs-toggle="dropdown" data-bs-display="static" aria-label="Toggle mode (auto)">
<svg class="theme-icon-active"><use href="#ui-auto-mode"></use></svg>
<svg class="theme-icon-active" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
<span class="d-lg-none ms-2" id="bd-theme-text">Toggle mode</span>
</button>
<ul class="dropdown-menu dropdown-menu-end mb-2" aria-labelledby="bd-theme-text">
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
<svg class="me-2"><use href="#ui-light-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-light-mode"></use></svg>
Light
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
<svg class="me-2"><use href="#ui-dark-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-dark-mode"></use></svg>
Dark
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true">
<svg class="me-2"><use href="#ui-auto-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
Auto
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
</ul>
Expand Down
12 changes: 6 additions & 6 deletions site/content/docs/5.3/forms/checks-radios.md
Original file line number Diff line number Diff line change
Expand Up @@ -312,21 +312,21 @@ Add [`.btn-icon`]({{< docsref "/components/buttons" >}}#icon-only) with an [embe
<div class="btn-group" role="group">
<input type="radio" class="btn-check" name="icons" id="option5" autocomplete="off" checked>
<label class="btn btn-icon btn-toggle" for="option5">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-day"/>
</svg>
<span class="visually-hidden">Day</span>
</label>
<input type="radio" class="btn-check" name="icons" id="option6" autocomplete="off">
<label class="btn btn-icon btn-toggle" for="option6">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-week"/>
</svg>
<span class="visually-hidden">Week</span>
</label>
<input type="radio" class="btn-check" name="icons" id="option7" autocomplete="off">
<label class="btn btn-icon btn-toggle" for="option7">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-month"/>
</svg>
<span class="visually-hidden">Month</span>
Expand All @@ -340,21 +340,21 @@ Drop borders using `.btn-no-outline`, too.
<div class="btn-group" role="group">
<input type="radio" class="btn-check" name="iconsNoOutline" id="option8" autocomplete="off" checked>
<label class="btn btn-icon btn-no-outline" for="option8">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-day"/>
</svg>
<span class="visually-hidden">Day</span>
</label>
<input type="radio" class="btn-check" name="iconsNoOutline" id="option9" autocomplete="off">
<label class="btn btn-icon btn-no-outline" for="option9">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-week"/>
</svg>
<span class="visually-hidden">Week</span>
</label>
<input type="radio" class="btn-check" name="iconsNoOutline" id="option10" autocomplete="off">
<label class="btn btn-icon btn-no-outline" for="option10">
<svg width="1.25rem" height="1.25rem" fill="currentColor">
<svg width="1.25rem" height="1.25rem" fill="currentColor" aria-hidden="true">
<use xlink:href="/docs/{{< param docs_version >}}/assets/img/boosted-sprite.svg#calendar-month"/>
</svg>
<span class="visually-hidden">Month</span>
Expand Down
2 changes: 1 addition & 1 deletion site/content/docs/5.3/utilities/position.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ Here are some real life examples of these classes:
</button>

<div class="position-relative py-2 px-4 text-bg-secondary border border-secondary">
Marker <svg width="1em" height="1em" viewBox="0 0 16 16" class="position-absolute top-100 start-50 translate-middle mt-1" fill="var(--bs-secondary)" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z"/></svg>
Marker <svg width="1em" height="1em" viewBox="0 0 16 16" class="position-absolute top-100 start-50 translate-middle mt-1" fill="var(--bs-secondary)" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path d="M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z"/></svg>
</div>

<button type="button" class="btn btn-primary position-relative">
Expand Down
2 changes: 1 addition & 1 deletion site/layouts/partials/docs-subnav.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<nav class="bd-subnavbar py-2 d-lg-none" aria-label="Secondary navigation">
<div class="container-xxl d-flex justify-content-end">
<button class="btn btn-outline-secondary btn-icon p-2" type="button" data-bs-toggle="offcanvas" data-bs-target="#bdSidebar" aria-controls="bdSidebar" aria-label="Toggle docs navigation">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="bi" fill="currentColor" viewBox="0 0 16 16">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="bi" fill="currentColor" viewBox="0 0 16 16" aria-hidden="true">
<path fill-rule="evenodd" d="M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8zM7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708l2-2zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10z"></path>
</svg>
</button>
Expand Down
2 changes: 1 addition & 1 deletion site/layouts/partials/docs-versions.html
louismaximepiton marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
<li>
<a class="dropdown-item d-flex align-items-center justify-content-between active" aria-current="true" href="{{ if .IsHome }}/{{ else }}/docs/{{ .Site.Params.docs_version }}/{{ $versions_link }}{{ end }}">
Latest ({{ .Site.Params.docs_version }}.x)
<svg class="bi"><use xlink:href="#check2"></use></svg>
<svg class="bi" aria-hidden="true"><use xlink:href="#check2"></use></svg>
</a>
</li>
<li>
Expand Down
14 changes: 7 additions & 7 deletions site/layouts/partials/theme-toggler.html
louismaximepiton marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,29 @@
data-bs-toggle="dropdown"
{{ if not $isExamples }}data-bs-display="static"{{ end }}
aria-label="Toggle mode (auto)">
<svg class="bi theme-icon-active"><use href="#ui-auto-mode"></use></svg>
<svg class="bi theme-icon-active" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
<span class="{{ if $isExamples }}visually-hidden{{ else }}d-lg-none ms-2{{ end }}" id="bd-theme-text">Toggle mode</span>
</button>
<ul class="dropdown-menu dropdown-menu-end{{ if $isExamples }} shadow{{ else }} mb-2{{ end }}" aria-labelledby="bd-theme-text">
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
<svg class="bi me-2"><use href="#ui-light-mode"></use></svg>
<svg class="bi me-2" aria-hidden="true"><use href="#ui-light-mode"></use></svg>
Light
<svg class="bi ms-auto d-none"><use href="#check2"></use></svg>
<svg class="bi ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
<svg class="bi me-2"><use href="#ui-dark-mode"></use></svg>
<svg class="bi me-2"><use href="#ui-dark-mode" aria-hidden="true"></use></svg>
Dark
<svg class="bi ms-auto d-none"><use href="#check2"></use></svg>
<svg class="bi ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true">
<svg class="bi me-2"><use href="#ui-auto-mode"></use></svg>
<svg class="bi me-2" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
Auto
<svg class="bi ms-auto d-none"><use href="#check2"></use></svg>
<svg class="bi ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
</ul>
14 changes: 7 additions & 7 deletions site/layouts/shortcodes/orange-global-headers.html
Original file line number Diff line number Diff line change
Expand Up @@ -135,29 +135,29 @@ <h1 class="title">Title</h1>
{{- else if eq $mode "theme" }}
<li class="nav-item dropdown">
<button class="nav-link nav-icon dropdown-toggle" id="bd-theme{{ cond $demo "2" ""}}" aria-expanded="false" data-bs-toggle="dropdown" data-bs-display="static" aria-label="Toggle mode (auto)">
<svg class="theme-icon-active"><use href="#ui-auto-mode"></use></svg>
<svg class="theme-icon-active" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
<span class="d-lg-none ms-2" id="bd-theme-text{{ cond $demo "2" ""}}">Toggle mode</span>
</button>
<ul class="dropdown-menu dropdown-menu-end mb-2" aria-labelledby="bd-theme-text{{ cond $demo "2" ""}}">
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
<svg class="me-2"><use href="#ui-light-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-light-mode"></use></svg>
Light
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
<svg class="me-2"><use href="#ui-dark-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-dark-mode"></use></svg>
Dark
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
<li>
<button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true">
<svg class="me-2"><use href="#ui-auto-mode"></use></svg>
<svg class="me-2" aria-hidden="true"><use href="#ui-auto-mode"></use></svg>
Auto
<svg class="ms-auto d-none"><use href="#check2"></use></svg>
<svg class="ms-auto d-none" aria-hidden="true"><use href="#check2"></use></svg>
</button>
</li>
</ul>
Expand Down
Loading