diff options
author | Shohei Yoshida <ysds.code@gmail.com> | 2020-04-01 09:42:33 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-01 09:42:33 +0300 |
commit | 053d5d5e93ba995ba6fda88679f8298e3053d868 (patch) | |
tree | ce9610986b649acb2d4708661c022b68cbafbc96 /scss/mixins | |
parent | 6663faa3e7365e2d2caf49e38643f6b9d3245359 (diff) |
transition() mixin prevent redundant 'transition: none' and pass `null` (#30391)
* Prevent redundant 'none' for prefers-reduced-motion
* Output warning when use 'none' or 'null' with multiple arguments
* Fix for libsass(node-sass)
Diffstat (limited to 'scss/mixins')
-rw-r--r-- | scss/mixins/_transition.scss | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/scss/mixins/_transition.scss b/scss/mixins/_transition.scss index 54983d736c..54553deb9c 100644 --- a/scss/mixins/_transition.scss +++ b/scss/mixins/_transition.scss @@ -1,13 +1,23 @@ // stylelint-disable property-blacklist @mixin transition($transition...) { + @if length($transition) == 0 { + $transition: $transition-base; + } + + @if length($transition) > 1 { + @each $value in $transition { + @if $value == null or $value == none { + @warn "The keyword 'none' or 'null' must be used as a single argument."; + } + } + } + @if $enable-transitions { - @if length($transition) == 0 { - transition: $transition-base; - } @else { + @if nth($transition, 1) != null { transition: $transition; } - @if $enable-prefers-reduced-motion-media-query { + @if $enable-prefers-reduced-motion-media-query and nth($transition, 1) != null and nth($transition, 1) != none { @media (prefers-reduced-motion: reduce) { transition: none; } |