요소에 적용되는 CSS 스타일을 다른 CSS 스타일로 부드럽게 전환시켜 주는 것을 말한다.
이때 CSS 스타일이 변화되는 중간지점을 키프레임 이라고 한다.
즉, @keyframes 은 애니메이션의 중간 상태라고 할 수 있다.
👾 애니메이션은 트랜지션보다 훨씬 더 규모가 크고 복잡하며 다양한 능력을 가지고 있기 때문에 좀 더 정밀한 효과를 구현할 수 있다.
@keyframes 으로 애니메이션을 생성할 수 있다.
@keyframes shape-color { from { background-color: red; } to { background-color: blue; } }
@keyframes shape-color { from { background-color: red; } 50% { background-color: yellow; /*percentage 로 중간 스타일을 적용 */ } to { background-color: blue; } }
@keyframes circle { 0% { border-radius: 0; } 50% { border-radius: 50%; } 100% { border-radius: 0; } }
animation-name: shape; @keyframes shape { ...
infinite 로 지정하여 무한히 반복할 수 있다.animation-* 들의 단일속성으로 한꺼번에 작성할 수 있다.