CSS amimation
- 값의 변화를 미리 작성해 요소에 애니메이션 적용이 가능하다.
- transition은 이벤트가 필요하지만 animation은 시작과 정지, 반복을 제어할 수 있다.
@keyfrmes
- 특정 지점에 값들을 설정하여 값이 변화하는 애니메션을 생성한다.
@keyframes slideUp {
from {
transform : translateY(0);
}
to {
transform : translateY(-20px);
}
}
@keyframes changeColor {
0% {
background-color: red;
}
50% {
background-color : black;
}
100% {
background-color : blue;
}
animation 개별 속성
anmation-name
- 적용하고자 하는 애니메이션을 지정한다.
- 작성한
@keyframes의 이름을 지정한다.
,를 통해 여러개의 애니메이션 지정이 가능하다.
.box {
animation-name : slideUp;
animation-name : slideup, disappear;
}
animation-delay
- 애니메이션의 지연시간을 지정해 애니메이션 시작을 늦춘다.
.box {
animation-name : slideUp;
animation-dealy : 1s;
}
animation-duration
- 애니메이션의 실행시간을 지정한다.
s(초), ms(1/1000초) 단위를 사용한다.
.box {
animation-name : slideUp;
animation-duration : 1s;
}
animation-timing-function
.box {
animation-name : slideUp;
animation-timing-function : ease-in;
animation-timing-function : ease-out;
animation-timing-function : ease-in-out;
}
animation-iteration-count
- 애니메이션의 반복 횟수를 지정한다.
- 숫자 혹은
ifinite(무한).
.box {
animation-name : slideUp;
animation-iteration-count : 2;
animation-iteration-count : infinite;
}
animation-direction
| 값 | 설명 |
|---|
| normal | 매 사이클마다 정방향으로 재생된다. |
| reverse | 매 사이클마다 역방향으로 재생된다. |
| alternate | 매 사이클마다 방향을 뒤집는다. 정방향으로 시작한다. |
| alternate-reverse | 매 사이클마다 방향을 뒤집는다. 역방향으로 시작한다. |
.box {
animation-name : slideUp;
animation-iteration-count : infinite;
animation-direction : normal;
animation-direction : reverse;
animation-direction : alternate;
animation-direction : alternate-reverse;
}
animation-fill-mode
- 애니메이션 종료 후 스타일 유지 여부를 지정한다.
| 값 | 설명 |
|---|
| none | 애니메이션 종료 후 스타일을 유지하지 않는다. |
| forword | 애니메이션 종료 후 마지막 프레임의 스타일을 유지한다. |
| backword | 애니메이션 시작 전에 시작 프레임의 스타일을 유지한다. |
| both | 애니메이션 시작 프레임과 종료 프레임의 스타일을 모두 유지한다. |