0
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-02-20 17:54:23 +01:00

Placeholder for transitions reset to prevent code duplication… (#29870)

Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
This commit is contained in:
Gaël Poupard 2020-02-14 20:50:50 +01:00 committed by GitHub
parent 6933bd4a1d
commit cd7e5d1111
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 42 additions and 2 deletions

View File

@ -583,3 +583,14 @@ main {
[hidden] {
display: none !important;
}
// Placeholder used to reset transitions, when user prefers reduced motion
@if $enable-prefers-reduced-motion-media-query {
@media (prefers-reduced-motion: reduce) {
%no-transition {
// stylelint-disable-next-line property-blacklist
transition: none !important;
}
}
}

View File

@ -212,6 +212,14 @@ $escaped-characters: (
(")","%29"),
) !default;
// Selectors which are isolated in the transition mixin to prevent invalid selector stack
$pseudo-vendor-prefixes: (
"::-webkit-",
"::-moz-",
"::-ms-"
) !default;
// Options
//
// Quickly modify global styling by enabling or disabling optional features.

View File

@ -9,8 +9,19 @@
}
@if $enable-prefers-reduced-motion-media-query {
@media (prefers-reduced-motion: reduce) {
transition: none;
$isolate: false;
@each $selector in $pseudo-vendor-prefixes {
@if str-index(quote(#{&}), $selector) {
$isolate: true;
}
}
@if $isolate {
@media (prefers-reduced-motion: reduce) {
transition: none;
}
} @else {
@extend %no-transition;
}
}
}

View File

@ -51,3 +51,12 @@
@import "syntax";
@import "anchor";
@import "algolia";
@if $enable-prefers-reduced-motion-media-query {
@media (prefers-reduced-motion: reduce) {
%no-transition {
// stylelint-disable-next-line property-blacklist, declaration-no-important
transition: none !important;
}
}
}

View File

@ -41,6 +41,7 @@ Changes to our source Sass files and compiled CSS.
- Line heights are dropped from several components to simplify our codebase. The `button-size()` and `pagination-size()` do not accept line height parameters anymore. [See #29271](https://github.com/twbs/bootstrap/pull/29271)
- The `button-variant()` mixin now accepts 3 optional color parameters, for each button state, to override the color provided by `color-yiq()`. By default, these parameters will find which color provides more contrast against the button state's background color with `color-yiq()`.
- The `button-outline-variant()` mixin now accepts an additional argument, `$active-color`, for setting the button's active state text color. By default, this parameter will find which color provides more contrast against the button's active background color with `color-yiq()`.
- The `transition()` mixin now extends `%no-transition` placeholder to handle `prefers-reduced-motion` media query-except vendor prefixes listed in new `$pseudo-vendor-prefixes` variable. [See #29870](https://github.com/twbs/bootstrap/pull/29870/)
## JavaScript