diff options
author | Jean-Nicolas Veigel <art.jnveigel@gmail.com> | 2024-03-14 23:02:38 +0100 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2024-03-26 10:31:25 +0000 |
commit | 5f6b483eb576b994cc94660c71ee3948b2464c1b (patch) | |
tree | 72281c1f12dbbf465dbe24c6b0d2a6c8a27c1c00 /static | |
parent | 2efbe4d05210e118c9f295b0a66f3bf7b8f7c9aa (diff) | |
download | tour-5f6b483eb576b994cc94660c71ee3948b2464c1b.tar.gz tour-5f6b483eb576b994cc94660c71ee3948b2464c1b.zip |
style: replicate code bloc style, polish mobile table of contents
Diffstat (limited to 'static')
-rw-r--r-- | static/style.css | 136 |
1 files changed, 113 insertions, 23 deletions
diff --git a/static/style.css b/static/style.css index b7880f4..bb00a2a 100644 --- a/static/style.css +++ b/static/style.css @@ -22,6 +22,10 @@ --font-family-normal: "Outfit", sans-serif; --font-family-title: "Lexend", sans-serif; + --font-size-normal: calc(var(--gap) * 1.5); + --font-size-small: calc(var(--gap) * 1.2); + --font-size-extra-small: calc(var(--gap)); + --gap: 0.75rem; --gap-double: calc(2 * var(--gap)); --gap-triple: calc(3 * var(--gap)); @@ -412,11 +416,10 @@ html.theme-dark .codeflask .token.attr-value { } /* + * /everything page + * inline chapters & lessons + */ -/everything page -inline chapters & lessons - -/* /* set navbar to position: fixed */ body:has(#everything) .navbar { @@ -435,13 +438,18 @@ main#everything { overflow: hidden; } -#everything p { +#everything p, +#everything a { margin: var(--gap) 0; - font-size: 1rem; + font-size: var(--font-size-normal); line-height: var(--gap-double); font-weight: 400; } +#everything code { + font-size: var(--font-size-small); +} + #everything h1, #everything h2, #everything h3 { @@ -533,6 +541,7 @@ main#everything { #everything-lessons .lesson { margin: var(--gap) 0; padding: var(--gap) 0; + padding-bottom: var(--gap-triple); } #everything-lessons .lesson * { @@ -545,6 +554,7 @@ main#everything { background: var(--color-background); z-index: 2; padding: var(--gap) 0; + margin-bottom: var(--gap-double); } #everything-lessons .lesson:target .lesson-title { @@ -552,23 +562,37 @@ main#everything { } #everything-lessons .lesson-snippet { - padding: var(--gap) var(--gap-half); + padding: var(--gap); + margin-right: var(--gap); margin-top: var(--gap-double); position: relative; + background: var(--color-background-dim); + box-shadow: var(--gap) var(--gap) 0 var(--blacker); +} + +.theme-light #everything-lessons .lesson-snippet { + box-shadow: var(--gap) var(--gap) 0 var(--unnamed-blue); +} + +#everything-lessons .lesson-snippet code { + overflow-x: auto; + display: inline-block; + width: 100%; + padding: var(--gap); + padding-bottom: var(--gap-double); } #everything-lessons .lesson-snippet-link { background: var(--color-background); position: absolute; - top: var(--gap-half); - right: var(--gap-half); - padding: var(--gap-half); + bottom: 0; + right: 0; + padding: var(--gap-half) var(--gap); display: flex; align-items: center; justify-content: center; gap: var(--gap); - font-size: 0.75rem; - line-height: 0.75rem; + font-size: var(--font-size-small); color: var(--color-link); border-radius: none; text-decoration: none; @@ -628,28 +652,71 @@ main#everything { /* transform contents as to a side menu */ @media only screen and (max-width: 768px) { #everything-contents { + position: fixed; + inset: 0; + top: var(--navbar-height); grid-column: 1 / span 2; padding-left: calc( var(--gap) + var(--gap-quad)); - transform: translateX(calc(-100% + var(--gap))); - transition: transform 300ms ease-in 0s; + transform: translateX(-100%); + transition: transform 300ms ease-in 0s, overflow-y 0s linear 600ms; z-index: 10; - overflow-y: hidden; + overflow: unset; + box-shadow: 0 var(--gap-double) var(--gap-double) rgba(0, 0, 0, 0.4); + background: var(--color-background-dim); } + /* show / hide contents when touching on trigger */ #everything-contents:hover:not(:has(a:hover)) { - transition: transform 300ms ease-out 0s; - transform: translateX(calc(var(--gap-quad) * -1)); - overflow-y: auto; + transform: translateX(0); + /* overflow-x: hidden; */ + animation: reveal 300ms ease-out 20ms forwards 1; + } + + + + /* show / hide contents when touching on trigger */ + /* #everything-contents:hover:not(:is(:has(a:active), :has(a:focus))) { */ + + /* animation: reveal 300ms ease-out 0s forwards 1; */ + /* } */ + + #everything-contents::before { + display:none; + } + + #everything-contents::after { + content: "Table of contents"; + position: fixed; + padding: var(--gap-double) var(--gap); + inset: unset; + bottom: 0; + right: calc(-100%); + font-size: var(--font-size-normal); + filter: none; + width: calc(100vw); + transform: translateX(0); + display: flex; + align-items: center; + justify-content: center; + color: var(--faff-pink); + + background: var(--color-background-dim); + z-index: 60; + opacity: 1; + pointer-events: all; + box-sizing: border-box; } #everything-lessons { grid-column: 1 / span 2; - padding-left: var(--gap-double); + padding-bottom: var(--gap-quad); } - + #everything-lessons .lesson-snippet code { + padding: var(--gap); + } } @@ -661,9 +728,9 @@ main#everything { } #everything-lessons .chapter-separator { - margin-left: var(--gap-double); - margin-right: var(--gap-double); - width: calc(100% - var(--gap-quad)); + margin-left: var(--gap-quad); + margin-right: var(--gap-quad); + width: calc(100% - var(--gap-quad) * 2); } } @@ -684,4 +751,27 @@ main#everything { text-decoration: underline; text-decoration-color: transparent; } +} + +@keyframes reveal { + 0% { + overflow: unset; + } + + 99% { + overflow: unset; + } + + 100% { + overflow-y: auto; + } +} + +@keyframes hide { + 0% { + overflow-y: auto + } + 100% { + overflow: unset; + } }
\ No newline at end of file |