Skip to content

Commit e5766d5

Browse files
committed
Improve menu focus visibility.
1 parent b6fb7cc commit e5766d5

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

src/components/Header.astro

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,23 @@ import links from "../data/links.json";
5050
let prevScrollPos = window.pageYOffset;
5151
const navbar = document.getElementById("navbar") as HTMLElement;
5252

53-
window.onscroll = function () {
53+
window.addEventListener("scroll", () => {
5454
let currentScrollPos = window.pageYOffset;
5555
if (prevScrollPos > currentScrollPos) {
5656
navbar.style.transform = "translateY(0)";
5757
} else {
5858
navbar.style.transform = "translateY(-100%)";
5959
}
6060
prevScrollPos = currentScrollPos;
61-
};
61+
});
62+
63+
navbar.addEventListener("focusin", () => {
64+
navbar.style.transform = "translateY(0)";
65+
});
66+
67+
navbar.addEventListener("focusout", () => {
68+
if (window.pageYOffset > 100) {
69+
navbar.style.transform = "translateY(-100%)";
70+
}
71+
});
6272
</script>

src/components/NavItems.astro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,9 +184,9 @@ const { items, inverted = false, level = 1 } = Astro.props;
184184

185185
/* Focus styles for keyboard navigation */
186186
[role="menuitem"]:focus-visible {
187-
outline: 2px solid white;
187+
outline: 2px solid #3583E2;
188188
outline-offset: -2px;
189-
border-radius: 4px;
189+
border-radius: 50%;
190190
}
191191

192192
/* Hide outline for mouse users, but keep for keyboard */

src/layouts/Layout.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ const externalDomain = new URL(Astro.site || "").hostname;
8383

8484
@media screen and (width>1200px){
8585
main {
86-
margin-bottom:700px;
86+
margin-bottom:800px;
8787
}
8888
footer {
8989
position: fixed;

0 commit comments

Comments
 (0)