summaryrefslogtreecommitdiffstats
path: root/themes/danix-xyz-hacker/assets
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-04-16 15:28:23 +0200
committerDanilo M. <danix@danix.xyz>2026-04-16 15:28:23 +0200
commit15471cdd66966ec394f3b4c1614cac00b0261e59 (patch)
tree8869298c790bed1bc0c8607e389092c517e7c63e /themes/danix-xyz-hacker/assets
parent5b4ba192f8a7d405c7070f0276cd66bff96699dd (diff)
downloaddanixxyz-15471cdd66966ec394f3b4c1614cac00b0261e59.tar.gz
danixxyz-15471cdd66966ec394f3b4c1614cac00b0261e59.zip
feat: add header nav and hamburger menu styling with JS handlers
- Add header, nav-link, header-actions component CSS - Add menu-overlay and menu-nav component CSS - Update hamburger-menu.html with vanilla JS handlers: - openMenu/closeMenu functions - ESC key support - Click outside to close (backdrop click) - Menu link auto-close - Scroll lock when menu open - Replace Alpine @click with id-based event listeners - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Diffstat (limited to 'themes/danix-xyz-hacker/assets')
-rw-r--r--themes/danix-xyz-hacker/assets/css/main.css34
-rw-r--r--themes/danix-xyz-hacker/assets/css/main.min.css34
2 files changed, 68 insertions, 0 deletions
diff --git a/themes/danix-xyz-hacker/assets/css/main.css b/themes/danix-xyz-hacker/assets/css/main.css
index e15d756..50d5284 100644
--- a/themes/danix-xyz-hacker/assets/css/main.css
+++ b/themes/danix-xyz-hacker/assets/css/main.css
@@ -390,6 +390,40 @@ html.theme-light {
@apply flex items-center justify-between gap-4;
}
+ /* Header navigation styling */
+ .header {
+ @apply fixed top-0 left-0 right-0 z-40;
+ }
+
+ .header-nav {
+ @apply hidden md:flex items-center gap-6;
+ }
+
+ .nav-link {
+ @apply text-text hover:text-accent transition-colors;
+ }
+
+ .header-actions {
+ @apply flex items-center gap-4;
+ }
+
+ /* Mobile menu overlay */
+ .menu-overlay {
+ @apply fixed inset-0 bg-bg z-40 opacity-0 invisible transition-all duration-300;
+ }
+
+ .menu-overlay.active {
+ @apply opacity-100 visible;
+ }
+
+ .menu-nav {
+ @apply flex flex-col gap-4 p-6 text-lg font-semibold;
+ }
+
+ .menu-nav a {
+ @apply text-text hover:text-accent transition-colors;
+ }
+
/* Article metadata styling (with icons) */
.article-meta {
@apply flex flex-wrap items-center gap-4 text-sm text-text-dim;
diff --git a/themes/danix-xyz-hacker/assets/css/main.min.css b/themes/danix-xyz-hacker/assets/css/main.min.css
index 122dfcb..fac5cca 100644
--- a/themes/danix-xyz-hacker/assets/css/main.min.css
+++ b/themes/danix-xyz-hacker/assets/css/main.min.css
@@ -1470,6 +1470,40 @@ article.border.border-border\/30.rounded-lg.card.group.bg-bg {
}
}
+/* Header navigation styling */
+
+.header {
+ position: fixed;
+ top: 0px;
+ left: 0px;
+ right: 0px;
+ z-index: 40;
+}
+
+/* Mobile menu overlay */
+
+.menu-overlay {
+ visibility: hidden;
+ position: fixed;
+ inset: 0px;
+ z-index: 40;
+ background-color: var(--bg);
+ opacity: 0;
+ transition-property: all;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-duration: 300ms;
+}
+
+article.border.border-border\/30.rounded-lg.overflow-hidden.group.menu-overlay {
+ border-color: var(--border);
+ box-shadow: 0 0 20px var(--accent-glow);
+}
+
+.menu-overlay.active {
+ visibility: visible;
+ opacity: 1;
+}
+
/* Article metadata styling (with icons) */
/* Hero typography with fluid sizing */