Combine :host to :root so that Web Components can access CSS vars

This commit is contained in:
Julien Déramond 2023-02-08 20:56:16 +01:00
parent cbc4e3a409
commit b615c45420
No known key found for this signature in database
GPG Key ID: DCD226672FC08F31
6 changed files with 8 additions and 5 deletions

View File

@ -2,7 +2,8 @@
// //
// Rows contain your columns. // Rows contain your columns.
:root { :root,
:host {
@each $name, $value in $grid-breakpoints { @each $name, $value in $grid-breakpoints {
--#{$prefix}breakpoint-#{$name}: #{$value}; --#{$prefix}breakpoint-#{$name}: #{$value};
} }

View File

@ -25,7 +25,8 @@
// Ability to the value of the root font sizes, affecting the value of `rem`. // Ability to the value of the root font sizes, affecting the value of `rem`.
// null by default, thus nothing is generated. // null by default, thus nothing is generated.
:root { :root,
:host {
@if $font-size-root != null { @if $font-size-root != null {
@include font-size(var(--#{$prefix}root-font-size)); @include font-size(var(--#{$prefix}root-font-size));
} }

View File

@ -1,4 +1,5 @@
:root, :root,
:host,
[data-bs-theme="light"] { [data-bs-theme="light"] {
// Note: Custom variable values only support SassScript inside `#{}`. // Note: Custom variable values only support SassScript inside `#{}`.

View File

@ -387,7 +387,7 @@ $enable-important-utilities: true !default;
$enable-dark-mode: true !default; $enable-dark-mode: true !default;
$color-mode-type: data !default; // `data` or `media-query` $color-mode-type: data !default; // `data` or `media-query`
// Prefix for :root CSS variables // Prefix for ':root, :host' CSS variables
$variable-prefix: bs- !default; // Deprecated in v5.2.0 for the shorter `$prefix` $variable-prefix: bs- !default; // Deprecated in v5.2.0 for the shorter `$prefix`
$prefix: $variable-prefix !default; $prefix: $variable-prefix !default;

View File

@ -3,7 +3,7 @@
@if $color-mode-type == "media-query" { @if $color-mode-type == "media-query" {
@if $root == true { @if $root == true {
@media (prefers-color-scheme: $mode) { @media (prefers-color-scheme: $mode) {
:root { :root, :host {
@content; @content;
} }
} }

View File

@ -21,7 +21,7 @@ These CSS variables are available everywhere, regardless of color mode.
```css ```css
{{< root.inline >}} {{< root.inline >}}
{{- $css := readFile "dist/css/bootstrap.css" -}} {{- $css := readFile "dist/css/bootstrap.css" -}}
{{- $match := findRE `:root,\n\[data-bs-theme=light\] {([^}]*)}` $css 1 -}} {{- $match := findRE `:root,\n:host,\n\[data-bs-theme=light\] {([^}]*)}` $css 1 -}}
{{- if (eq (len $match) 0) -}} {{- if (eq (len $match) 0) -}}
{{- errorf "Got no matches for :root in %q!" $.Page.Path -}} {{- errorf "Got no matches for :root in %q!" $.Page.Path -}}