I. Traduction▲
Ce tutoriel est la traduction la plus fidèle possible du tutoriel original de Paul Underwood, Css animate effects we can learn from Animate.css.
II. Introduction▲
Dans ce tutoriel nous allons voir comment créer des animations visuelles attrayantes en CSS pour les utilisateurs grâce au projet Animate.css. Nous allons nous intéresser à plusieurs des plus populaires animations parmi les 53 que le projet propose, et ainsi proposer le code CSS correspondant à ces animations.
III. Animate.css▲
Le projet Animate.css peut être téléchargé sur GitHub : Animate.css.
Vous pouvez consulter la démonstration de Animate.css afin d'avoir un rendu dans un navigateur.
IV. L'animation « flash »▲
L'animation « flash » permet d'afficher et de masquer un élément grâce à la propriété CSS opacity.
@-webkit-keyframes
flash {
0
%,
50
%,
100
% {
opacity:
1
;}
25
%,
75
% {
opacity:
0
;}
}
@-moz-keyframes
flash {
0
%,
50
%,
100
% {
opacity:
1
;}
25
%,
75
% {
opacity:
0
;}
}
@-ms-keyframes
flash {
0
%,
50
%,
100
% {
opacity:
1
;}
25
%,
75
% {
opacity:
0
;}
}
@-o-keyframes
flash {
0
%,
50
%,
100
% {
opacity:
1
;}
25
%,
75
% {
opacity:
0
;}
}
@keyframes
flash {
0
%,
50
%,
100
% {
opacity:
1
;}
25
%,
75
% {
opacity:
0
;}
}
.flash
{
-webkit-animation-name:
flash 1
s;
-moz-animation-name:
flash 1
s;
-ms-animation-name:
flash 1
s;
-o-animation-name:
flash 1
s;
animation-name:
flash 1
s;
}
Vous pouvez consulter la démonstration de l'animation « flash » pour avoir un aperçu du rendu dans un navigateur.
V. L'animation « shake »▲
Cette animation va créer un effet de tremblement en faisant bouger l'élément de gauche à droite.
@-webkit-keyframes
shake {
0
%,
100
% {
-webkit-transform:
translateX
(
0
);}
10
%,
30
%,
50
%,
70
%,
90
% {
-webkit-transform:
translateX
(
-10px);}
20
%,
40
%,
60
%,
80
% {
-webkit-transform:
translateX
(
10
px);}
}
@-moz-keyframes
shake {
0
%,
100
% {
-moz-transform:
translateX
(
0
);}
10
%,
30
%,
50
%,
70
%,
90
% {
-moz-transform:
translateX
(
-10px);}
20
%,
40
%,
60
%,
80
% {
-moz-transform:
translateX
(
10
px);}
}
@-ms-keyframes
shake {
0
%,
100
% {
-ms-transform:
translateX
(
0
);}
10
%,
30
%,
50
%,
70
%,
90
% {
-ms-transform:
translateX
(
-10px);}
20
%,
40
%,
60
%,
80
% {
-ms-transform:
translateX
(
10
px);}
}
@-o-keyframes
shake {
0
%,
100
% {
-o-transform:
translateX
(
0
);}
10
%,
30
%,
50
%,
70
%,
90
% {
-o-transform:
translateX
(
-10px);}
20
%,
40
%,
60
%,
80
% {
-o-transform:
translateX
(
10
px);}
}
@keyframes
shake {
0
%,
100
% {
transform:
translateX
(
0
);}
10
%,
30
%,
50
%,
70
%,
90
% {
transform:
translateX
(
-10px);}
20
%,
40
%,
60
%,
80
% {
transform:
translateX
(
10
px);}
}
.shake
{
-webkit-animation-name:
shake;
-moz-animation-name:
shake;
-ms-animation-name:
shake;
-o-animation-name:
shake;
animation-name:
shake;
}
Vous pouvez consulter la démonstration de l'animation « shake » pour avoir un aperçu du rendu dans un navigateur.
VI. L'animation « bounce »▲
Cette animation fait rebondir votre élément HTML.
@-webkit-keyframes
bounce {
0
%,
20
%,
50
%,
80
%,
100
% {
-webkit-transform:
translateY
(
0
);}
40
% {
-webkit-transform:
translateY
(
-30px);}
60
% {
-webkit-transform:
translateY
(
-15px);}
}
@-moz-keyframes
bounce {
0
%,
20
%,
50
%,
80
%,
100
% {
-moz-transform:
translateY
(
0
);}
40
% {
-moz-transform:
translateY
(
-30px);}
60
% {
-moz-transform:
translateY
(
-15px);}
}
@-ms-keyframes
bounce {
0
%,
20
%,
50
%,
80
%,
100
% {
-ms-transform:
translateY
(
0
);}
40
% {
-ms-transform:
translateY
(
-30px);}
60
% {
-ms-transform:
translateY
(
-15px);}
}
@-o-keyframes
bounce {
0
%,
20
%,
50
%,
80
%,
100
% {
-o-transform:
translateY
(
0
);}
40
% {
-o-transform:
translateY
(
-30px);}
60
% {
-o-transform:
translateY
(
-15px);}
}
@keyframes
bounce {
0
%,
20
%,
50
%,
80
%,
100
% {
transform:
translateY
(
0
);}
40
% {
transform:
translateY
(
-30px);}
60
% {
transform:
translateY
(
-15px);}
}
.bounce
{
-webkit-animation-name:
bounce;
-moz-animation-name:
bounce;
-ms-animation-name:
bounce;
-o-animation-name:
bounce;
animation-name:
bounce;
}
Vous pouvez consulter la démonstration de l'animation « bounce » pour avoir un aperçu du rendu dans un navigateur.
VII. L'animation « swing »▲
Cette animation fait osciller votre élément de gauche à droite.
@-webkit-keyframes
swing {
20
%,
40
%,
60
%,
80
%,
100
% {
-webkit-transform-origin:
top
center
;
}
20
% {
-webkit-transform:
rotate
(
15
deg);
}
40
% {
-webkit-transform:
rotate
(
-10deg);
}
60
% {
-webkit-transform:
rotate
(
5
deg);
}
80
% {
-webkit-transform:
rotate
(
-5deg);
}
100
% {
-webkit-transform:
rotate
(
0
deg);
}
}
@-moz-keyframes
swing {
20
% {
-moz-transform:
rotate
(
15
deg);
}
40
% {
-moz-transform:
rotate
(
-10deg);
}
60
% {
-moz-transform:
rotate
(
5
deg);
}
80
% {
-moz-transform:
rotate
(
-5deg);
}
100
% {
-moz-transform:
rotate
(
0
deg);
}
}
@-ms-keyframes
swing {
20
% {
-ms-transform:
rotate
(
15
deg);
}
40
% {
-ms-transform:
rotate
(
-10deg);
}
60
% {
-ms-transform:
rotate
(
5
deg);
}
80
% {
-ms-transform:
rotate
(
-5deg);
}
100
% {
-ms-transform:
rotate
(
0
deg);
}
}
@-o-keyframes
swing {
20
% {
-o-transform:
rotate
(
15
deg);
}
40
% {
-o-transform:
rotate
(
-10deg);
}
60
% {
-o-transform:
rotate
(
5
deg);
}
80
% {
-o-transform:
rotate
(
-5deg);
}
100
% {
-o-transform:
rotate
(
0
deg);
}
}
@keyframes
swing {
20
% {
transform:
rotate
(
15
deg);
}
40
% {
transform:
rotate
(
-10deg);
}
60
% {
transform:
rotate
(
5
deg);
}
80
% {
transform:
rotate
(
-5deg);
}
100
% {
transform:
rotate
(
0
deg);
}
}
.swing
{
-webkit-transform-origin:
top
center
;
-moz-transform-origin:
top
center
;
-ms-transform-origin:
top
center
;
-o-transform-origin:
top
center
;
transform-origin:
top
center
;
-webkit-animation-name:
swing;
-moz-animation-name:
swing;
-ms-animation-name:
swing;
-o-animation-name:
swing;
animation-name:
swing;
}
Vous pouvez consulter la démonstration de l'animation « swing » pour avoir un aperçu du rendu dans un navigateur.
VIII. L'animation « wobble »▲
Cette animation fait remuer votre élément HTML.
@-webkit-keyframes
wobble {
0
% {
-webkit-transform:
translateX
(
0
%);
}
15
% {
-webkit-transform:
translateX
(
-25%)
rotate
(
-5deg);
}
30
% {
-webkit-transform:
translateX
(
20
%)
rotate
(
3
deg);
}
45
% {
-webkit-transform:
translateX
(
-15%)
rotate
(
-3deg);
}
60
% {
-webkit-transform:
translateX
(
10
%)
rotate
(
2
deg);
}
75
% {
-webkit-transform:
translateX
(
-5%)
rotate
(
-1deg);
}
100
% {
-webkit-transform:
translateX
(
0
%);
}
}
@-moz-keyframes
wobble {
0
% {
-moz-transform:
translateX
(
0
%);
}
15
% {
-moz-transform:
translateX
(
-25%)
rotate
(
-5deg);
}
30
% {
-moz-transform:
translateX
(
20
%)
rotate
(
3
deg);
}
45
% {
-moz-transform:
translateX
(
-15%)
rotate
(
-3deg);
}
60
% {
-moz-transform:
translateX
(
10
%)
rotate
(
2
deg);
}
75
% {
-moz-transform:
translateX
(
-5%)
rotate
(
-1deg);
}
100
% {
-moz-transform:
translateX
(
0
%);
}
}
@-ms-keyframes
wobble {
0
% {
-ms-transform:
translateX
(
0
%);
}
15
% {
-ms-transform:
translateX
(
-25%)
rotate
(
-5deg);
}
30
% {
-ms-transform:
translateX
(
20
%)
rotate
(
3
deg);
}
45
% {
-ms-transform:
translateX
(
-15%)
rotate
(
-3deg);
}
60
% {
-ms-transform:
translateX
(
10
%)
rotate
(
2
deg);
}
75
% {
-ms-transform:
translateX
(
-5%)
rotate
(
-1deg);
}
100
% {
-ms-transform:
translateX
(
0
%);
}
}
@-o-keyframes
wobble {
0
% {
-o-transform:
translateX
(
0
%);
}
15
% {
-o-transform:
translateX
(
-25%)
rotate
(
-5deg);
}
30
% {
-o-transform:
translateX
(
20
%)
rotate
(
3
deg);
}
45
% {
-o-transform:
translateX
(
-15%)
rotate
(
-3deg);
}
60
% {
-o-transform:
translateX
(
10
%)
rotate
(
2
deg);
}
75
% {
-o-transform:
translateX
(
-5%)
rotate
(
-1deg);
}
100
% {
-o-transform:
translateX
(
0
%);
}
}
@keyframes
wobble {
0
% {
transform:
translateX
(
0
%);
}
15
% {
transform:
translateX
(
-25%)
rotate
(
-5deg);
}
30
% {
transform:
translateX
(
20
%)
rotate
(
3
deg);
}
45
% {
transform:
translateX
(
-15%)
rotate
(
-3deg);
}
60
% {
transform:
translateX
(
10
%)
rotate
(
2
deg);
}
75
% {
transform:
translateX
(
-5%)
rotate
(
-1deg);
}
100
% {
transform:
translateX
(
0
%);
}
}
.wobble
{
-webkit-animation-name:
wobble;
-moz-animation-name:
wobble;
-ms-animation-name:
wobble;
-o-animation-name:
wobble;
animation-name:
wobble;
}
Vous pouvez consulter la démonstration de l'animation « wobble » pour avoir un aperçu du rendu dans un navigateur.
IX. L'animation « pulse »▲
Cette animation crée un effet de pulsation sur votre élément HTML.
@-webkit-keyframes
pulse {
0
% {
-webkit-transform:
scale
(
1
);
}
50
% {
-webkit-transform:
scale
(
1.1
);
}
100
% {
-webkit-transform:
scale
(
1
);
}
}
@-moz-keyframes
pulse {
0
% {
-moz-transform:
scale
(
1
);
}
50
% {
-moz-transform:
scale
(
1.1
);
}
100
% {
-moz-transform:
scale
(
1
);
}
}
@-ms-keyframes
pulse {
0
% {
-ms-transform:
scale
(
1
);
}
50
% {
-ms-transform:
scale
(
1.1
);
}
100
% {
-ms-transform:
scale
(
1
);
}
}
@-o-keyframes
pulse {
0
% {
-o-transform:
scale
(
1
);
}
50
% {
-o-transform:
scale
(
1.1
);
}
100
% {
-o-transform:
scale
(
1
);
}
}
@keyframes
pulse {
0
% {
transform:
scale
(
1
);
}
50
% {
transform:
scale
(
1.1
);
}
100
% {
transform:
scale
(
1
);
}
}
.pulse
{
-webkit-animation-name:
pulse;
-moz-animation-name:
pulse;
-ms-animation-name:
pulse;
-o-animation-name:
pulse;
animation-name:
pulse;
}
Vous pouvez consulter la démonstration de l'animation « pulse » pour avoir un aperçu du rendu dans un navigateur.
X. L'animation « flip »▲
Cette animation fait basculer votre élément HTML ; pour ce faire nous utilisons des transformations 3D qui ne sont pas compatibles avec les anciennes versions des navigateurs.
@-webkit-keyframes
flip {
0
% {
-webkit-transform:
perspective(
400
px)
rotateY
(
0
);
-webkit-animation-timing-function:
ease-out
;
}
40
% {
-webkit-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
170
deg);
-webkit-animation-timing-function:
ease-out
;
}
50
% {
-webkit-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
190
deg)
scale
(
1
);
-webkit-animation-timing-function:
ease-in
;
}
80
% {
-webkit-transform:
perspective(
400
px)
rotateY
(
360
deg)
scale
(
.95);
-webkit-animation-timing-function:
ease-in
;
}
100
% {
-webkit-transform:
perspective(
400
px)
scale
(
1
);
-webkit-animation-timing-function:
ease-in
;
}
}
@-moz-keyframes
flip {
0
% {
-moz-transform:
perspective(
400
px)
rotateY
(
0
);
-moz-animation-timing-function:
ease-out
;
}
40
% {
-moz-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
170
deg);
-moz-animation-timing-function:
ease-out
;
}
50
% {
-moz-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
190
deg)
scale
(
1
);
-moz-animation-timing-function:
ease-in
;
}
80
% {
-moz-transform:
perspective(
400
px)
rotateY
(
360
deg)
scale
(
.95);
-moz-animation-timing-function:
ease-in
;
}
100
% {
-moz-transform:
perspective(
400
px)
scale
(
1
);
-moz-animation-timing-function:
ease-in
;
}
}
@-ms-keyframes
flip {
0
% {
-ms-transform:
perspective(
400
px)
rotateY
(
0
);
-ms-animation-timing-function:
ease-out
;
}
40
% {
-ms-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
170
deg);
-ms-animation-timing-function:
ease-out
;
}
50
% {
-ms-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
190
deg)
scale
(
1
);
-ms-animation-timing-function:
ease-in
;
}
80
% {
-ms-transform:
perspective(
400
px)
rotateY
(
360
deg)
scale
(
.95);
-ms-animation-timing-function:
ease-in
;
}
100
% {
-ms-transform:
perspective(
400
px)
scale
(
1
);
-ms-animation-timing-function:
ease-in
;
}
}
@-o-keyframes
flip {
0
% {
-o-transform:
perspective(
400
px)
rotateY
(
0
);
-o-animation-timing-function:
ease-out
;
}
40
% {
-o-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
170
deg);
-o-animation-timing-function:
ease-out
;
}
50
% {
-o-transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
190
deg)
scale
(
1
);
-o-animation-timing-function:
ease-in
;
}
80
% {
-o-transform:
perspective(
400
px)
rotateY
(
360
deg)
scale
(
.95);
-o-animation-timing-function:
ease-in
;
}
100
% {
-o-transform:
perspective(
400
px)
scale
(
1
);
-o-animation-timing-function:
ease-in
;
}
}
@keyframes
flip {
0
% {
transform:
perspective(
400
px)
rotateY
(
0
);
animation-timing-function:
ease-out
;
}
40
% {
transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
170
deg);
animation-timing-function:
ease-out
;
}
50
% {
transform:
perspective(
400
px)
translateZ
(
150
px)
rotateY
(
190
deg)
scale
(
1
);
animation-timing-function:
ease-in
;
}
80
% {
transform:
perspective(
400
px)
rotateY
(
360
deg)
scale
(
.95);
animation-timing-function:
ease-in
;
}
100
% {
transform:
perspective(
400
px)
scale
(
1
);
animation-timing-function:
ease-in
;
}
}
.flip
{
-webkit-backface-visibility:
visible
!important;
-webkit-animation-name:
flip
;
-moz-backface-visibility:
visible
!important;
-moz-animation-name:
flip
;
-ms-backface-visibility:
visible
!important;
-ms-animation-name:
flip
;
-o-backface-visibility:
visible
!important;
-o-animation-name:
flip
;
backface-visibility:
visible
!important;
animation-name:
flip
;
}
Vous pouvez consulter la démonstration de l'animation « flip » pour avoir un aperçu du rendu dans un navigateur.
XI. L'animation « fade in down »▲
Cette animation fait apparaître votre élément HTML en fondu vers le bas.
@-webkit-keyframes
fadeInDown {
0
% {
opacity:
0
;
-webkit-transform:
translateY
(
-20px);
}
100
% {
opacity:
1
;
-webkit-transform:
translateY
(
0
);
}
}
@-moz-keyframes
fadeInDown {
0
% {
opacity:
0
;
-moz-transform:
translateY
(
-20px);
}
100
% {
opacity:
1
;
-moz-transform:
translateY
(
0
);
}
}
@-ms-keyframes
fadeInDown {
0
% {
opacity:
0
;
-ms-transform:
translateY
(
-20px);
}
100
% {
opacity:
1
;
-ms-transform:
translateY
(
0
);
}
}
@-o-keyframes
fadeInDown {
0
% {
opacity:
0
;
-ms-transform:
translateY
(
-20px);
}
100
% {
opacity:
1
;
-ms-transform:
translateY
(
0
);
}
}
@keyframes
fadeInDown {
0
% {
opacity:
0
;
transform:
translateY
(
-20px);
}
100
% {
opacity:
1
;
transform:
translateY
(
0
);
}
}
.fadeInDown
{
-webkit-animation-name:
fadeInDown;
-moz-animation-name:
fadeInDown;
-ms-animation-name:
fadeInDown;
-o-animation-name:
fadeInDown;
animation-name:
fadeInDown;
}
Vous pouvez consulter la démonstration de l'animation « fade in down » pour avoir un aperçu du rendu dans un navigateur.
XII. L'animation « fade in left »▲
Cette animation fait apparaître votre élément HTML en fondu vers la gauche.
@-webkit-keyframes
fadeInLeft {
0
% {
opacity:
0
;
-webkit-transform:
translateX
(
-20px);
}
100
% {
opacity:
1
;
-webkit-transform:
translateX
(
0
);
}
}
@-moz-keyframes
fadeInLeft {
0
% {
opacity:
0
;
-moz-transform:
translateX
(
-20px);
}
100
% {
opacity:
1
;
-moz-transform:
translateX
(
0
);
}
}
@-ms-keyframes
fadeInLeft {
0
% {
opacity:
0
;
-ms-transform:
translateX
(
-20px);
}
100
% {
opacity:
1
;
-ms-transform:
translateX
(
0
);
}
}
@-o-keyframes
fadeInLeft {
0
% {
opacity:
0
;
-o-transform:
translateX
(
-20px);
}
100
% {
opacity:
1
;
-o-transform:
translateX
(
0
);
}
}
@keyframes
fadeInLeft {
0
% {
opacity:
0
;
transform:
translateX
(
-20px);
}
100
% {
opacity:
1
;
transform:
translateX
(
0
);
}
}
.fadeInLeft
{
-webkit-animation-name:
fadeInLeft;
-moz-animation-name:
fadeInLeft;
-ms-animation-name:
fadeInLeft;
-o-animation-name:
fadeInLeft;
animation-name:
fadeInLeft;
}
Vous pouvez consulter la démonstration de l'animation « fade in left » pour avoir un aperçu du rendu dans un navigateur.
XIII. L'animation « fade in down big »▲
Cette animation est similaire à l'animation « fade in down » à ceci près qu'elle fait apparaître votre élément depuis le haut de la page.
@-webkit-keyframes
fadeInDownBig {
0
% {
opacity:
0
;
-webkit-transform:
translateY
(
-2000px);
}
100
% {
opacity:
1
;
-webkit-transform:
translateY
(
0
);
}
}
@-moz-keyframes
fadeInDownBig {
0
% {
opacity:
0
;
-moz-transform:
translateY
(
-2000px);
}
100
% {
opacity:
1
;
-moz-transform:
translateY
(
0
);
}
}
@-ms-keyframes
fadeInDownBig {
0
% {
opacity:
0
;
-ms-transform:
translateY
(
-2000px);
}
100
% {
opacity:
1
;
-ms-transform:
translateY
(
0
);
}
}
@-o-keyframes
fadeInDownBig {
0
% {
opacity:
0
;
-o-transform:
translateY
(
-2000px);
}
100
% {
opacity:
1
;
-o-transform:
translateY
(
0
);
}
}
@keyframes
fadeInDownBig {
0
% {
opacity:
0
;
transform:
translateY
(
-2000px);
}
100
% {
opacity:
1
;
transform:
translateY
(
0
);
}
}
.fadeInDownBig
{
-webkit-animation-name:
fadeInDownBig;
-moz-animation-name:
fadeInDownBig;
-ms-animation-name:
fadeInDownBig;
-o-animation-name:
fadeInDownBig;
animation-name:
fadeInDownBig;
}
Vous pouvez consulter la démonstration de l'animation « fade in down big » pour avoir un aperçu du rendu dans un navigateur.
XIV. L'animation « fade in left big »▲
Cette animation fait apparaître votre élément HTML en fondu de la gauche de la page vers le centre.
@-webkit-keyframes
fadeInLeftBig {
0
% {
opacity:
0
;
-webkit-transform:
translateX
(
-2000px);
}
100
% {
opacity:
1
;
-webkit-transform:
translateX
(
0
);
}
}
@-moz-keyframes
fadeInLeftBig {
0
% {
opacity:
0
;
-moz-transform:
translateX
(
-2000px);
}
100
% {
opacity:
1
;
-moz-transform:
translateX
(
0
);
}
}
@-ms-keyframes
fadeInLeftBig {
0
% {
opacity:
0
;
-ms-transform:
translateX
(
-2000px);
}
100
% {
opacity:
1
;
-ms-transform:
translateX
(
0
);
}
}
@-o-keyframes
fadeInLeftBig {
0
% {
opacity:
0
;
-o-transform:
translateX
(
-2000px);
}
100
% {
opacity:
1
;
-o-transform:
translateX
(
0
);
}
}
@keyframes
fadeInLeftBig {
0
% {
opacity:
0
;
transform:
translateX
(
-2000px);
}
100
% {
opacity:
1
;
transform:
translateX
(
0
);
}
}
.fadeInLeftBig
{
-webkit-animation-name:
fadeInLeftBig;
-moz-animation-name:
fadeInLeftBig;
-ms-animation-name:
fadeInLeftBig;
-o-animation-name:
fadeInLeftBig;
animation-name:
fadeInLeftBig;
}
Vous pouvez consulter la démonstration de l'animation « fade in left big » pour avoir un aperçu du rendu dans un navigateur.
XV. L'animation « fade out »▲
Cette animation fait disparaître votre élément HTML en fondu.
@-webkit-keyframes
fadeOut {
0
% {
opacity:
1
;}
100
% {
opacity:
0
;}
}
@-moz-keyframes
fadeOut {
0
% {
opacity:
1
;}
100
% {
opacity:
0
;}
}
@-ms-keyframes
fadeOut {
0
% {
opacity:
1
;}
100
% {
opacity:
0
;}
}
@-o-keyframes
fadeOut {
0
% {
opacity:
1
;}
100
% {
opacity:
0
;}
}
@keyframes
fadeOut {
0
% {
opacity:
1
;}
100
% {
opacity:
0
;}
}
.fadeOut
{
-webkit-animation-name:
fadeOut;
-moz-animation-name:
fadeOut;
-ms-animation-name:
fadeOut;
-o-animation-name:
fadeOut;
animation-name:
fadeOut;
}
Vous pouvez consulter la démonstration de l'animation « fade out » pour avoir un aperçu du rendu dans un navigateur.
XVI. L'animation « fade out down big »▲
Cette animation fait disparaître votre élément en fondu vers le bas de la page.
@-webkit-keyframes
fadeOutDownBig {
0
% {
opacity:
1
;
-webkit-transform:
translateY
(
0
);
}
100
% {
opacity:
0
;
-webkit-transform:
translateY
(
2000
px);
}
}
@-moz-keyframes
fadeOutDownBig {
0
% {
opacity:
1
;
-moz-transform:
translateY
(
0
);
}
100
% {
opacity:
0
;
-moz-transform:
translateY
(
2000
px);
}
}
@-ms-keyframes
fadeOutDownBig {
0
% {
opacity:
1
;
-ms-transform:
translateY
(
0
);
}
100
% {
opacity:
0
;
-ms-transform:
translateY
(
2000
px);
}
}
@-o-keyframes
fadeOutDownBig {
0
% {
opacity:
1
;
-o-transform:
translateY
(
0
);
}
100
% {
opacity:
0
;
-o-transform:
translateY
(
2000
px);
}
}
@keyframes
fadeOutDownBig {
0
% {
opacity:
1
;
transform:
translateY
(
0
);
}
100
% {
opacity:
0
;
transform:
translateY
(
2000
px);
}
}
.fadeOutDownBig
{
-webkit-animation-name:
fadeOutDownBig;
-moz-animation-name:
fadeOutDownBig;
-ms-animation-name:
fadeOutDownBig;
-o-animation-name:
fadeOutDownBig;
animation-name:
fadeOutDownBig;
}
Vous pouvez consulter la démonstration de l'animation « fade out down big » pour avoir un aperçu du rendu dans un navigateur.
XVII. L'animation « fade out right big »▲
Cette animation est similaire à la précédente à ceci près que l'élément disparaît vers la droite de la page.
@-webkit-keyframes
fadeOutRightBig {
0
% {
opacity:
1
;
-webkit-transform:
translateX
(
0
);
}
100
% {
opacity:
0
;
-webkit-transform:
translateX
(
2000
px);
}
}
@-moz-keyframes
fadeOutRightBig {
0
% {
opacity:
1
;
-moz-transform:
translateX
(
0
);
}
100
% {
opacity:
0
;
-moz-transform:
translateX
(
2000
px);
}
}
@-ms-keyframes
fadeOutRightBig {
0
% {
opacity:
1
;
-ms-transform:
translateX
(
0
);
}
100
% {
opacity:
0
;
-ms-transform:
translateX
(
2000
px);
}
}
@-o-keyframes
fadeOutRightBig {
0
% {
opacity:
1
;
-o-transform:
translateX
(
0
);
}
100
% {
opacity:
0
;
-o-transform:
translateX
(
2000
px);
}
}
@keyframes
fadeOutRightBig {
0
% {
opacity:
1
;
transform:
translateX
(
0
);
}
100
% {
opacity:
0
;
transform:
translateX
(
2000
px);
}
}
.fadeOutRightBig
{
-webkit-animation-name:
fadeOutRightBig;
-moz-animation-name:
fadeOutRightBig;
-ms-animation-name:
fadeOutRightBig;
-o-animation-name:
fadeOutRightBig;
animation-name:
fadeOutRightBig;
}
Vous pouvez consulter la démonstration de l'animation « fade out right big » pour avoir un aperçu du rendu dans un navigateur.
XVIII. L'animation « bounce in »▲
Cette animation fait apparaître votre élément HTML avec un rebond.
@-webkit-keyframes
bounceIn {
0
% {
opacity:
0
;
-webkit-transform:
scale
(
.3);
}
50
% {
opacity:
1
;
-webkit-transform:
scale
(
1.05
);
}
70
% {
-webkit-transform:
scale
(
.9);
}
100
% {
-webkit-transform:
scale
(
1
);
}
}
@-moz-keyframes
bounceIn {
0
% {
opacity:
0
;
-moz-transform:
scale
(
.3);
}
50
% {
opacity:
1
;
-moz-transform:
scale
(
1.05
);
}
70
% {
-moz-transform:
scale
(
.9);
}
100
% {
-moz-transform:
scale
(
1
);
}
}
@-ms-keyframes
bounceIn {
0
% {
opacity:
0
;
-ms-transform:
scale
(
.3);
}
50
% {
opacity:
1
;
-ms-transform:
scale
(
1.05
);
}
70
% {
-ms-transform:
scale
(
.9);
}
100
% {
-ms-transform:
scale
(
1
);
}
}
@-o-keyframes
bounceIn {
0
% {
opacity:
0
;
-o-transform:
scale
(
.3);
}
50
% {
opacity:
1
;
-o-transform:
scale
(
1.05
);
}
70
% {
-o-transform:
scale
(
.9);
}
100
% {
-o-transform:
scale
(
1
);
}
}
@keyframes
bounceIn {
0
% {
opacity:
0
;
transform:
scale
(
.3);
}
50
% {
opacity:
1
;
transform:
scale
(
1.05
);
}
70
% {
transform:
scale
(
.9);
}
100
% {
transform:
scale
(
1
);
}
}
.bounceIn
{
-webkit-animation-name:
bounceIn;
-moz-animation-name:
bounceIn;
-ms-animation-name:
bounceIn;
-o-animation-name:
bounceIn;
animation-name:
bounceIn;
}
Vous pouvez consulter la démonstration de l'animation « bounce in » pour avoir un aperçu du rendu dans un navigateur.
XIX. L'animation « bounce in right »▲
Cette animation est similaire à la précédente à ceci près qu'elle fait rebondir l'élément depuis la droite de la page.
@-webkit-keyframes
bounceInRight {
0
% {
opacity:
0
;
-webkit-transform:
translateX
(
2000
px);
}
60
% {
opacity:
1
;
-webkit-transform:
translateX
(
-30px);
}
80
% {
-webkit-transform:
translateX
(
10
px);
}
100
% {
-webkit-transform:
translateX
(
0
);
}
}
@-moz-keyframes
bounceInRight {
0
% {
opacity:
0
;
-moz-transform:
translateX
(
2000
px);
}
60
% {
opacity:
1
;
-moz-transform:
translateX
(
-30px);
}
80
% {
-moz-transform:
translateX
(
10
px);
}
100
% {
-moz-transform:
translateX
(
0
);
}
}
@-ms-keyframes
bounceInRight {
0
% {
opacity:
0
;
-ms-transform:
translateX
(
2000
px);
}
60
% {
opacity:
1
;
-ms-transform:
translateX
(
-30px);
}
80
% {
-ms-transform:
translateX
(
10
px);
}
100
% {
-ms-transform:
translateX
(
0
);
}
}
@-o-keyframes
bounceInRight {
0
% {
opacity:
0
;
-o-transform:
translateX
(
2000
px);
}
60
% {
opacity:
1
;
-o-transform:
translateX
(
-30px);
}
80
% {
-o-transform:
translateX
(
10
px);
}
100
% {
-o-transform:
translateX
(
0
);
}
}
@keyframes
bounceInRight {
0
% {
opacity:
0
;
transform:
translateX
(
2000
px);
}
60
% {
opacity:
1
;
transform:
translateX
(
-30px);
}
80
% {
transform:
translateX
(
10
px);
}
100
% {
transform:
translateX
(
0
);
}
}
.bounceInRight
{
-webkit-animation-name:
bounceInRight;
-moz-animation-name:
bounceInRight;
-ms-animation-name:
bounceInRight;
-o-animation-name:
bounceInRight;
animation-name:
bounceInRight;
}
Vous pouvez consulter la démonstration de l'animation « bounce in right » pour avoir un aperçu du rendu dans un navigateur.
XX. L'animation « bounce out »▲
Cette animation fait disparaître votre élément de l'écran en le faisant rebondir.
@-webkit-keyframes
bounceOut {
0
% {
-webkit-transform:
scale
(
1
);
}
25
% {
-webkit-transform:
scale
(
.95);
}
50
% {
opacity:
1
;
-webkit-transform:
scale
(
1.1
);
}
100
% {
opacity:
0
;
-webkit-transform:
scale
(
.3);
}
}
@-moz-keyframes
bounceOut {
0
% {
-moz-transform:
scale
(
1
);
}
25
% {
-moz-transform:
scale
(
.95);
}
50
% {
opacity:
1
;
-moz-transform:
scale
(
1.1
);
}
100
% {
opacity:
0
;
-moz-transform:
scale
(
.3);
}
}
@-ms-keyframes
bounceOut {
0
% {
-ms-transform:
scale
(
1
);
}
25
% {
-ms-transform:
scale
(
.95);
}
50
% {
opacity:
1
;
-ms-transform:
scale
(
1.1
);
}
100
% {
opacity:
0
;
-ms-transform:
scale
(
.3);
}
}
@-o-keyframes
bounceOut {
0
% {
-o-transform:
scale
(
1
);
}
25
% {
-o-transform:
scale
(
.95);
}
50
% {
opacity:
1
;
-o-transform:
scale
(
1.1
);
}
100
% {
opacity:
0
;
-o-transform:
scale
(
.3);
}
}
@keyframes
bounceOut {
0
% {
transform:
scale
(
1
);
}
25
% {
transform:
scale
(
.95);
}
50
% {
opacity:
1
;
transform:
scale
(
1.1
);
}
100
% {
opacity:
0
;
transform:
scale
(
.3);
}
}
.bounceOut
{
-webkit-animation-name:
bounceOut;
-moz-animation-name:
bounceOut;
-ms-animation-name:
bounceOut;
-o-animation-name:
bounceOut;
animation-name:
bounceOut;
}
Vous pouvez consulter la démonstration de l'animation « bounce out » pour avoir un aperçu du rendu dans un navigateur.
XXI. L'animation « bounce out down »▲
Cette animation est similaire à l'animation « bounce out » à ceci près qu'elle fait disparaître votre élément vers le bas de la page.
@-webkit-keyframes
bounceOutDown {
0
% {
-webkit-transform:
translateY
(
0
);
}
20
% {
opacity:
1
;
-webkit-transform:
translateY
(
-20px);
}
100
% {
opacity:
0
;
-webkit-transform:
translateY
(
2000
px);
}
}
@-moz-keyframes
bounceOutDown {
0
% {
-moz-transform:
translateY
(
0
);
}
20
% {
opacity:
1
;
-moz-transform:
translateY
(
-20px);
}
100
% {
opacity:
0
;
-moz-transform:
translateY
(
2000
px);
}
}
@-ms-keyframes
bounceOutDown {
0
% {
-ms-transform:
translateY
(
0
);
}
20
% {
opacity:
1
;
-ms-transform:
translateY
(
-20px);
}
100
% {
opacity:
0
;
-ms-transform:
translateY
(
2000
px);
}
}
@keyframes
bounceOutDown {
0
% {
transform:
translateY
(
0
);
}
20
% {
opacity:
1
;
transform:
translateY
(
-20px);
}
100
% {
opacity:
0
;
transform:
translateY
(
2000
px);
}
}
.bounceOutDown
{
-webkit-animation-name:
bounceOutDown;
-moz-animation-name:
bounceOutDown;
-ms-animation-name:
bounceOutDown;
animation-name:
bounceOutDown;
}
Vous pouvez consulter la démonstration de l'animation « bounce out down » pour avoir un aperçu du rendu dans un navigateur.
XXII. L'animation « rotate in down left »▲
Cette animation fait apparaître votre élément HTML en tournant de la gauche vers la droite en partant du haut.
@-webkit-keyframes
rotateInDownLeft {
0
% {
-webkit-transform-origin:
left
bottom
;
-webkit-transform:
rotate
(
-90deg);
opacity:
0
;
}
100
% {
-webkit-transform-origin:
left
bottom
;
-webkit-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-moz-keyframes
rotateInDownLeft {
0
% {
-moz-transform-origin:
left
bottom
;
-moz-transform:
rotate
(
-90deg);
opacity:
0
;
}
100
% {
-moz-transform-origin:
left
bottom
;
-moz-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-ms-keyframes
rotateInDownLeft {
0
% {
-ms-transform-origin:
left
bottom
;
-ms-transform:
rotate
(
-90deg);
opacity:
0
;
}
100
% {
-ms-transform-origin:
left
bottom
;
-ms-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-o-keyframes
rotateInDownLeft {
0
% {
-o-transform-origin:
left
bottom
;
-o-transform:
rotate
(
-90deg);
opacity:
0
;
}
100
% {
-o-transform-origin:
left
bottom
;
-o-transform:
rotate
(
0
);
opacity:
1
;
}
}
@keyframes
rotateInDownLeft {
0
% {
transform-origin:
left
bottom
;
transform:
rotate
(
-90deg);
opacity:
0
;
}
100
% {
transform-origin:
left
bottom
;
transform:
rotate
(
0
);
opacity:
1
;
}
}
.rotateInDownLeft
{
-webkit-animation-name:
rotateInDownLeft;
-moz-animation-name:
rotateInDownLeft;
-ms-animation-name:
rotateInDownLeft;
-o-animation-name:
rotateInDownLeft;
animation-name:
rotateInDownLeft;
}
Vous pouvez consulter la démonstration de l'animation « rotate in down left » pour avoir un aperçu du rendu dans un navigateur.
XXIII. L'animation « rotate in up left »▲
Cette animation est similaire à la précédente à ceci près que la rotation va de bas en haut.
@-webkit-keyframes
rotateInUpLeft {
0
% {
-webkit-transform-origin:
left
bottom
;
-webkit-transform:
rotate
(
90
deg);
opacity:
0
;
}
100
% {
-webkit-transform-origin:
left
bottom
;
-webkit-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-moz-keyframes
rotateInUpLeft {
0
% {
-moz-transform-origin:
left
bottom
;
-moz-transform:
rotate
(
90
deg);
opacity:
0
;
}
100
% {
-moz-transform-origin:
left
bottom
;
-moz-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-ms-keyframes
rotateInUpLeft {
0
% {
-ms-transform-origin:
left
bottom
;
-ms-transform:
rotate
(
90
deg);
opacity:
0
;
}
100
% {
-ms-transform-origin:
left
bottom
;
-ms-transform:
rotate
(
0
);
opacity:
1
;
}
}
@-o-keyframes
rotateInUpLeft {
0
% {
-o-transform-origin:
left
bottom
;
-o-transform:
rotate
(
90
deg);
opacity:
0
;
}
100
% {
-o-transform-origin:
left
bottom
;
-o-transform:
rotate
(
0
);
opacity:
1
;
}
}
@keyframes
rotateInUpLeft {
0
% {
transform-origin:
left
bottom
;
transform:
rotate
(
90
deg);
opacity:
0
;
}
100
% {
transform-origin:
left
bottom
;
transform:
rotate
(
0
);
opacity:
1
;
}
}
.rotateInUpLeft
{
-webkit-animation-name:
rotateInUpLeft;
-moz-animation-name:
rotateInUpLeft;
-ms-animation-name:
rotateInUpLeft;
-o-animation-name:
rotateInUpLeft;
animation-name:
rotateInUpLeft;
}
Vous pouvez consulter la démonstration de l'animation « rotate in up left » pour avoir un aperçu du rendu dans un navigateur.
XXIV. L'animation « hinge »▲
Cette animation fait disparaître votre élément HTML en le faisant tomber vers le bas de la page.
@-webkit-keyframes
hinge {
0
% {
-webkit-transform:
rotate
(
0
);
-webkit-transform-origin:
top
left
;
-webkit-animation-timing-function:
ease-in-out
;
}
20
%,
60
% {
-webkit-transform:
rotate
(
80
deg);
-webkit-transform-origin:
top
left
;
-webkit-animation-timing-function:
ease-in-out
;
}
40
% {
-webkit-transform:
rotate
(
60
deg);
-webkit-transform-origin:
top
left
;
-webkit-animation-timing-function:
ease-in-out
;
}
80
% {
-webkit-transform:
rotate
(
60
deg)
translateY
(
0
);
opacity:
1
;
-webkit-transform-origin:
top
left
;
-webkit-animation-timing-function:
ease-in-out
;
}
100
% {
-webkit-transform:
translateY
(
700
px);
opacity:
0
;
}
}
@-moz-keyframes
hinge {
0
% {
-moz-transform:
rotate
(
0
);
-moz-transform-origin:
top
left
;
-moz-animation-timing-function:
ease-in-out
;
}
20
%,
60
% {
-moz-transform:
rotate
(
80
deg);
-moz-transform-origin:
top
left
;
-moz-animation-timing-function:
ease-in-out
;
}
40
% {
-moz-transform:
rotate
(
60
deg);
-moz-transform-origin:
top
left
;
-moz-animation-timing-function:
ease-in-out
;
}
80
% {
-moz-transform:
rotate
(
60
deg)
translateY
(
0
);
opacity:
1
;
-moz-transform-origin:
top
left
;
-moz-animation-timing-function:
ease-in-out
;
}
100
% {
-moz-transform:
translateY
(
700
px);
opacity:
0
;
}
}
@-ms-keyframes
hinge {
0
% {
-ms-transform:
rotate
(
0
);
-ms-transform-origin:
top
left
;
-ms-animation-timing-function:
ease-in-out
;
}
20
%,
60
% {
-ms-transform:
rotate
(
80
deg);
-ms-transform-origin:
top
left
;
-ms-animation-timing-function:
ease-in-out
;
}
40
% {
-ms-transform:
rotate
(
60
deg);
-ms-transform-origin:
top
left
;
-ms-animation-timing-function:
ease-in-out
;
}
80
% {
-ms-transform:
rotate
(
60
deg)
translateY
(
0
);
opacity:
1
;
-ms-transform-origin:
top
left
;
-ms-animation-timing-function:
ease-in-out
;
}
100
% {
-ms-transform:
translateY
(
700
px);
opacity:
0
;
}
}
@-o-keyframes
hinge {
0
% {
-o-transform:
rotate
(
0
);
-o-transform-origin:
top
left
;
-o-animation-timing-function:
ease-in-out
;
}
20
%,
60
% {
-o-transform:
rotate
(
80
deg);
-o-transform-origin:
top
left
;
-o-animation-timing-function:
ease-in-out
;
}
40
% {
-o-transform:
rotate
(
60
deg);
-o-transform-origin:
top
left
;
-o-animation-timing-function:
ease-in-out
;
}
80
% {
-o-transform:
rotate
(
60
deg)
translateY
(
0
);
opacity:
1
;
-o-transform-origin:
top
left
;
-o-animation-timing-function:
ease-in-out
;
}
100
% {
-o-transform:
translateY
(
700
px);
opacity:
0
;
}
}
@keyframes
hinge {
0
% {
transform:
rotate
(
0
);
transform-origin:
top
left
;
animation-timing-function:
ease-in-out
;
}
20
%,
60
% {
transform:
rotate
(
80
deg);
transform-origin:
top
left
;
animation-timing-function:
ease-in-out
;
}
40
% {
transform:
rotate
(
60
deg);
transform-origin:
top
left
;
animation-timing-function:
ease-in-out
;
}
80
% {
transform:
rotate
(
60
deg)
translateY
(
0
);
opacity:
1
;
transform-origin:
top
left
;
animation-timing-function:
ease-in-out
;
}
100
% {
transform:
translateY
(
700
px);
opacity:
0
;
}
}
.hinge
{
-webkit-animation-name:
hinge;
-moz-animation-name:
hinge;
-ms-animation-name:
hinge;
-o-animation-name:
hinge;
animation-name:
hinge;
}
Vous pouvez consulter la démonstration de l'animation « hinge » pour avoir un aperçu du rendu dans un navigateur.
XXV. L'animation « roll in »▲
Cette animation fait apparaître votre élément HTML en le faisant rouler.
@-webkit-keyframes
rollIn {
0
% {
opacity:
0
;
-webkit-transform:
translateX
(
-100%)
rotate
(
-120deg);
}
100
% {
opacity:
1
;
-webkit-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
}
@-moz-keyframes
rollIn {
0
% {
opacity:
0
;
-moz-transform:
translateX
(
-100%)
rotate
(
-120deg);
}
100
% {
opacity:
1
;
-moz-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
}
@-ms-keyframes
rollIn {
0
% {
opacity:
0
;
-ms-transform:
translateX
(
-100%)
rotate
(
-120deg);
}
100
% {
opacity:
1
;
-ms-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
}
@-o-keyframes
rollIn {
0
% {
opacity:
0
;
-o-transform:
translateX
(
-100%)
rotate
(
-120deg);
}
100
% {
opacity:
1
;
-o-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
}
@keyframes
rollIn {
0
% {
opacity:
0
;
transform:
translateX
(
-100%)
rotate
(
-120deg);
}
100
% {
opacity:
1
;
transform:
translateX
(
0
px)
rotate
(
0
deg);
}
}
.rollIn
{
-webkit-animation-name:
rollIn;
-moz-animation-name:
rollIn;
-ms-animation-name:
rollIn;
-o-animation-name:
rollIn;
animation-name:
rollIn;
}
Vous pouvez consulter la démonstration de l'animation « roll in » pour avoir un aperçu du rendu dans un navigateur.
XXVI. L'animation « roll out »▲
Cette animation fait disparaître votre élément HTML en le faisant rouler.
@-webkit-keyframes
rollOut {
0
% {
opacity:
1
;
-webkit-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
100
% {
opacity:
0
;
-webkit-transform:
translateX
(
100
%)
rotate
(
120
deg);
}
}
@-moz-keyframes
rollOut {
0
% {
opacity:
1
;
-moz-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
100
% {
opacity:
0
;
-moz-transform:
translateX
(
100
%)
rotate
(
120
deg);
}
}
@-ms-keyframes
rollOut {
0
% {
opacity:
1
;
-ms-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
100
% {
opacity:
0
;
-ms-transform:
translateX
(
100
%)
rotate
(
120
deg);
}
}
@-o-keyframes
rollOut {
0
% {
opacity:
1
;
-o-transform:
translateX
(
0
px)
rotate
(
0
deg);
}
100
% {
opacity:
0
;
-o-transform:
translateX
(
100
%)
rotate
(
120
deg);
}
}
@keyframes
rollOut {
0
% {
opacity:
1
;
transform:
translateX
(
0
px)
rotate
(
0
deg);
}
100
% {
opacity:
0
;
transform:
translateX
(
100
%)
rotate
(
120
deg);
}
}
.rollOut
{
-webkit-animation-name:
rollOut;
-moz-animation-name:
rollOut;
-ms-animation-name:
rollOut;
-o-animation-name:
rollOut;
animation-name:
rollOut;
}
Vous pouvez consulter la démonstration de l'animation « roll out » pour avoir un aperçu du rendu dans un navigateur.
XXVII. Télécharger Animate.css▲
Vous pouvez télécharger le projet sur GitHub ne serait-ce que pour regarder le code source et apprendre tout ce qu'il est possible de faire avec les animations CSS.
Vous pouvez le récupérer dès maintenant : Animate.css.
XXVIII. Remerciements▲
Je tiens à remercier Paul Underwood pour m'avoir autorisé à traduire son tutoriel.
Je remercie également ClaudeLELOUP pour sa relecture orthographique.