Add header

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-08-06 01:21:42 +02:00
parent 94733181ba
commit a3f3795ba7
9 changed files with 323 additions and 0 deletions

123
assets/sass/header.scss Normal file
View File

@@ -0,0 +1,123 @@
.header {
padding: 2rem;
.header-container {
max-width: $maxwidth;
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
.site-title {
font-size: 1.5rem;
a {
text-decoration: none;
color: inherit;
}
}
.nav {
ul {
display: flex;
gap: 2.5rem;
margin: 0;
padding: 0;
list-style: none;
li a {
font-size: 0.85rem;
text-decoration: none;
color: inherit;
display: block;
}
}
}
.nav-toggle {
display: none;
}
.nav-toggle-label {
display: none;
}
}
}
@media (max-width: $mobilewidth) {
.header {
padding: 1rem;
.header-container {
.site-title {
z-index: 1;
}
.nav {
position: fixed;
inset: 0;
display: flex;
flex-direction: column;
justify-content: center;
opacity: 0;
background: $color-bg;
transition: opacity 0.3s ease;
pointer-events: none;
ul {
flex-direction: column;
align-items: center;
gap: 2rem;
li a {
font-size: 1.25rem;
}
}
}
.nav-toggle-label {
z-index: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
width: 1.5rem;
height: 0.75rem;
cursor: pointer;
span {
display: block;
height: 0.125rem;
width: 100%;
border-radius: 1px;
background: currentColor;
transition:
transform 0.3s ease,
opacity 0.3s ease;
}
span+span {
margin-top: 0.25rem;
}
}
.nav-toggle:checked+.nav-toggle-label+.nav {
opacity: 1;
pointer-events: auto;
}
.nav-toggle:checked+.nav-toggle-label span:nth-child(1) {
transform: translateY(0.3rem) rotate(45deg);
}
.nav-toggle:checked+.nav-toggle-label span:nth-child(2) {
transform: translateY(-0.3rem) rotate(-45deg);
}
}
}
}

11
assets/sass/main.scss Normal file
View File

@@ -0,0 +1,11 @@
@import "variables";
html {
font-size: 100%;
font-family:
system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif,
"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
line-height: 1.5;
}
@import "header";

View File

@@ -0,0 +1,5 @@
$mobilewidth: 32rem;
$contentwidth: 48rem;
$maxwidth: 60rem;
$color-bg: white;