14 Commits

Author SHA1 Message Date
sefaria c588ee102c make overlay blur to adhere to light-dark 2026-06-29 17:22:58 +02:00
sefaria 94b0f34f46 change mobile menu close behaviour to menu toggle 2026-06-29 17:17:36 +02:00
sefaria bb0220c166 change mobile menu styling 2026-06-29 17:16:58 +02:00
sefaria 3583df44ac revert recent changes 2026-06-29 17:10:57 +02:00
sefaria 72d8e7587a Merge branch 'origin/feature/add-menu-bar' 2026-06-29 16:56:35 +02:00
sefaria bfb8fa3b66 change .menu-overlay inset 2026-06-29 16:53:12 +02:00
sefaria f945b360d1 adding --header-offset variable 2026-06-29 16:52:33 +02:00
sefaria 3b1d8ad199 adding --header-offset variable 2026-06-29 16:50:59 +02:00
sefaria b45480d073 removing .mobile-menu__header 2026-06-29 16:49:42 +02:00
sefaria 42e08bdb7e changing mobile menu background blur 2026-06-29 16:42:17 +02:00
sefaria 1ee89a9b1e add latest main css changes 2026-06-15 23:10:53 +02:00
sefaria 09772ff1a5 comment out a:visited style 2026-06-12 12:51:27 +02:00
sefaria 4323fd87c6 change visited style for all buttons 2026-06-12 12:46:19 +02:00
sefaria be51d9da8c More scroll margin for new menu bar 2026-06-12 12:40:14 +02:00
3 changed files with 21 additions and 32 deletions
+20 -23
View File
@@ -190,9 +190,9 @@
--shadow-button-active: inset 0px -1px 2px rgba(0, 0, 0, 0.16), inset 0px 1px 4px rgba(0, 0, 0, 0.28), var(--shadow-box); --shadow-button-active: inset 0px -1px 2px rgba(0, 0, 0, 0.16), inset 0px 1px 4px rgba(0, 0, 0, 0.28), var(--shadow-box);
--border: #d8d8d8; --border: #d8d8d8;
--overlay: rgb(12 12 12 / 0.24); --header-offset: 6.5rem;
--overlay: light-dark(rgb(247 247 247 / 0.8), rgb(18 18 18 / 0.8));
--panel: rgb(255 255 255 / 0.76); --panel: rgb(255 255 255 / 0.76);
} }
*, *,
@@ -208,6 +208,7 @@ html,
body { body {
margin: 0; margin: 0;
background: var(--color-background); background: var(--color-background);
scroll-padding-top: 8rem; /* https://tetralogical.com/blog/2023/06/08/focus-in-view/ */
} }
html { html {
@@ -235,7 +236,6 @@ h4,
h5, h5,
h6, h6,
p { p {
scroll-margin-top: 80px;
width: clamp(min(100%, 40ch), 50ch, min(100%, 60ch)); width: clamp(min(100%, 40ch), 50ch, min(100%, 60ch));
} }
@@ -371,10 +371,10 @@ a:hover {
text-decoration-thickness: 0.175rem; text-decoration-thickness: 0.175rem;
} }
a:visited { /* a:visited {
color: var(--color-primary); color: var(--color-primary);
text-decoration-thickness: 0.175rem; text-decoration-thickness: 0.175rem;
} } */
button, .button-primary, .button-secondary, .menu-button, .logo { button, .button-primary, .button-secondary, .menu-button, .logo {
appearance: none; appearance: none;
@@ -425,6 +425,7 @@ button, .button-primary, .logo {
fill: currentColor; fill: currentColor;
} }
@media (hover: hover) {
button:hover, .button-primary:hover, .button-secondary:hover, .logo:hover { button:hover, .button-primary:hover, .button-secondary:hover, .logo:hover {
text-decoration: none; text-decoration: none;
transform: scale(1.05); transform: scale(1.05);
@@ -439,11 +440,12 @@ button:hover, .button-primary:hover, .logo:hover {
background: var(--color-button-secondary-hover); background: var(--color-button-secondary-hover);
color: var(--color-text-button-secondary-hover); color: var(--color-text-button-secondary-hover);
} }
}
button:active, .button-primary:active, .button-secondary:active, .logo:active { button:active, .button-primary:active, .button-secondary:active, .logo:active {
box-shadow: var(--shadow-button-active); box-shadow: var(--shadow-button-active);
text-decoration: none; text-decoration: none;
transform: scale(1.05); transform: scale(1.00);
} }
button:active, .button-primary:active, .logo:active { button:active, .button-primary:active, .logo:active {
@@ -456,7 +458,7 @@ button:active, .button-primary:active, .logo:active {
color: var(--color-text-button-secondary-active); color: var(--color-text-button-secondary-active);
} }
button:visited, .button-primary:visited, .logo:visited { /* button:visited, .button-primary:visited, .logo:visited {
background: var(--color-button-primary); background: var(--color-button-primary);
color: var(--color-text-button-primary); color: var(--color-text-button-primary);
text-decoration: none; text-decoration: none;
@@ -466,7 +468,7 @@ button:visited, .button-primary:visited, .logo:visited {
background: var(--color-button-secondary); background: var(--color-button-secondary);
color: var(--color-text-button-secondary); color: var(--color-text-button-secondary);
text-decoration: none; text-decoration: none;
} } */
.button-primary span { .button-primary span {
margin-right: 0.3em; margin-right: 0.3em;
@@ -485,7 +487,7 @@ button:visited, .button-primary:visited, .logo:visited {
position: sticky; position: sticky;
top: 0; top: 0;
padding-top: max(1px, env(safe-area-inset-top)); padding-top: max(1px, env(safe-area-inset-top));
z-index: 100; z-index: 400;
background-image: linear-gradient( background-image: linear-gradient(
180deg, 180deg,
light-dark(var(--gradient-stop-1-light), var(--gradient-stop-1-dark)) 0%, light-dark(var(--gradient-stop-1-light), var(--gradient-stop-1-dark)) 0%,
@@ -496,6 +498,9 @@ button:visited, .button-primary:visited, .logo:visited {
76%, 76%,
light-dark(var(--gradient-stop-4-light), var(--gradient-stop-4-dark)) 100% light-dark(var(--gradient-stop-4-light), var(--gradient-stop-4-dark)) 100%
); );
/* background: rgb(255 255 255 / 0.88); */
/* backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px); */
} }
.menu-bar { .menu-bar {
@@ -609,16 +614,12 @@ button:visited, .button-primary:visited, .logo:visited {
transition: transform 0.25s ease, opacity 0.25s ease; transition: transform 0.25s ease, opacity 0.25s ease;
} }
.menu-toggle.is-open {
opacity: 0;
}
.menu-overlay { .menu-overlay {
position: fixed; position: fixed;
inset: 0; inset: 0;
background: var(--overlay); background: var(--overlay);
backdrop-filter: blur(10px); backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(6px);
opacity: 0; opacity: 0;
pointer-events: none; pointer-events: none;
transition: opacity 0.25s ease; transition: opacity 0.25s ease;
@@ -627,7 +628,10 @@ button:visited, .button-primary:visited, .logo:visited {
.mobile-menu { .mobile-menu {
position: fixed; position: fixed;
inset: auto 1rem 1rem 1rem; top: 6.5rem;
right: 1rem;
bottom: 1rem;
left: 1rem;
width: auto; width: auto;
max-width: 24rem; max-width: 24rem;
margin-inline: auto; margin-inline: auto;
@@ -645,13 +649,6 @@ button:visited, .button-primary:visited, .logo:visited {
z-index: 300; z-index: 300;
} }
.mobile-menu__header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 1rem;
}
.mobile-menu ul { .mobile-menu ul {
display: grid; display: grid;
gap: 0.5rem; gap: 0.5rem;
-6
View File
@@ -86,12 +86,6 @@
aria-label="Mobile navigation" aria-label="Mobile navigation"
aria-hidden="true" aria-hidden="true"
> >
<div class="mobile-menu__header">
<strong>Menu</strong>
<button class="menu-close" id="menuClose" type="button" aria-label="Close menu">
Close
</button>
</div>
<nav aria-label="Mobile navigation"> <nav aria-label="Mobile navigation">
<ul> <ul>
+1 -3
View File
@@ -2,7 +2,6 @@
const body = document.body; const body = document.body;
const menuToggle = document.getElementById('menuToggle'); const menuToggle = document.getElementById('menuToggle');
const menuClose = document.getElementById('menuClose');
const menuOverlay = document.getElementById('menuOverlay'); const menuOverlay = document.getElementById('menuOverlay');
const mobileMenu = document.getElementById('mobileMenu'); const mobileMenu = document.getElementById('mobileMenu');
const siteContent = document.getElementById('siteContent'); const siteContent = document.getElementById('siteContent');
@@ -15,7 +14,7 @@
menuToggle.setAttribute('aria-label', 'Close menu'); menuToggle.setAttribute('aria-label', 'Close menu');
mobileMenu.setAttribute('aria-hidden', 'false'); mobileMenu.setAttribute('aria-hidden', 'false');
siteContent.setAttribute('inert', ''); siteContent.setAttribute('inert', '');
menuClose.focus(); menuToggle.focus();
} }
function closeMenu() { function closeMenu() {
@@ -43,7 +42,6 @@
} }
menuToggle.addEventListener('click', toggleMenu); menuToggle.addEventListener('click', toggleMenu);
menuClose.addEventListener('click', closeMenu);
menuOverlay.addEventListener('click', closeMenu); menuOverlay.addEventListener('click', closeMenu);
document.addEventListener('keydown', (event) => { document.addEventListener('keydown', (event) => {