@keyframes tutsFade {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
@keyframes tutsFade {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
animation-name: @keyframes 이름 (예시에서는 tutsFade를 사용함)
animation-duration: 타임프레임 길이. 애니메이션 시작부터 마지막까지 총 지속시간
animation-delay: 애니메이션이 시작하기 전 지연시간
animation-iteration-count: 반복 횟수
animation-timing-function: 애니메이션 속도 조절 ( linear | ease | ease-in | ease-out | ease-in-out | cubic-bezier ).
animation-direction: 루프 (loop) 방향. 정방향으로 반복, 역방향으로 반복, 번갈아가며 반복 등을 설정
.element {
animation: tutsFade 4s 1s infinite linear alternate;
}
html 태그 - 점 하나가 span ( 점 세개 )
<div class="loading">
<span></span>
<span></span>
<span></span>
</div>
span 하나하나 애니메이션을 넣는다 loading이라는 keyframe 생성
.loading span {
display: inline-block;
width: 15px;
height: 15px;
background-color: gray;
border-radius: 50%;
animation: loading 1s linear infinite;
}
0%, 100% 일때에는 크기를 작고 보이지 않게 , 50%일때에는 크기를 좀 크게
@keyframes loading {
0%,
100% {
opacity: 0;
/* 크기가 작아진 상태 */
transform: scale(0.5);
}
50% {
opacity: 1;
transform: scale(1.1);
}
}
하나하나 색깔을 다르게 넣어주고, 애니메이션 딜레이를 주어 각자 다르게 커졌다 작아졌다 진행하도록 한다.
.loading span:nth-child(1) {
animation-delay: 0s;
background-color: crimson;
}
.loading span:nth-child(2) {
animation-delay: 0.2s;
background-color: dodgerblue;
}
.loading span:nth-child(3) {
animation-delay: 0.4s;
background-color: yellowgreen;
}
animation-fill-mode: both;