Partials OK, auto navbar and content
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
#app {
|
||||
margin: 0;
|
||||
padding: 1em 0;
|
||||
display: grid;
|
||||
grid-template-columns: auto 1fr;
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
#app > nav {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
#app > nav > a {
|
||||
padding: 0.25em 0.5em;
|
||||
}
|
||||
|
||||
#app > nav > a::before {
|
||||
left: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
width: 2px;
|
||||
height: auto;
|
||||
right: unset;
|
||||
transform: scaleY(0);
|
||||
transform-origin: bottom;
|
||||
}
|
||||
|
||||
#app > nav > a:focus::before, #app > nav > a:hover::before {
|
||||
transform: scaleY(1);
|
||||
transform-origin: top;
|
||||
}
|
||||
|
||||
#app > nav > a[data-current="true"] {
|
||||
background-color: color-mix(
|
||||
in srgb,
|
||||
light-dark(
|
||||
var(--light-accent-color),
|
||||
var(--dark-accent-color)
|
||||
) 10%,
|
||||
transparent
|
||||
);
|
||||
}
|
||||
|
||||
#app > nav > a[data-current="true"]::before {
|
||||
transform: scaleY(1);
|
||||
transform-origin: top;
|
||||
}
|
||||
+96
-87
@@ -1,87 +1,96 @@
|
||||
:root {
|
||||
color-scheme: dark;
|
||||
|
||||
--dark-background-color: rgb(30, 30, 42);
|
||||
--dark-background-color-ui: rgb(50, 50, 62);
|
||||
--dark-foreground: rgb(241, 241, 255);
|
||||
--dark-foreground-dim: rgb(171, 171, 179);
|
||||
|
||||
--light-background-color: rgb(225, 225, 237);
|
||||
--light-background-color-ui: rgb(241, 241, 255);
|
||||
--light-foreground: rgb(30, 30, 42);
|
||||
--light-foreground-dim: rgb(105, 105, 110);
|
||||
|
||||
--dark-accent-color: rgb(84, 174, 219);
|
||||
--light-accent-color: rgb(0, 109, 163);
|
||||
|
||||
--loader-size: 0.5em;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
font-family: "Jetbrains Mono";
|
||||
}
|
||||
|
||||
html, body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body {
|
||||
min-height: 100dvh;
|
||||
display: grid;
|
||||
grid-template-rows: auto 1fr auto;
|
||||
background-color: light-dark(var(--light-background-color), var(--dark-background-color));
|
||||
color: light-dark(var(--light-foreground), var(--dark-foreground));
|
||||
}
|
||||
|
||||
header {
|
||||
padding: 0.5em 2em;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
header > nav {
|
||||
display: flex;
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
footer {
|
||||
padding: 0.5em;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
color: light-dark(var(--light-foreground-dim), var(--dark-foreground-dim));
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
section {
|
||||
margin: 0 1.5em;
|
||||
padding: 0.5em 1.5em;
|
||||
background-color: light-dark(var(--light-background-color-ui), var(--dark-background-color-ui));
|
||||
border-radius: 0.5em;
|
||||
}
|
||||
|
||||
a {
|
||||
position: relative;
|
||||
text-decoration: none;
|
||||
color: light-dark(var(--light-accent-color), var(--dark-accent-color));
|
||||
}
|
||||
|
||||
a::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
height: 2px;
|
||||
background-color: light-dark(var(--light-accent-color), var(--dark-accent-color));
|
||||
transform-origin: right;
|
||||
transform: scaleX(0);
|
||||
transition: transform 100ms ease-in-out;
|
||||
}
|
||||
|
||||
a:focus::before, a:hover::before {
|
||||
transform-origin: left;
|
||||
transform: scaleX(1);
|
||||
}
|
||||
:root {
|
||||
color-scheme: light;
|
||||
|
||||
--dark-background-color: rgb(30, 30, 42);
|
||||
--dark-background-color-ui: rgb(50, 50, 62);
|
||||
--dark-foreground: rgb(241, 241, 255);
|
||||
--dark-foreground-dim: rgb(171, 171, 179);
|
||||
|
||||
--light-background-color: rgb(225, 225, 237);
|
||||
--light-background-color-ui: rgb(241, 241, 255);
|
||||
--light-foreground: rgb(30, 30, 42);
|
||||
--light-foreground-dim: rgb(105, 105, 110);
|
||||
|
||||
--dark-accent-color: rgb(84, 174, 219);
|
||||
--light-accent-color: rgb(0, 109, 163);
|
||||
|
||||
--loader-size: 0.5em;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
font-family: "Jetbrains Mono";
|
||||
}
|
||||
|
||||
html, body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body {
|
||||
min-height: 100dvh;
|
||||
display: grid;
|
||||
grid-template-rows: auto 1fr auto;
|
||||
background-color: light-dark(
|
||||
var(--light-background-color),
|
||||
var(--dark-background-color)
|
||||
);
|
||||
color: light-dark(var(--light-foreground), var(--dark-foreground));
|
||||
}
|
||||
|
||||
header {
|
||||
padding: 0.5em 2em;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
header > nav {
|
||||
display: flex;
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
footer {
|
||||
padding: 0.5em;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
color: light-dark(var(--light-foreground-dim), var(--dark-foreground-dim));
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
section {
|
||||
margin: 0 1.5em;
|
||||
padding: 0.5em 1.5em;
|
||||
background-color: light-dark(
|
||||
var(--light-background-color-ui),
|
||||
var(--dark-background-color-ui)
|
||||
);
|
||||
border-radius: 0.5em;
|
||||
}
|
||||
|
||||
a {
|
||||
position: relative;
|
||||
text-decoration: none;
|
||||
color: light-dark(var(--light-accent-color), var(--dark-accent-color));
|
||||
}
|
||||
|
||||
a::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
height: 2px;
|
||||
background-color: light-dark(
|
||||
var(--light-accent-color),
|
||||
var(--dark-accent-color)
|
||||
);
|
||||
transform-origin: right;
|
||||
transform: scaleX(0);
|
||||
transition: transform 100ms ease-in-out;
|
||||
}
|
||||
|
||||
a:focus::before, a:hover::before {
|
||||
transform-origin: left;
|
||||
transform: scaleX(1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user