Linear() - Fonction CSS
Résumé des caractéristiques de la fonction linear()
animation-timing-function.linear() ne peut pas être animée.Schéma syntaxique de linear().
linear().Cliquez sur les termes du diagram pour plus de précision.
Sur le diagram, les termes en gras sont les termes prédéfinis de CSS, les autres sont décrits ci-dessous :
xest une valeur numérique sans unité.yest un pourcentage.- Plusieurs valeurs ou paires de valeurs peuvent être énoncées, séparées par des virgules. Il en faut au moins deux.
Description de la fonction linear().
linear() est une fonction d'accélération qui, comme son nom l'indique, est linéaire. Elle peut être utilisée avec animation-timing-function
ou transition-timing-function.
linear a tout d'abord été définie comme une valeur (niveau 1 de la spécification), au même titre que ease-in ou ease-out, etc. :
la progression était linéaire d'un bout à l'autre de l'animation. Le niveau 2 a ajouté des paramètres : les points de passage.
Mais la valeur linear peut toujours être utilisée : elle est équivalente à linear(0, 1).

linear(0, 0.2, 1)Exemple ne comportant que des valeurs uniques.

linear(0, 0.25 60%, 1)Exemple comportant une valeur double
La valeur linear() peut être utilisée avec les propriétés suivantes :
animation-timing-function: Définit la fonction d'accélération à utiliser pendant une animation.transition-timing-function: Propriété définissant la fonction d'accélération à utiliser pendant une transition.
Syntaxes de la fonction linear().
- <property>: linear;
On rappelle pour mémoire que la fonction
linear()peut être utilisée sans paramètre. Il faut alors omettre les parenthèses. La notation est alors équivalente àlinear(0, 1).
- <property>: linear(0, 0.2, 1);
Une série de valeurs sans unité, séparées par des virgules. Elles indiquent les valeurs
ydes points de rupture. Les valeursxétant réputées régulièrement espacées sur l'axe entre0et1. Il peut y avoir autant de valeurs que nécessaire mais elles doivent être énumérées dans l'ordre croissant.Ces valeurs ne peuvent pas être des pourcentages. Elles peuvent par contre être inférieures à
0ou supérieure à1.Deux valeurs au moins sont nécessaires à la fonction.

linear(0, 0.2, 1) - <property>: linear(0, 0.75 80%, 1);
Chaque paire de valeurs (entre virgule) correspond à des coordonnées des points de stop. La première valeur correspond à
y; elle peut être inférieure à0ou supérieure à1mais ce ne peut pas être des pourcentages. La deuxième valeur correspond àx; ce doit être un pourcentage, et c'est une valeur inférieure à0%ou supérieure à100%.Il est possible, comme c'est le cas sur notre exemple, de mixer la syntaxe précédente (valeurs simples) et cette syntaxe avec des paires de valeurs. Pour faire une syntaxe double avec le
0, pensez bien à écrirelinear(0 0%, ...).
linear(0, 0.25 60%, 1)
Exemples d'utilisation de la fonction linear().
Fonction quadratique.
La fonction linear() est particulièrement pratique pour approcher une courbe avec des segments de droite. Voici la fonction y = x²
réalisée avec dix segments de droite.
Fonction 1 / x.
C'est la même chose pour la fonction y = 1/ x. la valeur 0 n'a pas été exprimée pour éviter de créer la valeur infini.
Fonction y = x³.
On pourrait décliner les exemples à l'infini. Nos exemples comportent 10 points mais on peut en mettre autant que l'on veut.
Animation avec la fonction linear().
La fonction linear(), ne pouvant être utilisée que avec des propriétés servant à déclarer des animations, ne peut pas être animée.
Support de la fonction linear().
linear() qui définit une courbe d'accélération linéaire pour les propriétés animation-timing-function et transition-timing-function.linear()Navigateurs sur ordinateurs :
Navigateurs sur mobiles :
Navigateurs obsolètes ou marginaux :

UC Browser pour Androïd

Opéra Mobile

QQ Browser

Samsung Internet

Chrome

Edge

Safari

Opéra

Chrome pour Androïd

Safari sur IOS

Androïd Brower

Firefox pour Androïd

Firefox

KaiOS Browser
Historique de la fonction linear().
-
Module CSS - Fonctions d'accélération - Niveau 1
Définition delinearcomme une valeur (pas de paramètres) donnant simplement une fonction d'accélération linéaire.21 Février 2017Document de travail.30 Avril 2019Candidat à la recommandation. -
Module CSS - Fonctions d'accélération - Niveau 2
Ajout de paramètres pourlinear(), ce qui en fait une fonction.29 Août 2024Document de travail.
Voir aussi : autres fonctions d'accélération.
Fonctions :
animation-timing-function.


