31 lines
1.2 KiB
SCSS
31 lines
1.2 KiB
SCSS
|
@use "sass:map";
|
|||
|
@use "../settings" as *;
|
|||
|
|
|||
|
@if map.get($modules, "utilities/reduce-motion") and enable-transitions and enable-important {
|
|||
|
/**
|
|||
|
* Reduce Motion Features
|
|||
|
*/
|
|||
|
|
|||
|
// Based on :
|
|||
|
// - sanitize.css v13.0.0 | CC0 1.0 Universal | github.com/csstools/sanitize.css
|
|||
|
// ––––––––––––––––––––
|
|||
|
|
|||
|
// 1. Remove animations when motion is reduced (opinionated)
|
|||
|
// 2. Remove fixed background attachments when motion is reduced (opinionated)
|
|||
|
// 3. Remove timed scrolling behaviors when motion is reduced (opinionated)
|
|||
|
// 4. Remove transitions when motion is reduced (opinionated)
|
|||
|
@media (prefers-reduced-motion: reduce) {
|
|||
|
#{$parent-selector} *:not([aria-busy="true"]),
|
|||
|
#{$parent-selector} :not([aria-busy="true"])::before,
|
|||
|
#{$parent-selector} :not([aria-busy="true"])::after {
|
|||
|
background-attachment: initial !important; // 2
|
|||
|
animation-duration: 1ms !important; // 1
|
|||
|
animation-delay: -1ms !important; // 1
|
|||
|
animation-iteration-count: 1 !important; // 1
|
|||
|
scroll-behavior: auto !important; // 3
|
|||
|
transition-delay: 0s !important; // 4
|
|||
|
transition-duration: 0s !important; // 4
|
|||
|
}
|
|||
|
}
|
|||
|
}
|