Compare commits

...

2 Commits

Author SHA1 Message Date
1f1cbb88d3 Sidebar redesign, CSS reorganization 2024-06-11 16:15:40 +02:00
7c7de05047 Layout update 2024-06-11 15:42:52 +02:00
3 changed files with 174 additions and 134 deletions

View File

@ -8,7 +8,7 @@ import * as Plugin from "./quartz/plugins"
*/ */
const config: QuartzConfig = { const config: QuartzConfig = {
configuration: { configuration: {
pageTitle: "Japanese", pageTitle: "🗾 Japanese",
enableSPA: true, enableSPA: true,
enablePopovers: true, enablePopovers: true,
analytics: null, analytics: null,

View File

@ -15,7 +15,6 @@ export const sharedPageComponents: SharedLayout = {
// components for pages that display a single page (e.g. a single note) // components for pages that display a single page (e.g. a single note)
export const defaultContentPageLayout: PageLayout = { export const defaultContentPageLayout: PageLayout = {
beforeBody: [ beforeBody: [
// Component.MobileOnly(Component.Search()),
Component.Breadcrumbs(), Component.Breadcrumbs(),
], ],
left: [ left: [
@ -26,7 +25,7 @@ export const defaultContentPageLayout: PageLayout = {
], ],
right: [ right: [
Component.DesktopOnly(Component.Darkmode()), Component.DesktopOnly(Component.Darkmode()),
Component.DesktopOnly(Component.Search()), Component.Search(),
Component.DesktopOnly(Component.TableOfContents()), Component.DesktopOnly(Component.TableOfContents()),
Component.MobileOnly(Component.Explorer({folderDefaultState: "open"})) Component.MobileOnly(Component.Explorer({folderDefaultState: "open"}))
], ],
@ -38,7 +37,6 @@ export const defaultListPageLayout: PageLayout = {
left: [ left: [
Component.PageTitle(), Component.PageTitle(),
Component.MobileOnly(Component.Spacer()), Component.MobileOnly(Component.Spacer()),
// Component.Search(),
Component.Darkmode(), Component.Darkmode(),
Component.DesktopOnly(Component.Explorer()), Component.DesktopOnly(Component.Explorer()),
], ],

View File

@ -1,6 +1,7 @@
@use "./base.scss"; @use "./base.scss";
@use "./variables.scss" as *; @use "./variables.scss" as *;
// Callouts design
.text-highlight { .text-highlight {
background-color: #ddcee5; background-color: #ddcee5;
} }
@ -27,6 +28,22 @@
--color: #a672c0; --color: #a672c0;
} }
.callout.note {
& table {
margin: 0;
margin-bottom: 0.5rem;
& thead {
display: none;
}
& td {
padding: 0;
}
}
}
table { table {
border: 2px solid var(--gray); border: 2px solid var(--gray);
@ -43,23 +60,9 @@ table {
} }
} }
.callout.note {
& table {
margin: 0;
margin-bottom: 0.5rem;
& thead {
display: none;
}
& td {
padding: 0;
}
}
}
ul.overflow, ol.overflow { ul.overflow, ol.overflow {
max-height: 75dvh; max-height: initial;
} }
ul.overflow::after, ol.overflow::after { ul.overflow::after, ol.overflow::after {
@ -74,85 +77,35 @@ ul.overflow::after, ol.overflow::after {
} }
} }
.page { .page-title {
& > #quartz-body { margin-top: 0.5rem;
& .center {
& p {
font-size: 1.15rem;
white-space: break-spaces;
hyphens: none;
} }
& li {
font-size: 1.15rem; // Align dark mode and search
.darkmode.desktop-only {
margin:unset;
margin-top:0.25rem;
} }
& h1 {
font-size: 2rem;
margin-top: 1.25rem;
}
& h2 { // Bigger popover
font-size: 1.7rem; .popover {
}
& h3 { & > .popover-inner {
font-size: 1.5rem; width: 45rem;
} max-height: 35rem;
& h4 {
font-size: 1.3rem;
} }
} }
& .sidebar {
@media all and (max-width: $fullPageWidth) { // Hide buttons
margin-top: 1rem; button#explorer {
} display: none;
} }
& .right.sidebar { button#toc {
@media all and (max-width: $fullPageWidth) { display: none;
margin-top: 0;
}
}
.sidebar {
gap: 1rem;
margin-top: 1.25rem;
}
.sidebar.left {
@media all and (min-width: $maxFullPageWidth) {
left: calc(50vw - 900px);
}
@media all and (max-width: $maxFullPageWidth) {
left: calc(50vw - 790px);
}
}
.sidebar.right {
@media all and (min-width: $maxFullPageWidth) {
right: calc(50vw - 900px);
}
@media all and (max-width: $maxFullPageWidth) {
right: calc(50vw - 790px);
}
}
}
}
.page .center, .page footer {
@media all and (min-width: $maxFullPageWidth) {
width: 950px;
}
@media all and (max-width: $maxFullPageWidth) {
width: 800px;
}
@media all and (max-width: $mobileBreakpoint) {
width: initial;
}
} }
.page .page-header { .page .page-header {
@ -181,42 +134,114 @@ footer {
} }
// Align dark mode and search .page {
& > #quartz-body {
.page > #quartz-body .sidebar.right { & .center {
& p {
font-size: 1.15rem;
white-space: break-spaces;
hyphens: none;
}
& li {
font-size: 1.15rem;
}
& h1 {
font-size: 2rem;
margin-top: 0.65rem;
}
& h2 {
font-size: 1.7rem;
}
& h3 {
font-size: 1.5rem;
}
& h4 {
font-size: 1.3rem;
}
}
& .sidebar {
gap: 1rem;
margin-top: 1.25rem;
@media all and (min-width: $fullPageWidth) {
gap: 0rem;
width: 370px;
padding: 0 3rem;
}
@media all and (max-width: $fullPageWidth) {
margin-top: 1rem;
}
}
& .sidebar.left {
margin-top: 0;
height: 100%;
overflow-y: scroll;
@media all and (min-width: $maxFullPageWidth) {
left: calc(50vw - 900px);
}
@media all and (max-width: $maxFullPageWidth) {
left: calc(50vw - 790px);
}
}
& .sidebar.right {
flex-direction: row; flex-direction: row;
gap: 1rem; gap: 1rem;
@media all and (min-width: $maxFullPageWidth) {
right: calc(50vw - 900px);
}
@media all and (max-width: $fullPageWidth) {
margin-top: 0;
flex-direction: column;
}
@media all and (max-width: $maxFullPageWidth) {
right: calc(50vw - 790px);
} }
.darkmode.desktop-only { & > * {
margin:unset; @media all and (max-width: $fullPageWidth) {
margin-top:0.25rem; flex: 1;
min-width: 100%;
} }
// Bigger popover
.popover {
& > .popover-inner {
width: 45rem;
max-height: 45rem;
} }
} }
}
}
// Usage .page .center, .page footer {
@media all and (min-width: $maxFullPageWidth) {
width: 950px;
}
@media all and (max-width: $maxFullPageWidth) {
width: 800px;
}
@media all and (max-width: $mobileBreakpoint) {
width: initial;
}
}
.usage { .usage {
display:flex; display:flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
}
.usage p { & p {
margin:0; margin:0;
} }
.usage .box { & .box {
border: 1px solid var(--darkgray); border: 1px solid var(--darkgray);
border-radius: 0.5rem; border-radius: 0.5rem;
padding: 0.2rem 0.3rem 0.2rem 0.3rem; padding: 0.2rem 0.3rem 0.2rem 0.3rem;
@ -225,7 +250,7 @@ footer {
margin: 0.2rem; margin: 0.2rem;
} }
.usage .left { & .left {
padding-right: 1.7rem; padding-right: 1.7rem;
background-image: linear-gradient(var(--darkgray), var(--darkgray)), linear-gradient(var(--darkgray), var(--darkgray)); background-image: linear-gradient(var(--darkgray), var(--darkgray)), linear-gradient(var(--darkgray), var(--darkgray));
@ -237,11 +262,28 @@ footer {
border-width: 0 2px; border-width: 0 2px;
} }
.usage .right { & .right {
padding-left: 1rem; padding-left: 1rem;
} }
.usage .r { & .r {
margin-left: 0.25rem; margin-left: 0.25rem;
margin-right: 0.25rem; margin-right: 0.25rem;
} }
& .ileft {
padding-left: 1.7rem;
background-image: linear-gradient(black, black), linear-gradient(black, black);
background-repeat: no-repeat;
background-size: 8px 2px;
background-position: top left, bottom left;
border-left: solid black;
border-width: 0 2px;
}
& .iright {
padding-right: 1rem;
}
}