preliminary work for old theme re-implementation
This commit is contained in:
parent
ee8bce1bd3
commit
8fc7eff67b
41 changed files with 456 additions and 415 deletions
45
_src/assets/css/citrus/citrus.css
Normal file
45
_src/assets/css/citrus/citrus.css
Normal file
|
@ -0,0 +1,45 @@
|
|||
@import url("./variables.css");
|
||||
@import url("../default/variables.css");
|
||||
@import url("./nav.css");
|
||||
|
||||
body {
|
||||
background-attachment: local, fixed;
|
||||
background-color: var(--citrus-primary);
|
||||
background-image: var(--checker),
|
||||
linear-gradient(var(--citrus-primary), var(--citrus-secondary));
|
||||
background-size: 32px, contain;
|
||||
}
|
||||
body > nav {
|
||||
background-attachment: fixed;
|
||||
background-blend-mode: screen;
|
||||
background-image: var(--dot),
|
||||
linear-gradient(var(--citrus-primary), var(--citrus-secondary) 20%);
|
||||
background-size: 6px;
|
||||
& a,
|
||||
button {
|
||||
background-image: linear-gradient(
|
||||
var(--citrus-light),
|
||||
var(--citrus-primary) 20%,
|
||||
var(--citrus-primary) 80%,
|
||||
var(--citrus-light) 100%
|
||||
);
|
||||
border-radius: 0 1rem 1rem 0;
|
||||
box-shadow: 0 0 0 2px var(--citrus-dark),
|
||||
inset 0 0 8px 2px var(--citrus-primary);
|
||||
color: var(--citrus-dark) !important;
|
||||
margin: 0 0 var(--pad-sm) 0 !important;
|
||||
&[aria-current] {
|
||||
background-image: linear-gradient(
|
||||
darkorange,
|
||||
var(--citrus-dark) 10%,
|
||||
chocolate
|
||||
);
|
||||
box-shadow: 0 0 0 2px var(--citrus-dark),
|
||||
inset 0 0 4px 2px var(--citrus-dark);
|
||||
color: var(--citrus-light) !important;
|
||||
}
|
||||
&:is(:hover, :focus):not([aria-current="page"]) {
|
||||
box-shadow: 0 0 0 2px var(--citrus-dark);
|
||||
}
|
||||
}
|
||||
}
|
12
_src/assets/css/citrus/nav.css
Normal file
12
_src/assets/css/citrus/nav.css
Normal file
|
@ -0,0 +1,12 @@
|
|||
nav {
|
||||
padding: 0 var(--pad-xl) var(--pad-xl) 0 !important;
|
||||
& ul {
|
||||
margin: 0 !important;
|
||||
}
|
||||
& details {
|
||||
border: 0 !important;
|
||||
}
|
||||
& a, button {
|
||||
border: 0 !important;
|
||||
}
|
||||
}
|
10
_src/assets/css/citrus/variables.css
Normal file
10
_src/assets/css/citrus/variables.css
Normal file
|
@ -0,0 +1,10 @@
|
|||
:root {
|
||||
--citrus-primary: rgb(255, 190, 0);
|
||||
--citrus-secondary: rgb(255, 110, 0);
|
||||
--citrus-light: rgb(255, 236, 180);
|
||||
--citrus-dark: rgb(105, 50, 0);
|
||||
--checker: url('/assets/img/theme/citrus/checker.png');
|
||||
--checker-dark: url('/assets/img/theme/citrus/checker-dark.png');
|
||||
--dot: url('/assets/img/theme/citrus/dot.png');
|
||||
--dot-dark: url('/assets/img/theme/citrus/dot-dark.png');
|
||||
}
|
|
@ -15,37 +15,31 @@ article {
|
|||
border-radius: var(--round);
|
||||
width: 66%;
|
||||
}
|
||||
& p[aria-label="Post warning"] {
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
border-radius: var(--pad-sm);
|
||||
padding: var(--pad-sm) 0;
|
||||
& [aria-label="Post warning"] {
|
||||
font-size: 1.4rem;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
|
||||
font-family: monospace;
|
||||
&::before,
|
||||
&::after {
|
||||
content: "⚠️";
|
||||
content: "";
|
||||
display: inherit;
|
||||
border-width: 2px;
|
||||
border-style: dashed;
|
||||
}
|
||||
}
|
||||
|
||||
& aside,
|
||||
[aria-label="Addendum"] {
|
||||
margin: var(--pad-l) 0;
|
||||
}
|
||||
[aria-label="Addendum"], [aria-label="Post warning"], article aside {
|
||||
margin: var(--pad-l) 0;
|
||||
padding: var(--pad-l);
|
||||
}
|
||||
article > [aria-label="Addendum"] {
|
||||
border-image-slice: 1;
|
||||
border-image-width: 2px;
|
||||
border-image-outset: 4px;
|
||||
padding: var(--pad-l);
|
||||
}
|
||||
}
|
||||
|
||||
article > [aria-label="Addendum"] {
|
||||
& > p:first-child {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-block-start: 0;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -119,7 +113,6 @@ article > [aria-label="Postscript"] {
|
|||
gap: var(--pad-l);
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
& li p {
|
|
@ -1,8 +1,6 @@
|
|||
@import url("/assets/css/variables.css");
|
||||
@import url("/assets/css/nav.css");
|
||||
@import url("/assets/css/theme-light.css");
|
||||
@import url("/assets/css/theme-dark.css");
|
||||
@import url("/assets/css/mobile.css");
|
||||
@import url("./variables.css");
|
||||
@import url("./nav.css");
|
||||
@import url("./mobile.css");
|
||||
:root {
|
||||
--view: 18rem;
|
||||
}
|
||||
|
@ -12,13 +10,16 @@ body {
|
|||
font-size: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
& a {
|
||||
transition: background-color var(--trans), border-color var(--trans), color var(--trans);
|
||||
& a, button {
|
||||
&:is(:hover, :focus) {
|
||||
outline: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
main {
|
||||
padding: var(--pad-xl) var(--pad-xl) 4rem calc(var(--view) + var(--pad-xl));
|
||||
padding: var(--pad-xl);
|
||||
padding-left: calc(var(--view) + var(--pad-xl));
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
|
@ -31,6 +32,12 @@ article {
|
|||
& a {
|
||||
font-weight: 500;
|
||||
}
|
||||
& a:has(figure) {
|
||||
border-radius: var(--round);
|
||||
& figure {
|
||||
border-color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
& s {
|
||||
text-decoration-style: line-through;
|
||||
|
@ -40,7 +47,6 @@ article {
|
|||
& ul {
|
||||
& li {
|
||||
margin: 0;
|
||||
|
||||
& p {
|
||||
margin: 0;
|
||||
}
|
||||
|
@ -72,13 +78,13 @@ article {
|
|||
padding: var(--pad-m);
|
||||
white-space: pre-wrap;
|
||||
word-break: break-word;
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
}
|
||||
|
||||
& pre,
|
||||
code:not(pre *) {
|
||||
transition: background-color var(--trans), border-color var(--trans);
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
border-radius: var(--round);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
@ -103,6 +109,9 @@ article {
|
|||
border-radius: var(--round);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
& img {
|
||||
border-radius: inherit;
|
||||
}
|
||||
}
|
||||
& section {
|
||||
& a:has(figure) {
|
||||
|
@ -120,84 +129,6 @@ article {
|
|||
}
|
||||
}
|
||||
|
||||
/* Navigation */
|
||||
body > nav {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
padding: 1rem;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: var(--view);
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body > nav ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
nav > details {
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
nav > details > summary::marker {
|
||||
content: none;
|
||||
}
|
||||
|
||||
body > nav ul li {
|
||||
display: inherit;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
body > nav a {
|
||||
display: flex;
|
||||
font-size: 1.125rem;
|
||||
font-weight: bold;
|
||||
height: var(--pad-xl);
|
||||
line-height: var(--pad-xl);
|
||||
}
|
||||
|
||||
details {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/* Navigation > Icons */
|
||||
svg {
|
||||
fill: currentColor;
|
||||
stroke: currentColor;
|
||||
stroke-width: 0;
|
||||
}
|
||||
|
||||
body > nav li img {
|
||||
border-radius: 100%;
|
||||
}
|
||||
|
||||
body > nav a svg,
|
||||
body > nav li img,
|
||||
body > nav summary svg {
|
||||
margin: 0 8px 0 8px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
body > nav li img,
|
||||
body > nav a svg {
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
body > nav details {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
body > nav > ul > svg {
|
||||
overflow: visible;
|
||||
text-anchor: start;
|
||||
}
|
||||
|
||||
ul:has(img, svg):not(article ul) {
|
||||
list-style-type: none;
|
||||
}
|
||||
:is(main article, main section):not(:last-child) {
|
||||
margin-bottom: var(--pad-xl);
|
||||
}
|
||||
|
@ -208,3 +139,7 @@ img[src*="/assets/img/flag/"] {
|
|||
border-width: 2px;
|
||||
border-color: #fff;
|
||||
}
|
||||
a:has(img[src*="/assets/img/button"]):is(:hover, :focus) img {
|
||||
transform: translateY(-4px);
|
||||
transition: var(--trans);
|
||||
}
|
|
@ -25,9 +25,7 @@
|
|||
& a {
|
||||
display: block;
|
||||
text-decoration: unset;
|
||||
border-radius: var(--round);
|
||||
& figure {
|
||||
border-radius: inherit;
|
||||
margin: 0;
|
||||
padding: var(--pad-sm);
|
||||
border-width: 2px;
|
||||
|
@ -38,7 +36,6 @@
|
|||
height: var(--thumb);
|
||||
border-bottom: unset;
|
||||
object-fit: contain;
|
||||
border-radius: inherit;
|
||||
}
|
||||
|
||||
& figcaption {
|
||||
|
@ -64,10 +61,8 @@
|
|||
margin: var(--pad-l) 0;
|
||||
& a {
|
||||
display: flex;
|
||||
height: max-content;
|
||||
border-radius: var(--round);
|
||||
width: calc(var(--post) - var(--view));
|
||||
flex-direction: column;
|
||||
max-width: calc(var(--post) - var(--view));
|
||||
}
|
||||
}
|
||||
& time {
|
|
@ -18,9 +18,10 @@
|
|||
#pkmn {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: center;
|
||||
background-image: url("/assets/img/pkmn/bg/box.png");
|
||||
border-radius: 5px;
|
||||
width: max-content;
|
||||
width: fit-content;
|
||||
border-bottom-color: #78a068;
|
||||
border-left-color: #c8f8c0;
|
||||
border-right-color: #78a068;
|
||||
|
@ -64,7 +65,7 @@ body [id]:not(:nth-child(1)) ul {
|
|||
#pansexual {
|
||||
background-image: linear-gradient(#f09 33.33%, #ffd700 0 66.66%, #00bfff 0);
|
||||
}
|
||||
#intro {
|
||||
#bio {
|
||||
& p,
|
||||
ul {
|
||||
font-family: "Urbanist", sans-serif;
|
||||
|
@ -115,18 +116,12 @@ body [id]:not(:nth-child(1)) ul {
|
|||
& ul {
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
& a {
|
||||
outline: none;
|
||||
display: flex;
|
||||
padding: inherit;
|
||||
margin: 0;
|
||||
}
|
||||
& a:is(:hover, :focus) img {
|
||||
transform: translateY(-4px);
|
||||
transition: var(--trans);
|
||||
}
|
||||
}
|
||||
#collection div:has(img)::after {
|
||||
content: url("/assets/img/icon/shortcut.png");
|
|
@ -1,6 +1,6 @@
|
|||
@import url("/assets/css/variables.css");
|
||||
@import url("/assets/css/theme-light.css");
|
||||
@import url("/assets/css/theme-dark.css");
|
||||
@import url("./variables.css");
|
||||
@import url("./theme-light.css");
|
||||
@import url("./theme-dark.css");
|
||||
|
||||
#index {
|
||||
width: 100%;
|
||||
|
@ -12,7 +12,8 @@
|
|||
align-items: center;
|
||||
height: 100vh;
|
||||
width: inherit;
|
||||
& p {
|
||||
flex-direction: column;
|
||||
& a {
|
||||
font-family: "Urbanist", sans-serif;
|
||||
font-size: 500%;
|
||||
margin: 0;
|
||||
|
@ -26,4 +27,11 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
& footer {
|
||||
position: absolute;
|
||||
bottom: var(--pad-l);
|
||||
& p {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -2,14 +2,12 @@
|
|||
/* gallery.css */
|
||||
#art section:has(a:nth-child(n + 2)) {
|
||||
flex-direction: column !important;
|
||||
width: 100% !important;
|
||||
& a {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 920px) {
|
||||
/* gallery .css */
|
||||
#art section {
|
||||
align-self: center !important;
|
||||
}
|
||||
/* blog.css */
|
||||
article aside {
|
||||
float: none !important;
|
||||
|
@ -25,7 +23,7 @@
|
|||
[aria-label="Postscript"] {
|
||||
& p {
|
||||
margin-right: unset !important;
|
||||
&> img {
|
||||
& > img {
|
||||
height: auto !important;
|
||||
max-height: var(--view) !important;
|
||||
}
|
||||
|
@ -59,8 +57,7 @@
|
|||
|
||||
body > nav {
|
||||
flex-direction: row !important;
|
||||
top: 0 !important;
|
||||
border-right: 0 !important;
|
||||
border: 0 !important;
|
||||
width: 100% !important;
|
||||
& details {
|
||||
height: fit-content !important;
|
||||
|
@ -70,18 +67,28 @@
|
|||
body::after {
|
||||
content: "" !important;
|
||||
}
|
||||
/* gallery.css */
|
||||
#art a:has(img) {
|
||||
width: 100% !important
|
||||
}
|
||||
/* home.css */
|
||||
#collection {
|
||||
display: flex !important;
|
||||
flex-direction: column !important;
|
||||
& ul {
|
||||
justify-content: center !important;
|
||||
}
|
||||
& li a {
|
||||
padding: 0 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 400px) {
|
||||
@media screen and (max-width: 450px) {
|
||||
article {
|
||||
padding: var(--pad-l) !important;
|
||||
padding: var(--pad-sm) !important;
|
||||
background-color: unset !important;
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
body > nav {
|
||||
flex-direction: column !important;
|
||||
justify-content: start !important;
|
|
@ -27,11 +27,68 @@ body::after {
|
|||
-webkit-mask-position-x: 0;
|
||||
-webkit-mask-position-y: bottom;
|
||||
}
|
||||
body > nav {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
padding: 1rem;
|
||||
position: fixed;
|
||||
width: var(--view);
|
||||
height: 100%;
|
||||
& * svg,
|
||||
li img {
|
||||
margin: 0 8px 0 8px;
|
||||
width: 20px;
|
||||
align-self: center;
|
||||
}
|
||||
& details {
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
& summary::marker {
|
||||
content: none;
|
||||
}
|
||||
}
|
||||
& ul {
|
||||
margin: var(--pad-sm);
|
||||
padding: 0;
|
||||
& li, button {
|
||||
padding: 0;
|
||||
align-items: center;
|
||||
margin-bottom: inherit;
|
||||
& img {
|
||||
border-radius: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
& svg {
|
||||
fill: currentColor;
|
||||
stroke: currentColor;
|
||||
stroke-width: 0;
|
||||
}
|
||||
& details {
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
& a,
|
||||
button {
|
||||
display: flex;
|
||||
font-size: 1.125rem;
|
||||
width: 100%;
|
||||
font-weight: bold;
|
||||
height: var(--pad-xl);
|
||||
line-height: var(--pad-xl);
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: "Rubik", sans-serif;
|
||||
& > nav {
|
||||
gap: var(--pad-m);
|
||||
& a,
|
||||
button {
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
border-radius: var(--round);
|
||||
}
|
||||
& details {
|
||||
gap: inherit;
|
||||
border-radius: var(--round);
|
||||
|
@ -39,7 +96,6 @@ body {
|
|||
}
|
||||
& details > summary {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 var(--pad-lm) 0 0;
|
||||
height: var(--pad-xl);
|
||||
|
@ -64,14 +120,6 @@ body {
|
|||
transform: rotate(45deg);
|
||||
}
|
||||
}
|
||||
|
||||
& a {
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
margin: 0 var(--pad-sm);
|
||||
margin-bottom: var(--pad-sm);
|
||||
border-radius: var(--round);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
2
_src/assets/css/default/system.css
Normal file
2
_src/assets/css/default/system.css
Normal file
|
@ -0,0 +1,2 @@
|
|||
@import url("./theme-light.css");
|
||||
@import url("./theme-dark.css");
|
|
@ -8,11 +8,6 @@
|
|||
box-shadow: inset 0 0 0 2px var(--secondary-500);
|
||||
background-color: var(--secondary-300);
|
||||
}
|
||||
& figure {
|
||||
color: var(--secondary-light-400);
|
||||
border-color: var(--secondary-600);
|
||||
background-color: var(--secondary-300);
|
||||
}
|
||||
|
||||
& s,
|
||||
u {
|
||||
|
@ -20,7 +15,8 @@
|
|||
}
|
||||
|
||||
& code:not(pre *) {
|
||||
background-color: var(--secondary-400);
|
||||
color: var(--secondary-400);
|
||||
background-color: var(--secondary-light-400);
|
||||
}
|
||||
|
||||
& pre {
|
||||
|
@ -37,15 +33,43 @@
|
|||
code {
|
||||
border-color: var(--secondary-400);
|
||||
}
|
||||
/* blog.css */
|
||||
& [aria-label="Postscript"]::after {
|
||||
background-color: var(--secondary);
|
||||
}
|
||||
& [aria-label="Post warning"] {
|
||||
background-color: var(--secondary);
|
||||
color: var(--secondary-100);
|
||||
&::before,
|
||||
&::after {
|
||||
background-color: var(--secondary);
|
||||
}
|
||||
}
|
||||
& [aria-label="Addendum"] {
|
||||
box-shadow: inset 0 0 0 2px var(--secondary);
|
||||
border-image-source: linear-gradient(
|
||||
45deg,
|
||||
var(--secondary),
|
||||
var(--secondary-600),
|
||||
var(--secondary)
|
||||
);
|
||||
background-color: var(--secondary-400);
|
||||
}
|
||||
}
|
||||
|
||||
#posts {
|
||||
& p:not(:last-child) {
|
||||
color: var(--secondary-light-700);
|
||||
}
|
||||
}
|
||||
/* default.css */
|
||||
body {
|
||||
background-color: var(--secondary-100);
|
||||
color: var(--secondary-light-300);
|
||||
& a:not(article *) {
|
||||
color: var(--secondary);
|
||||
|
||||
& a:not(article p *, #badges *, [aria-current]), button {
|
||||
color: var(--secondary-light-400);
|
||||
border-color: var(--secondary-600);
|
||||
background-color: var(--secondary-400);
|
||||
background-color: var(--secondary-300);
|
||||
&:is(:hover, :focus) {
|
||||
color: var(--secondary-light-500);
|
||||
border-color: currentColor;
|
||||
|
@ -88,64 +112,7 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
/* blog.css */
|
||||
article {
|
||||
& [aria-label="Postscript"]::after {
|
||||
background-color: var(--secondary);
|
||||
}
|
||||
& p[aria-label="Post warning"] {
|
||||
border-color: currentColor;
|
||||
background-color: var(--secondary-100);
|
||||
color: var(--secondary);
|
||||
}
|
||||
|
||||
& [aria-label="Addendum"] {
|
||||
box-shadow: inset 0 0 0 2px var(--secondary);
|
||||
border-image-source: linear-gradient(
|
||||
45deg,
|
||||
var(--secondary),
|
||||
var(--secondary-600),
|
||||
var(--secondary)
|
||||
);
|
||||
background-color: var(--secondary-400);
|
||||
}
|
||||
}
|
||||
|
||||
#posts {
|
||||
& p:not(:last-child) {
|
||||
color: var(--secondary-light-700);
|
||||
}
|
||||
}
|
||||
/* gallery.css */
|
||||
#artworks {
|
||||
& a {
|
||||
transition: color var(--trans), background-color var(--trans),
|
||||
border-color var(--trans);
|
||||
|
||||
& figure {
|
||||
color: var(--secondary-light-400);
|
||||
border-color: var(--secondary-600);
|
||||
background-color: var(--secondary-300);
|
||||
|
||||
& time {
|
||||
color: var(--secondary-light-500);
|
||||
}
|
||||
|
||||
& figcaption {
|
||||
color: var(--secondary-light-500);
|
||||
}
|
||||
|
||||
&:is(:hover, :focus) {
|
||||
border-color: currentColor;
|
||||
background-color: var(--secondary-500);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/* home.css */
|
||||
#badges a:is(:hover, :focus) img {
|
||||
filter: drop-shadow(4px 6px 0 var(--secondary-500));
|
||||
}
|
||||
#collection {
|
||||
& a:is(:hover, :focus) {
|
||||
box-shadow: 0 0 0 1px currentColor;
|
||||
|
@ -156,4 +123,7 @@
|
|||
color-mix(in lch, transparent, var(--secondary-500) 70%);
|
||||
}
|
||||
}
|
||||
a:has(img[src*="/assets/img/button"]):is(:hover, :focus) img {
|
||||
filter: drop-shadow(4px 6px 0 var(--secondary-500));
|
||||
}
|
||||
}
|
|
@ -8,11 +8,6 @@
|
|||
box-shadow: inset 0 0 0 2px var(--primary-500);
|
||||
background-color: var(--primary-300);
|
||||
}
|
||||
& figure {
|
||||
color: var(--primary-dark-400);
|
||||
border-color: var(--primary-600);
|
||||
background-color: var(--primary-300);
|
||||
}
|
||||
|
||||
& s,
|
||||
u {
|
||||
|
@ -20,7 +15,8 @@
|
|||
}
|
||||
|
||||
& code:not(pre *) {
|
||||
background-color: var(--primary-400);
|
||||
color: var(--primary-400);
|
||||
background-color: var(--primary-dark-400);
|
||||
}
|
||||
|
||||
& pre {
|
||||
|
@ -37,13 +33,40 @@
|
|||
code {
|
||||
border-color: var(--primary-400);
|
||||
}
|
||||
/* blog.css */
|
||||
& [aria-label="Postscript"]::after {
|
||||
background-color: var(--primary);
|
||||
}
|
||||
& [aria-label="Post warning"] {
|
||||
background-color: var(--primary);
|
||||
color: var(--primary-dark-100);
|
||||
&::before,
|
||||
&::after {
|
||||
background-color: var(--primary);
|
||||
}
|
||||
}
|
||||
& [aria-label="Addendum"] {
|
||||
box-shadow: inset 0 0 0 2px var(--primary);
|
||||
border-image-source: linear-gradient(
|
||||
45deg,
|
||||
var(--primary),
|
||||
var(--primary-600),
|
||||
var(--primary)
|
||||
);
|
||||
background-color: var(--primary-400);
|
||||
}
|
||||
}
|
||||
|
||||
#posts {
|
||||
& p:not(:last-child) {
|
||||
color: var(--primary-dark-700);
|
||||
}
|
||||
}
|
||||
/* default.css */
|
||||
body {
|
||||
background-color: var(--primary-100);
|
||||
color: var(--primary-dark-300);
|
||||
& a:not(article *) {
|
||||
color: var(--primary);
|
||||
& a:not(article p *, #badges *, [aria-current]), button {
|
||||
color: var(--primary-dark-400);
|
||||
border-color: var(--primary-600);
|
||||
background-color: var(--primary-400);
|
||||
&:is(:hover, :focus) {
|
||||
|
@ -55,7 +78,7 @@
|
|||
& > nav {
|
||||
border-right: 1px solid var(--primary);
|
||||
&::before,
|
||||
::after {
|
||||
&::after {
|
||||
background-color: var(--primary);
|
||||
}
|
||||
}
|
||||
|
@ -87,64 +110,7 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
/* blog.css */
|
||||
article {
|
||||
& [aria-label="Postscript"]::after {
|
||||
background-color: var(--primary);
|
||||
}
|
||||
& p[aria-label="Post warning"] {
|
||||
border-color: currentColor;
|
||||
background-color: var(--primary-dark-200);
|
||||
color: var(--primary);
|
||||
}
|
||||
|
||||
& [aria-label="Addendum"] {
|
||||
box-shadow: inset 0 0 0 2px var(--primary);
|
||||
border-image-source: linear-gradient(
|
||||
45deg,
|
||||
var(--primary),
|
||||
var(--primary-600),
|
||||
var(--primary)
|
||||
);
|
||||
background-color: var(--primary-400);
|
||||
}
|
||||
}
|
||||
|
||||
#posts {
|
||||
& p:not(:last-child) {
|
||||
color: var(--primary-dark-700);
|
||||
}
|
||||
}
|
||||
/* gallery.css */
|
||||
#artworks {
|
||||
& a {
|
||||
transition: color var(--trans), background-color var(--trans),
|
||||
border-color var(--trans);
|
||||
|
||||
& figure {
|
||||
color: var(--primary-dark-400);
|
||||
border-color: var(--primary-600);
|
||||
background-color: var(--primary-300);
|
||||
|
||||
& time {
|
||||
color: var(--primary-dark-500);
|
||||
}
|
||||
|
||||
& figcaption {
|
||||
color: var(--primary-dark-500);
|
||||
}
|
||||
|
||||
&:is(:hover, :focus) {
|
||||
border-color: currentColor;
|
||||
background-color: var(--primary-500);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/* home.css */
|
||||
#badges a:is(:hover, :focus) img {
|
||||
filter: drop-shadow(4px 6px 0 var(--primary-500));
|
||||
}
|
||||
#collection {
|
||||
& a:is(:hover, :focus) {
|
||||
box-shadow: 0 0 0 1px currentColor;
|
||||
|
@ -155,4 +121,7 @@
|
|||
color-mix(in lch, transparent, var(--primary-dark-500) 30%);
|
||||
}
|
||||
}
|
||||
a:has(img[src*="/assets/img/button"]):is(:hover, :focus) img {
|
||||
filter: drop-shadow(4px 6px 0 var(--primary-500));
|
||||
}
|
||||
}
|
BIN
_src/assets/img/theme/citrus/checker-dark.png
Normal file
BIN
_src/assets/img/theme/citrus/checker-dark.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 123 B |
BIN
_src/assets/img/theme/citrus/checker.png
Normal file
BIN
_src/assets/img/theme/citrus/checker.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 134 B |
BIN
_src/assets/img/theme/citrus/dot-dark.png
Normal file
BIN
_src/assets/img/theme/citrus/dot-dark.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 118 B |
BIN
_src/assets/img/theme/citrus/dot.png
Normal file
BIN
_src/assets/img/theme/citrus/dot.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 881 B |
BIN
_src/assets/img/theme/citrus/enter.png
Normal file
BIN
_src/assets/img/theme/citrus/enter.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
BIN
_src/assets/img/theme/citrus/sundae.png
Normal file
BIN
_src/assets/img/theme/citrus/sundae.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 42 KiB |
24
_src/assets/js/theme.js
Normal file
24
_src/assets/js/theme.js
Normal file
|
@ -0,0 +1,24 @@
|
|||
const basePath = "/assets/css";
|
||||
const themeToggle = document.getElementById("theme-toggle");
|
||||
const themeStylesheet = document.getElementById("custom");
|
||||
|
||||
const themes = [
|
||||
{ name: "system", file: "default/system.css" },
|
||||
{ name: "citrus", file: "citrus/citrus.css" },
|
||||
];
|
||||
|
||||
let currentTheme = localStorage.getItem("theme") || themes[0].name;
|
||||
setTheme(currentTheme);
|
||||
|
||||
function setTheme(themeName) {
|
||||
const theme = themes.find(t => t.name === themeName);
|
||||
if (theme) {
|
||||
themeStylesheet.href = `${basePath}/${theme.file}`;
|
||||
}
|
||||
}
|
||||
|
||||
themeToggle.addEventListener("click", () => {
|
||||
currentTheme = themes[(themes.findIndex(t => t.name === currentTheme) + 1) % themes.length].name;
|
||||
setTheme(currentTheme);
|
||||
localStorage.setItem("theme", currentTheme);
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue