can please fix the styling in this for header
Browse files- components/navbar.js +42 -25
components/navbar.js
CHANGED
|
@@ -5,43 +5,60 @@ class CustomNavbar extends HTMLElement {
|
|
| 5 |
<style>
|
| 6 |
:host {
|
| 7 |
display: block;
|
| 8 |
-
z-index:
|
| 9 |
--navbar-height: 80px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
}
|
| 11 |
nav {
|
| 12 |
-
backdrop-filter: blur(
|
| 13 |
-
|
| 14 |
-
|
|
|
|
|
|
|
| 15 |
}
|
| 16 |
.nav-link {
|
| 17 |
position: relative;
|
| 18 |
-
transition: all 0.3s
|
|
|
|
|
|
|
|
|
|
| 19 |
}
|
| 20 |
.nav-link::after {
|
| 21 |
content: '';
|
| 22 |
position: absolute;
|
| 23 |
-
bottom:
|
| 24 |
left: 50%;
|
| 25 |
transform: translateX(-50%);
|
| 26 |
width: 0;
|
| 27 |
-
height:
|
| 28 |
-
background:
|
| 29 |
-
|
|
|
|
|
|
|
| 30 |
}
|
| 31 |
.nav-link:hover::after,
|
| 32 |
.nav-link.active::after {
|
| 33 |
-
width:
|
| 34 |
-
|
| 35 |
-
.nav-link:hover {
|
| 36 |
-
color: white;
|
| 37 |
}
|
|
|
|
| 38 |
.nav-link.active {
|
| 39 |
-
color:
|
| 40 |
}
|
| 41 |
.mobile-menu {
|
| 42 |
-
transition: all 0.3s
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 43 |
}
|
| 44 |
-
|
| 45 |
<nav class="sticky top-0 z-50 w-full">
|
| 46 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 47 |
<div class="flex items-center justify-between h-[var(--navbar-height)]">
|
|
@@ -80,9 +97,9 @@ class CustomNavbar extends HTMLElement {
|
|
| 80 |
<!-- Auth Buttons -->
|
| 81 |
<div class="hidden md:block">
|
| 82 |
<div class="ml-4 flex items-center space-x-4">
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
<a href="/register" class="bg-gradient-to-r from-purple-500 to-blue-500 hover:from-purple-600 hover:to-blue-600 text-white px-4 py-2 rounded-lg text-sm font-medium transition-all duration-300">Get Started</a>
|
| 86 |
</div>
|
| 87 |
</div>
|
| 88 |
|
|
@@ -104,15 +121,15 @@ class CustomNavbar extends HTMLElement {
|
|
| 104 |
<div class="md:hidden hidden absolute top-[var(--navbar-height)] left-0 right-0 bg-gray-900/95 backdrop-blur-md" id="mobile-menu">
|
| 105 |
<div class="px-4 py-6 space-y-6">
|
| 106 |
<a href="/" class="block px-3 py-3 rounded-lg text-lg font-medium bg-gradient-to-r from-purple-900/30 to-blue-900/30">Home</a>
|
| 107 |
-
<a href="/plan" class="block px-3 py-3 rounded-lg text-lg font-medium hover:bg-gray-800">Plans</a>
|
| 108 |
-
<a href="/contact" class="block px-3 py-3 rounded-lg text-lg font-medium hover:bg-gray-800">Contact</a>
|
| 109 |
-
<a href="/about" class="block px-3 py-3 rounded-lg text-lg font-medium hover:bg-gray-800">About Us</a>
|
| 110 |
-
|
| 111 |
<div class="px-4 py-6 border-t border-gray-800">
|
| 112 |
<div class="grid gap-4">
|
| 113 |
<a href="/login" class="w-full bg-gray-800 hover:bg-gray-700 text-white px-6 py-3 rounded-lg text-center font-medium">Sign In</a>
|
| 114 |
-
<a href="/register" class="w-full bg-gradient-to-r from-purple-500 to-blue-500 hover:from-purple-600 hover:to-blue-600 text-white px-6 py-3 rounded-lg text-center font-medium shadow-lg hover:shadow-xl">Register</a>
|
| 115 |
-
|
| 116 |
</div>
|
| 117 |
</div>
|
| 118 |
</nav>
|
|
|
|
| 5 |
<style>
|
| 6 |
:host {
|
| 7 |
display: block;
|
| 8 |
+
z-index: 1000;
|
| 9 |
--navbar-height: 80px;
|
| 10 |
+
--nav-bg: rgba(15, 23, 42, 0.98);
|
| 11 |
+
--nav-border: rgba(45, 55, 72, 0.5);
|
| 12 |
+
--text-primary: #e2e8f0;
|
| 13 |
+
--text-secondary: #94a3b8;
|
| 14 |
+
--accent-gradient: linear-gradient(to right, #8b5cf6, #3b82f6);
|
| 15 |
}
|
| 16 |
nav {
|
| 17 |
+
backdrop-filter: blur(16px);
|
| 18 |
+
-webkit-backdrop-filter: blur(16px);
|
| 19 |
+
background: var(--nav-bg);
|
| 20 |
+
border-bottom: 1px solid var(--nav-border);
|
| 21 |
+
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
| 22 |
}
|
| 23 |
.nav-link {
|
| 24 |
position: relative;
|
| 25 |
+
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
| 26 |
+
color: var(--text-secondary);
|
| 27 |
+
font-weight: 500;
|
| 28 |
+
letter-spacing: 0.025em;
|
| 29 |
}
|
| 30 |
.nav-link::after {
|
| 31 |
content: '';
|
| 32 |
position: absolute;
|
| 33 |
+
bottom: -4px;
|
| 34 |
left: 50%;
|
| 35 |
transform: translateX(-50%);
|
| 36 |
width: 0;
|
| 37 |
+
height: 3px;
|
| 38 |
+
background: var(--accent-gradient);
|
| 39 |
+
border-radius: 2px;
|
| 40 |
+
transition: width 0.3s ease, opacity 0.3s ease;
|
| 41 |
+
opacity: 0;
|
| 42 |
}
|
| 43 |
.nav-link:hover::after,
|
| 44 |
.nav-link.active::after {
|
| 45 |
+
width: 80%;
|
| 46 |
+
opacity: 1;
|
|
|
|
|
|
|
| 47 |
}
|
| 48 |
+
.nav-link:hover,
|
| 49 |
.nav-link.active {
|
| 50 |
+
color: var(--text-primary);
|
| 51 |
}
|
| 52 |
.mobile-menu {
|
| 53 |
+
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
| 54 |
+
animation: fadeIn 0.2s ease-out;
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
@keyframes fadeIn {
|
| 58 |
+
from { opacity: 0; transform: translateY(-10px); }
|
| 59 |
+
to { opacity: 1; transform: translateY(0); }
|
| 60 |
}
|
| 61 |
+
</style>
|
| 62 |
<nav class="sticky top-0 z-50 w-full">
|
| 63 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 64 |
<div class="flex items-center justify-between h-[var(--navbar-height)]">
|
|
|
|
| 97 |
<!-- Auth Buttons -->
|
| 98 |
<div class="hidden md:block">
|
| 99 |
<div class="ml-4 flex items-center space-x-4">
|
| 100 |
+
<a href="/login" class="text-gray-400 hover:text-white px-3 py-2 text-sm font-medium transition-colors duration-300">Sign In</a>
|
| 101 |
+
<darkmode-toggle></darkmode-toggle>
|
| 102 |
+
<a href="/register" class="bg-gradient-to-r from-purple-500 to-blue-500 hover:from-purple-600 hover:to-blue-600 text-white px-4 py-2 rounded-lg text-sm font-medium transition-all duration-300 shadow-md hover:shadow-lg hover:scale-[1.03] transform transition-transform">Get Started</a>
|
| 103 |
</div>
|
| 104 |
</div>
|
| 105 |
|
|
|
|
| 121 |
<div class="md:hidden hidden absolute top-[var(--navbar-height)] left-0 right-0 bg-gray-900/95 backdrop-blur-md" id="mobile-menu">
|
| 122 |
<div class="px-4 py-6 space-y-6">
|
| 123 |
<a href="/" class="block px-3 py-3 rounded-lg text-lg font-medium bg-gradient-to-r from-purple-900/30 to-blue-900/30">Home</a>
|
| 124 |
+
<a href="/plan" class="block px-3 py-3 rounded-lg text-lg font-medium transition-colors duration-300 hover:bg-gray-800 hover:text-white">Plans</a>
|
| 125 |
+
<a href="/contact" class="block px-3 py-3 rounded-lg text-lg font-medium transition-colors duration-300 hover:bg-gray-800 hover:text-white">Contact</a>
|
| 126 |
+
<a href="/about" class="block px-3 py-3 rounded-lg text-lg font-medium transition-colors duration-300 hover:bg-gray-800 hover:text-white">About Us</a>
|
| 127 |
+
</div>
|
| 128 |
<div class="px-4 py-6 border-t border-gray-800">
|
| 129 |
<div class="grid gap-4">
|
| 130 |
<a href="/login" class="w-full bg-gray-800 hover:bg-gray-700 text-white px-6 py-3 rounded-lg text-center font-medium">Sign In</a>
|
| 131 |
+
<a href="/register" class="w-full bg-gradient-to-r from-purple-500 to-blue-500 hover:from-purple-600 hover:to-blue-600 text-white px-6 py-3 rounded-lg text-center font-medium shadow-lg hover:shadow-xl transform transition-transform hover:scale-[1.02]">Register</a>
|
| 132 |
+
</div>
|
| 133 |
</div>
|
| 134 |
</div>
|
| 135 |
</nav>
|