2 Commits

Author SHA1 Message Date
sefaria 4dcd811381 styling secondary; underline hover primary menu 2026-05-25 21:05:08 +02:00
sefaria 9365d7c6f9 adding icon secondary nav with buttons 2026-05-25 20:22:02 +02:00
2 changed files with 95 additions and 5 deletions
+81 -4
View File
@@ -129,6 +129,7 @@
--shadow-light: 0px 2px 8px rgba(0, 0, 0, 0.3), 0px 1px 4px rgba(0, 0, 0, 0.2);
--shadow-dark: 0px 2px 8px rgba(0, 0, 0, 0.5), 0px 1px 4px rgba(0, 0, 0, 0.2);
/* Semantic tokens: contextual usage */
--color-background: light-dark(var(--color-neutral-100), var(--color-neutral-900));
@@ -149,6 +150,8 @@
--color-text-primary: light-dark(var(--color-neutral-900), var(--color-neutral-100));
--color-text-secondary: light-dark(var(--color-neutral-700), var(--color-neutral-400));
--color-text-primary-inverted: light-dark(var(--color-neutral-100), var(--color-neutral-900));
--color-text-secondary-inverted: light-dark(var(--color-neutral-400), var(--color-neutral-700));
--color-primary-button: var(--color-orange-red-500);
--color-primary-button-hover: var(--color-orange-500);
@@ -156,6 +159,7 @@
--color-menu-button: none;
--color-menu-button-hover: light-dark(var(--color-neutral-400), var(--color-neutral-600));
--color-menu-button-active: light-dark(var(--color-neutral-500), var(--color-neutral-700));
--color-text-button: var(--color-neutral-900);
--color-text-button-hover: var(--color-neutral-100);
@@ -351,7 +355,7 @@ a:visited {
text-decoration-thickness: 0.175rem;
}
button, .link-button, .menu-button, .logo {
button, .link-button, .menu-button, .menu-button-secondary, .logo {
appearance: none;
-webkit-appearance: none;
display: inline-flex;
@@ -382,14 +386,20 @@ button, .link-button, .logo, .desktop-nav a[aria-current="page"],
color: var(--color-menu-text-button);
}
.logo {
.menu-button-secondary {
background: var(--color-secondary);
color: var(--color-text-primary-inverted);
box-shadow: var(--shadow-button);
}
.logo, .menu-button-secondary {
padding: 1rem;
aspect-ratio: 1/1;
}
.logo svg {
height: 1.75em;
width: 1.75em;
height: 2em;
width: 2em;
flex: none;
display: block;
}
@@ -401,17 +411,43 @@ button, .link-button, .logo, .desktop-nav a[aria-current="page"],
button:hover, .link-button:hover, .logo:hover, .desktop-nav a[aria-current="page"]:hover, .mobile-menu a[aria-current="page"]:hover {
background: var(--color-primary-button-hover);
color: var(--color-text-button);
text-decoration: none;
}
.menu-button:hover {
background: var(--color-menu-button-hover);
color: var(--color-menu-text-button-hover);
text-decoration: underline;
text-underline-offset: 0.175rem;
text-decoration-thickness: 0.075rem;
transition: 0.2s;
}
.menu-button-secondary:hover {
background: var(--color-secondary-hover);
color: var(--color-text-primary-inverted);
}
button:active, .link-button:active, .logo:active, .desktop-nav a[aria-current="page"]:active, .mobile-menu a[aria-current="page"]:active {
background: var(--color-primary-button-active);
box-shadow: var(--shadow-button-active);
color: var(--color-text-button-active);
text-decoration: none;
}
.menu-button:active {
background: var(--color-menu-button-active);
color: var(--color-menu-text-button-hover);
text-decoration: underline;
text-underline-offset: 0.175rem;
text-decoration-thickness: 0.075rem;
transition: 0.2s;
}
.menu-button-secondary:active {
background: var(--color-secondary-active);
color: var(--color-text-primary);
box-shadow: var(--shadow-button-active);
}
button:visited, .link-button:visited, .logo:visited, .desktop-nav a[aria-current="page"]:visited, .mobile-menu a[aria-current="page"]:visited {
@@ -419,6 +455,11 @@ button:visited, .link-button:visited, .logo:visited, .desktop-nav a[aria-current
text-decoration: none;
}
.menu-button-secondary:visited {
color: var(--color-text-primary);
text-decoration: none;
}
.link-button span {
margin-right: 0.3em;
}
@@ -426,6 +467,19 @@ button:visited, .link-button:visited, .logo:visited, .desktop-nav a[aria-current
/* =======================
Layout styles
======================= */
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
overflow: hidden;
clip: rect(0, 0, 0, 0);
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
#skipLink a {
display: block;
@@ -510,6 +564,29 @@ button:visited, .link-button:visited, .logo:visited, .desktop-nav a[aria-current
}
.desktop-nav-secondary ul {
display: flex;
align-items: stretch;
gap: var(--spacing-3);
margin: 0;
padding: 0;
list-style: none;
}
.desktop-nav-secondary li {
display: flex;
margin: 0;
padding: 0;
}
.desktop-nav-secondary svg {
color: currentcolor;
height: 1em;
width: 1em;
flex: none;
display: block;
}
.menu-toggle,
.menu-close {
width: 44px;
+14 -1
View File
@@ -33,7 +33,8 @@
<div class="menu-bar">
<div class="menu-left">
<a class="logo" href="/">
<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 1080 1080"><path d="M1000.022 50H499.59c-20.565 0-34.827 20.502-27.676 39.783l146.561 395.171c8.419 22.699 40.635 22.382 48.605-.478l61.821-177.315c6.903-19.8 34.906-19.8 41.809 0l61.821 177.315c7.97 22.861 40.187 23.178 48.605.478l146.561-395.171c7.151-19.281-7.112-39.783-27.676-39.783Z"/><path d="M360 538V106c0-30.928-25.072-56-56-56H106c-30.928 0-56 25.072-56 56v868c0 30.928 25.072 56 56 56h868c30.928 0 56-25.072 56-56V650c0-30.928-25.072-56-56-56H416c-30.928 0-56-25.072-56-56"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" aria-hidden="true" focusable="false" viewBox="0 0 1080 1080"><path d="M1000.022 50H499.59c-20.565 0-34.827 20.502-27.676 39.783l146.561 395.171c8.419 22.699 40.635 22.382 48.605-.478l61.821-177.315c6.903-19.8 34.906-19.8 41.809 0l61.821 177.315c7.97 22.861 40.187 23.178 48.605.478l146.561-395.171c7.151-19.281-7.112-39.783-27.676-39.783Z"/><path d="M360 538V106c0-30.928-25.072-56-56-56H106c-30.928 0-56 25.072-56 56v868c0 30.928 25.072 56 56 56h868c30.928 0 56-25.072 56-56V650c0-30.928-25.072-56-56-56H416c-30.928 0-56-25.072-56-56"/></svg>
<span class="visually-hidden">Home page</span>
</a>
<nav class="desktop-nav" aria-label="Primary navigation">
@@ -44,6 +45,18 @@
</ul>
</nav>
</div>
<nav class="desktop-nav-secondary" aria-label="Secondary navigation">
<ul>
<li><a href="#" class="menu-button-secondary">
<svg aria-hidden="true" focusable="false" viewBox="0 0 24 24">
<path fill="currentColor" d="M21 10h-6v12h-2v-6h-2v6H9V10H3V8h18zm-9-8a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5"/>
</svg><span class="visually-hidden">Make the website more visually accessible</span></a></li>
<li><a href="#" class="menu-button-secondary"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24">
<path fill="currentColor" fill-rule="evenodd" d="M5.302 4.574a9.96 9.96 0 0 1 6.697-2.57L12 2l.134.002a10.1 10.1 0 0 1 3.015.507l.223.076q.12.043.24.091.102.038.203.08.117.047.232.1.107.045.213.095.105.05.21.104.116.056.23.117l.153.084q.135.074.27.154.105.064.21.132.091.056.183.115.131.088.261.182l.154.109.21.162q.092.071.185.146l.123.105q.32.268.622.568l.355.373q.51.565.917 1.182l.06.095q.104.16.202.323l.082.145q.076.134.15.27l.085.166q.067.13.13.264.042.09.081.182.063.138.122.279l.049.127q.063.16.12.32.027.075.05.15.051.145.096.292l.058.206a10 10 0 0 1 .173.716l.037.201.044.254a10 10 0 0 1 .081.695 10.3 10.3 0 0 1-.084 2.374 10 10 0 0 1-.13.678 10 10 0 0 1-.184.694 10 10 0 0 1-.148.448q-.046.13-.098.26l-.075.192-.1.233q-.046.106-.095.213l-.104.21-.117.229-.095.171q-.07.127-.143.252-.065.106-.132.21-.058.096-.12.19-.087.128-.178.255l-.108.154q-.08.105-.163.209-.071.094-.145.186l-.105.123a10 10 0 0 1-.94.976q-.375.337-.773.63l-.098.07q-.147.105-.295.205l-.148.095q-.128.083-.258.162l-.163.093q-.127.075-.257.143-.087.046-.175.09-.12.062-.242.12-.102.048-.205.094-.117.052-.236.102l-.175.072a10 10 0 0 1-1.147.372q-.108.03-.218.056a10 10 0 0 1-.293.064l-.146.03a10 10 0 0 1-.294.05l-.187.029q-.135.018-.27.032l-.189.022q-.157.013-.316.022l-.15.01a9.97 9.97 0 0 1-7.162-2.563l-.373-.355c-3.905-3.905-3.905-10.237 0-14.142zm1.041 1.77A8 8 0 0 0 12 20V4a7.98 7.98 0 0 0-5.657 2.343"/>
</svg><span class="visually-hidden">Change light/dark mode</span></a></li>
</ul>
</nav>
<button
class="menu-toggle"