theme toggle problems

This commit is contained in:
ben7sys
2024-11-17 06:49:19 +01:00
parent 4330dfe0c7
commit d4f33346ed
2 changed files with 41 additions and 0 deletions

View File

@@ -11,6 +11,7 @@
<a href="#services" id="expertise-link">Expertise</a> <a href="#services" id="expertise-link">Expertise</a>
<a href="#contact" id="contact-link">Kontakt</a> <a href="#contact" id="contact-link">Kontakt</a>
<button class="theme-toggle" aria-label="Theme Toggle"> <button class="theme-toggle" aria-label="Theme Toggle">
<i class="fas fa-sun"></i>
<i class="fas fa-moon"></i> <i class="fas fa-moon"></i>
</button> </button>
</nav> </nav>

View File

@@ -71,10 +71,15 @@ header {
justify-content: center; justify-content: center;
transition: var(--theme-transition); transition: var(--theme-transition);
border-radius: var(--border-radius); border-radius: var(--border-radius);
position: relative;
width: 40px;
height: 40px;
margin-left: var(--spacing-sm);
} }
.theme-toggle:hover { .theme-toggle:hover {
color: var(--primary); color: var(--primary);
background-color: var(--bg-card);
} }
.theme-toggle:focus-visible { .theme-toggle:focus-visible {
@@ -83,6 +88,41 @@ header {
border-radius: var(--border-radius); border-radius: var(--border-radius);
} }
.theme-toggle i {
font-size: 1.2rem;
position: absolute;
transition: opacity var(--transition-speed) ease,
transform var(--transition-speed) ease;
transform: var(--gpu-accelerated);
}
/* Light Theme Icon States */
[data-theme="light"] .theme-toggle .fa-moon {
opacity: 1;
transform: rotate(0) var(--gpu-accelerated);
}
[data-theme="light"] .theme-toggle .fa-sun {
opacity: 0;
transform: rotate(-90deg) var(--gpu-accelerated);
}
/* Dark Theme Icon States */
[data-theme="dark"] .theme-toggle .fa-moon {
opacity: 0;
transform: rotate(90deg) var(--gpu-accelerated);
}
[data-theme="dark"] .theme-toggle .fa-sun {
opacity: 1;
transform: rotate(0) var(--gpu-accelerated);
}
/* Hover Animation */
.theme-toggle:hover i {
transform: rotate(15deg) var(--gpu-accelerated);
}
.mobile-menu-toggle { .mobile-menu-toggle {
display: none; display: none;
background: none; background: none;