CSS 애니메이션 고급 활용

· 4개월 전 · 532

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 시 변형되고, 공은 자동으로 튕기는 애니메이션을 반복하게 됨.

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

퍼블리셔팁

퍼블리싱과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
CSS 3주 전 조회 120
CSS 1개월 전 조회 105
CSS 1개월 전 조회 102
CSS 1개월 전 조회 210
CSS 2개월 전 조회 215
기타 3개월 전 조회 314
CSS 4개월 전 조회 532
CSS 4개월 전 조회 533
CSS 5개월 전 조회 698
기타 5개월 전 조회 607
CSS 6개월 전 조회 735
CSS 6개월 전 조회 796
CSS 7개월 전 조회 667
CSS 7개월 전 조회 740
CSS 7개월 전 조회 598
11개월 전 조회 774
HTML 12개월 전 조회 1,050
CSS 1년 전 조회 921
2년 전 조회 1,407
HTML 1년 전 조회 858
CSS 1년 전 조회 1,156
CSS 1년 전 조회 1,101
HTML 2년 전 조회 1,612
기타 2년 전 조회 898
CSS 2년 전 조회 1,662
HTML 2년 전 조회 1,533
CSS 2년 전 조회 1,365
2년 전 조회 3,723
2년 전 조회 5,189
2년 전 조회 1,733
🐛 버그신고