Ce sont des propriété CSS3 permettant d'appliquer des changements de propriétés sur la durée. Ainsi la règle ci-dessous change la couleur de fond du paragraphe exemple au survol et ce en 2s.
p.transitionExample { background-color: tan; transition: background-color 2s }
p.transitionExample:hover { background-color: thistle }
Equitis Romani autem esse filium criminis loco poni ab accusatoribus neque his iudicantibus oportuit neque defendentibus nobis. Nam quod de pietate dixistis, est quidem ista nostra existimatio, sed iudicium certe parentis; quid nos opinemur, audietis ex iuratis; quid parentes sentiant, lacrimae matris incredibilisque maeror, squalor patris et haec praesens maestitia, quam cernitis, luctusque declarat.
transition comporte quatre valeurs :
transition-duration : temps de la transition en stransition-delay : temps d'attente avant la transitiontransition-property : la propriété visée par la transitiontransition-timing-function : courbe de vitesse de l'effettransform est une propriété CSS3 permettant d'appliquer une
transformation géométrique sur un élément. Les transformations les plus usuelles :
rotate( n deg ) où n est un nombre de degré (entre -360 et 360) :
fait pivoter l'élément de n degrés dans le plan. Les versions rotateX
et rotateY permettent les rotations suivant l'axe concerné.translate( x px, y px ) déplace l'élément de x pixels
sur l'axe des X et y pixels sur l'axe des Y. Cette propriété se décline aussi
en deux propriétés distinctes : translateX et translateYscale( x, y ) applique à l'élément un facteur x sur
la dimension en X et un facteur y sur la dimension en Y. Cette propriété se
décline aussi en deux propriétés distinctes : scaleX et scaleYanimation permet d'enchainer plusieurs changements de propriétés.
La méta propriété s'appuie sur une @-règle : @keyframes
permet de donner un nom à un découpage du temps en plusieurs frames,
chacune définissant des propriétés CSS. La propriété animation
consiste alors à appliquer ce découpage sur une durée et avec diverses autres options.
Ci-dessous un exemple où une div carré de 100x100 va passer du rouge au jaune en 4s :
@keyframes animationExample { from{background-color:red;} to{background-color:yellow;} }
div#carre { width:100px; height:100px; background-color:red;
animation: animationExample 4s infinite alternate;
}
Les différentes propriétés mises en oeuvre sont :
animation-nameanimation-durationanimation-delayanimation-iteration-countanimation-directionanimation-timing-functionanimation-fill-modeL'animation ne s'exécute qu'une seule fois. On utilise la propriété
animation-iteration-count pour spécifier le nombre de répétition
(infinite pour une exécution en boucle).