Giant Danio Fish
본문 바로가기
CSS

CSS 애니메이션 - Loading ball

by 코딩왕자 2022. 9. 25.

CSS 애니메이션 연습하기

원이 돌아가면서 로딩되는거같은 효과를 만들어보겠습니다.


결과

HTML

공을 10개 만들어줍니다

<div class="loader">
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
    <div class="ball"></div>
  </div>

CSS

공을 360도로 애니메이션 효과를 주면서 돌려주면서, 각각 하나에 딜레이를 줍니다.

body {
    background-color: rgba(100,20,240,0.7);
}
.loader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    animation: spin .6s linear infinite reverse;
}
.ball {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    animation: spin 1s infinite ease-in-out;
}
  
.ball:after {
    position: absolute;
    content: '';
    background-color: #fff;
    width: 5px;
    height: 5px;
    border-radius: 100%;
    top: 0;
}
.ball:nth-child(2) {
    animation-delay: -0.1s;
}
.ball:nth-child(3) {
    animation-delay: -0.2s;
}
.ball:nth-child(4) {
    animation-delay: -0.3s;
}
.ball:nth-child(5) {
    animation-delay: -0.4s;
}
.ball:nth-child(6) {
    animation-delay: -0.5s;
}
.ball:nth-child(7) {
    animation-delay: -0.6s;
}
.ball:nth-child(8) {
    animation-delay: -0.7s;
}
.ball:nth-child(9) {
    animation-delay: -0.8s;
}
.ball:nth-child(10) {
    animation-delay: -0.9s;
}
  
@keyframes spin {
    0% {
      transform: translate(-50%, -50%) rotate(0deg);
    }
    100% {
      transform: translate(-50%, -50%) rotate(360deg);
    }
}

댓글


광고 준비중입니다