fix: Mobile hamburger menu and iPad sidebar visibility
Mobile fixes: - Add click toggle handler for hamburger menu (was hover-only) - Menu now opens/closes on tap and closes when clicking outside - Keep hover support for desktop iPad fixes: - Sidebar content now visible on touch devices (901-1280px) - Added (hover: hover) media query to prevent hide-on-hover on tablets Security improvements: - Replace exec.CommandContext with go-git library for git operations - Add path traversal and command injection prevention - Fix race condition in template hot reload - Add environment-based cookie Secure flag Code quality: - Add constants.go for magic numbers - Remove unused code (ParsePreferenceToggleRequest, DomainError) - Add FOUC prevention with inline critical CSS - Add Makefile dev/run/clean targets - Fix README git clone URL - Add doc/DECISIONS.md for architectural decisions Tests: - Add hamburger menu click toggle tests - Add iPad sidebar visibility tests - Update security tests for go-git implementation - Add cookie Secure flag tests
This commit is contained in:
@@ -104,11 +104,20 @@
|
||||
gap: 0.5rem;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* ========================================
|
||||
Sidebar Hide-on-Hover: ONLY for devices with hover support
|
||||
Prevents hiding on iPad/tablets where hover doesn't work
|
||||
======================================== */
|
||||
@media (min-width: 901px) and (max-width: 1280px) and (hover: hover) {
|
||||
/* ========== Sidebar Content - Hide Text, Show on Hover ========== */
|
||||
/* Only apply on devices that support hover (not touch devices) */
|
||||
.sidebar-content {
|
||||
max-height: 0 !important;
|
||||
overflow: hidden !important;
|
||||
opacity: 0 !important;
|
||||
transition: max-height 0.3s ease, opacity 0.3s ease;
|
||||
}
|
||||
|
||||
/* Show sidebar content on hover */
|
||||
@@ -221,21 +230,6 @@
|
||||
padding: 0.65rem 1.5rem;
|
||||
gap: 0.5rem;
|
||||
}
|
||||
|
||||
/* ========== Sidebar Content - Hide Text, Show on Hover ========== */
|
||||
.sidebar-content {
|
||||
max-height: 0 !important;
|
||||
overflow: hidden !important;
|
||||
opacity: 0 !important;
|
||||
}
|
||||
|
||||
/* Show sidebar content on hover */
|
||||
.skill-category:hover .sidebar-content,
|
||||
.cv-sidebar-section:hover .sidebar-content {
|
||||
max-height: 1000px !important;
|
||||
opacity: 1 !important;
|
||||
margin-top: 10px !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* ========================================
|
||||
|
||||
Reference in New Issue
Block a user