Add fallbacks to CSS variables for older browsers

This commit is contained in:
2023-03-11 14:07:43 -08:00
parent c631be65bc
commit 0bd55bc58a
7 changed files with 71 additions and 61 deletions

View File

@@ -1,15 +1,13 @@
$container-width: 45rem;
$container-min-padding: 1rem;
$container-width-threshold: $container-width + 2 * $container-min-padding;
$standard-border-width: .075rem;
$primary-color: #36e281;
$border-color: #bfbfbf;
$background-color: white;
$background-color-dark: #1b1d1f;
$code-color: #f0f0f0;
$code-color-dark: lighten($background-color-dark, 10%);
$code-border-color: darken($code-color, 10%);
$standard-border-width: .075rem;
$standard-border: $standard-border-width solid $border-color;
$font-heading: "Lora", serif;
$font-body: "Raleway", serif;
@@ -23,25 +21,40 @@ $warning-border-color-dark: $warning-background-color;
$target-background-color: lighten(yellow, 30%);
$target-background-color-dark: #55511c;
$standard-border: $standard-border-width solid $border-color;
$code-color: #f0f0f0;
$code-color-dark: lighten($background-color-dark, 10%);
$code-token-color: black;
$code-token-color-dark: darken(white, 40%);
$code-border-color: darken($code-color, 10%);
$code-lineno-color: grey;
$code-comment-color: grey;
$code-border: $standard-border-width solid $code-border-color;
:root {
--background-color: #{$background-color};
--text-color: black;
--code-color: #{$code-color};
--warning-background-color: #{$warning-background-color};
--warning-border-color: #{$warning-border-color};
--target-background-color: #{$target-background-color};
}
$sidenote-padding: 1rem;
$sidenote-highlight-border-width: .2rem;
@media (prefers-color-scheme: dark) {
:root {
--background-color: #{$background-color-dark};
--text-color: white;
--code-color: #{$code-color-dark};
--warning-background-color: #{$warning-background-color-dark};
--warning-border-color: #{$warning-border-color-dark};
--target-background-color: #{$target-background-color-dark};
}
$margin-width: 30rem;
$margin-inner-offset: 0.5rem;
$margin-outer-offset: 1rem;
$toc-border-color: $code-border-color;
// Default values for CSS variables for fallback.
$css-vars: (
background-color: $background-color,
text-color: black,
warning-background-color: $warning-background-color,
warning-border-color: $warning-border-color,
target-background-color: $target-background-color,
code-color: $code-color,
code-keyword-color: $code-token-color,
code-type-color: $code-token-color,
);
@mixin var($property, $varName) {
#{$property}: map-get($css-vars, $varName);
#{$property}: var(--#{$varName});
}