animation-timing-function |
Fonction de minuterie de l'animation |
---|---|
CSS3 |
Syntaxe
animation-timing-function: cubic-bezier(n,n,n,n)|ease|ease-in|ease-in-out|ease-out|initial|inherit|linear; |
Paramètres
Paramètre | Description |
---|---|
cubic-bezier(n,n,n,n) | Ce paramètre permet de définir manuellement la fonction cubique-Bézier. Les valeurs possibles sont des valeurs entre 0 et 1. |
ease | Ce paramètre permet d'indiquer que l'animation démarre lentement, accélère, et ralentis à la fin. C'est la valeur par défaut. |
ease-in | Ce paramètre permet d'indiquer que l'animation est lent au début. |
ease-in-out | Ce paramètre permet d'indiquer que l'animation est lente au début et à la fin. |
ease-out | Ce paramètre permet d'indiquer que l'animation est lent à la fin. |
inherit | Ce paramètre permet d'indiquer qu'il faut hérité de la valeur de son parent. |
initial | Ce paramètre permet d'indiquer qu'il faut appliquer la valeur par défaut de cette propriété. |
linear | Ce paramètre permet d'indiquer que l'animation a la même vitesse au début et à la fin. |
Description
Cette propriété permet d'indiquer la vitesse de la courbe d'animation.
Remarques
- Contrôle de la courbe de vitesse : La propriété animation-timing-function permet de définir la courbe de vitesse d'une animation, c'est-à-dire la manière dont les valeurs d'animation changent au fil du temps. Elle détermine si l'animation commence lentement, s'accélère, reste constante, ou ralentit vers la fin. Cela offre un moyen précis de personnaliser l'effet visuel de l'animation.
- Valeurs prédéfinies : animation-timing-function propose plusieurs valeurs prédéfinies courantes : ease, linear, ease-in, ease-out, et ease-in-out. Ces valeurs simplifient l'utilisation de courbes de vitesse standard : ease (commence lentement, accélère au milieu, puis ralentit à la fin), linear (l'animation se déroule à une vitesse constante), ease-in (l'animation commence lentement puis accélère), ease-out (l'animation commence rapidement puis ralentit) et ease-in-out (l'animation commence et termine lentement, avec une accélération au milieu).
- Courbes de Bézier personnalisées : Vous pouvez également utiliser des courbes de Bézier personnalisées avec la syntaxe cubic-bezier(x1, y1, x2, y2). Cela permet de définir des courbes de vitesse très précises en spécifiant les valeurs des points de contrôle de la courbe. Cela est particulièrement utile pour des animations complexes où les valeurs prédéfinies ne suffisent pas.
- Application à plusieurs animations : La propriété animation-timing-function peut être utilisée sur plusieurs animations appliquées à un même élément. Chaque animation peut avoir sa propre courbe de vitesse, permettant une grande flexibilité. Par exemple, vous pourriez avoir une animation s'accélérant et une autre ralentissant, appliquées simultanément à un même objet.
- Comportement par défaut : La valeur par défaut de animation-timing-function est ease. Cela signifie que si vous ne spécifiez pas de fonction de timing, l'animation suivra automatiquement une courbe commençant lentement, accélère et ralentit à la fin. Cette valeur par défaut est généralement suffisante pour des animations simples.
- Interaction avec animation-duration : animation-timing-function fonctionne en étroite relation avec animation-duration. Alors que animation-duration détermine combien de temps dure l'animation, animation-timing-function détermine la vitesse à laquelle l'animation progresse pendant cette durée. Ensemble, ces deux propriétés permettent de créer des animations plus dynamiques et intéressantes.
- Accessibilité et performances : L'animation d'un élément avec une fonction de timing complexe peut parfois avoir un impact sur les performances, surtout si l'animation est appliquée à des éléments multiples ou dans des environnements à faible puissance (comme les appareils mobiles). Des fonctions simples comme linear ou ease peuvent être plus efficaces dans ce cas. De plus, pour les utilisateurs sensibles aux animations, il est recommandé d'offrir une option pour désactiver ou simplifier ces effets.
- Compatibilité et préfixes : Bien que animation-timing-function soit largement supportée par les navigateurs modernes, il peut être nécessaire d'utiliser des préfixes comme -webkit- pour assurer la compatibilité avec certains anciens navigateurs, notamment les versions plus anciennes de Safari ou Android. Assurez-vous de tester les animations dans plusieurs navigateurs pour garantir une expérience cohérente.
Dernière mise à jour : Dimanche, le 20 décembre 2015