kiruthiga 55473b7e7c initial push 5 дней назад
..
dist 55473b7e7c initial push 5 дней назад
node_modules 55473b7e7c initial push 5 дней назад
LICENSE 55473b7e7c initial push 5 дней назад
README.md 55473b7e7c initial push 5 дней назад
_functions.import.scss 55473b7e7c initial push 5 дней назад
_functions.scss 55473b7e7c initial push 5 дней назад
_index.scss 55473b7e7c initial push 5 дней назад
_variables.import.scss 55473b7e7c initial push 5 дней назад
_variables.scss 55473b7e7c initial push 5 дней назад
index.d.ts 55473b7e7c initial push 5 дней назад
index.js 55473b7e7c initial push 5 дней назад
index.js.map 55473b7e7c initial push 5 дней назад
package.json 55473b7e7c initial push 5 дней назад
types.d.ts 55473b7e7c initial push 5 дней назад
types.js 55473b7e7c initial push 5 дней назад
types.js.map 55473b7e7c initial push 5 дней назад
util.d.ts 55473b7e7c initial push 5 дней назад
util.js 55473b7e7c initial push 5 дней назад
util.js.map 55473b7e7c initial push 5 дней назад

README.md

Animation

Material in motion is responsive and natural. Use these easing curves and duration patterns to create smooth and consistent motion.

Design & API Documentation

Installation

npm install @material/animation

Usage

Sass Variables

We provide timing functions which you can use with the animation or transition CSS properties

@use "@material/animation";

.my-element--animating {
  animation: foo-keyframe 175ms animation.$standard-curve-timing-function;
}
Variable Description
$deceleration-curve-timing-function Timing function to decelerate
$standard-curve-timing-function Timing function to quickly accelerate and slowly decelerate
$acceleration-curve-timing-function Timing function to accelerate
$sharp-curve-timing-function Timing function to quickly accelerate and decelerate

The following functions create transitions given $name and the $duration. You can also specify $delay, but the default is 0ms. $name can either refer to the keyframe, or to CSS property used in transition.

@use "@material/animation";

.my-element {
  transition: animation.exit-permanent(/* $name: */ opacity, /* $duration: */ 175ms, /* $delay: */ 150ms);
  opacity: 0;
  will-change: opacity;

  &--animating {
    transition: animation.enter(/* $name: */ opacity, /* $duration: */ 175ms);
    opacity: 1;
  }
}
@use "@material/animation";

@keyframes fade-in {
  from {
    transform: translateY(-80px);
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.my-element {
  animation: animation.enter(/* $name: */ fade-in, /* $duration: */ 350ms);
}
Function Description
enter($name, $duration, $delay) Defines transition for entering the frame
exit-permanent($name, $duration, $delay) Defines transition for exiting the frame permanently
exit-temporary($name, $duration, $delay) Defines transition for exiting the frame temporarily

JavaScript

These functions handle prefixing across various browsers

import {getCorrectEventName} from '@material/animation';

const eventToListenFor = getCorrectEventName(window, 'animationstart');
Method Signature Description
getCorrectEventName(windowObj: Window, eventType: StandardJsEventType) => StandardJsEventType \| PrefixedJsEventType Returns a JavaScript event name, prefixed if necessary. See types.ts for supported values.
getCorrectPropertyName(windowObj: Window, cssProperty: StandardCssPropertyName) => StandardCssPropertyName \| PrefixedCssPropertyName Returns a CSS property name, prefixed if necessary. See types.ts for supported values.