테스트 사이트 - 개발 중인 베타 버전입니다

CSS 애니메이션 고급 활용

· 2개월 전 · 242

CSS 애니메이션은 단순한 색상 변화부터 복잡한 움직임까지 다양한 효과를 만들 수 있음. 기본적으로 transition은 상태 변화에 부드러움을 주고, @keyframes는 특정한 흐름을 정의해 애니메이션을 실행함. 예시는 다음과 같음.

 

.box { width:100px; height:100px; background:tomato; transition: all 0.5s ease; }
.box:hover { transform: scale(1.2) rotate(10deg); background:gold; }
 

위 코드는 마우스를 올리면 박스가 확대되고 회전하며 색상이 변하는 효과를 줌. 더 복잡한 애니메이션은 keyframes를 사용함.

 

@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-30px); }
}
.ball { width:50px; height:50px; border-radius:50%; background:skyblue; animation: bounce 1s infinite; }
 

위 코드는 공이 위아래로 튕기는 듯한 무한 반복 애니메이션을 구현함. 실무 팁으로는 GPU 가속이 가능한 transformopacity 위주로 애니메이션을 구성해야 성능 저하가 적고, transition-delayanimation-delay를 활용해 요소마다 살짝 다른 타이밍을 주면 자연스러운 인터랙션이 가능함. 실습은 아래 코드로 확인할 수 있음.

 

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

브라우저에 적용하면 박스는 hover 시 변형되고, 공은 자동으로 튕기는 애니메이션을 반복하게 됨.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
3643
3631
3627
3621
3619
3617
3610
3609
3608
3607
3606
3603
3602
3601
3600
3595
3591
3587
3578
3567
3561
3560
3559
3557
3555
3554
3552
3551
3550
3537