Dragonball Online Goku Hand
본문 바로가기
CSS

[CSS] "한 웨이브 하는 동그라미" 를 만들어봅시다!

by 별의 코비 2022. 9. 19.
728x90

codepen을 이용해서 저보다(?) 웨이브 잘하는 동그라미⚪️를 만들어봅시다!


동그라미 여러개가 작아졌다 커졌다를 반복하면서 웨이브하는 느낌을 PUG와 SCSS의 animation 기능을 이용하여 만들어봅시다.


코드 소스를 알아봅시다.💻

✔️PUG

동그라미 여러개를 가로 세로 12개씩 만들어줍니다.
이 때 정렬을 잘 맞춰 주어야 오류가 나지 않습니다.
div.circle-wrap
    - for  (var x = 1; x<=12; x++)
        div.row
            - for (var y = 1; y<=12; y++)
                div.circle

✔️SCSS

∙ @mixin은 여러 컴포넌트 간에 공통으로 사용하고 있는 기능들을 재사용하는 방법입니다.
∙ 묶어준 mixin을 @include를 통해 불러줄 수 있습니다.
// mixin단축키
@mixin center {
  display : flex;
  align-items: center;
  justify-content: center;
}
body {
  @include center;
  height: 100vh;
  background-image: linear-gradient(45deg, #00DBDE 0%, #FC00FF 100%);
}
.row {
  display: flex;
  .circle {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin: 5px 10px;
    background: #fff;
    transform-origin : top center;
    animation : spin 1s linear infinite;
  }
  @keyframes spin {
    0% {transform : scale(1.1) rotate(0deg);}
    50% {transform : scale(0.2) rotate(180deg);}
    100% {transform : scale(1.1) rotate(360deg);}
  }
}
//SCSS에서의 for문 사용 방법
@for $i from 1 through 12 {
    .row:nth-child(#{$i}) .circle {animation-delay : 100ms * $i;}
}

댓글