Skip to content

Commit 124afb4

Browse files
authored
Merge pull request #17602 from rak-phillip/task/16253-skip-to-main-remaining
Add "Skip to main content" link on remaining pages
2 parents 01736fc + 5f0b68d commit 124afb4

3 files changed

Lines changed: 54 additions & 0 deletions

File tree

shell/components/templates/home.vue

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ export default {
6262

6363
<template>
6464
<div class="dashboard-root">
65+
<a
66+
href="#main-content"
67+
class="skip-to-content btn role-primary"
68+
>{{ t('nav.skipToContent') }}</a>
6569
<FixedBanner :header="true" />
6670
<Inactivity />
6771
<AwsComplianceBanner />
@@ -77,8 +81,10 @@ export default {
7781
/>
7882

7983
<main
84+
id="main-content"
8085
class="main-layout"
8186
:aria-label="t('layouts.home')"
87+
tabindex="-1"
8288
>
8389
<router-view
8490
:key="$route.path"
@@ -142,4 +148,16 @@ export default {
142148
padding: 0;
143149
}
144150
}
151+
152+
.skip-to-content {
153+
position: fixed;
154+
top: 0;
155+
left: 0;
156+
z-index: 9999;
157+
transform: translateY(-100%);
158+
159+
&:focus {
160+
transform: translate(1rem, 1rem);
161+
}
162+
}
145163
</style>

shell/components/templates/plain.vue

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ export default {
6666

6767
<template>
6868
<div class="dashboard-root">
69+
<a
70+
href="#main-content"
71+
class="skip-to-content btn role-primary"
72+
>{{ t('nav.skipToContent') }}</a>
6973
<FixedBanner :header="true" />
7074
<AwsComplianceBanner />
7175

@@ -75,8 +79,10 @@ export default {
7579
>
7680
<Header :simple="true" />
7781
<main
82+
id="main-content"
7883
class="main-layout"
7984
:aria-label="t('layouts.plain')"
85+
tabindex="-1"
8086
>
8187
<IndentedPanel class="pt-20">
8288
<router-view
@@ -147,4 +153,16 @@ export default {
147153
padding: 0;
148154
}
149155
}
156+
157+
.skip-to-content {
158+
position: fixed;
159+
top: 0;
160+
left: 0;
161+
z-index: 9999;
162+
transform: translateY(-100%);
163+
164+
&:focus {
165+
transform: translate(1rem, 1rem);
166+
}
167+
}
150168
</style>

shell/pages/fail-whale.vue

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ export default {
6161
6262
<template>
6363
<div class="dashboard-root">
64+
<a
65+
href="#main-content"
66+
class="skip-to-content btn role-primary"
67+
>{{ t('nav.skipToContent') }}</a>
6468
<FixedBanner :header="true" />
6569
<PromptModal />
6670
<div
@@ -73,8 +77,10 @@ export default {
7377
/>
7478
7579
<main
80+
id="main-content"
7681
class="main-layout"
7782
aria-label="Fail whale layout"
83+
tabindex="-1"
7884
>
7985
<div
8086
v-if="error"
@@ -200,4 +206,16 @@ export default {
200206
padding: 0;
201207
}
202208
}
209+
210+
.skip-to-content {
211+
position: fixed;
212+
top: 0;
213+
left: 0;
214+
z-index: 9999;
215+
transform: translateY(-100%);
216+
217+
&:focus {
218+
transform: translate(1rem, 1rem);
219+
}
220+
}
203221
</style>

0 commit comments

Comments
 (0)