CSS3 애니메이션이란 무엇입니까? 정보
CSS CSS3 애니메이션이란 무엇입니까?본문
CSS3 애니메이션이란 무엇입니까?
애니메이션을 사용하면 요소가 한 스타일에서 다른 스타일로 점진적으로 변경됩니다.
원하는만큼 많은 CSS 속성을 변경할 수 있습니다.
CSS3 애니메이션을 사용하려면 먼저 애니메이션의 일부 키 프레임을 지정해야합니다.
키 프레임은 특정 시간에 요소의 스타일을 유지합니다.
@keyframes 규칙
@keyframes 규칙 내에서 CSS 스타일을 지정 하면 애니메이션이 특정 시간에 현재 스타일에서 새 스타일로 점진적으로 변경됩니다.
애니메이션이 작동하도록하려면 애니메이션을 요소에 바인딩해야합니다.
다음 예제는 "예제"애니메이션을 <div> 요소에 바인딩합니다. 애니메이션은 4 초 동안 지속되며 <div> 요소의 배경색을 점차적으로 "red"에서 "yellow"로 변경합니다.
예
/* The animation code */
@keyframes example {
from {background-color: red;}
to {background-color: yellow;}
}
/* The element to apply the animation to */
div {
width: 100px;
height: 100px;
background-color: red;
animation-name: example;
animation-duration: 4s;
}
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 100px;
height: 100px;
background-color: red;
-webkit-animation-name: example; /* Safari 4.0 - 8.0 */
-webkit-animation-duration: 4s; /* Safari 4.0 - 8.0 */
animation-name: example;
animation-duration: 4s;
}
/* Safari 4.0 - 8.0 */
@-webkit-keyframes example {
from {background-color: red;}
to {background-color: yellow;}
}
/* Standard syntax */
@keyframes example {
from {background-color: red;}
to {background-color: yellow;}
}
</style>
</head>
<body>
<p><b>Note:</b> This example does not work in Internet Explorer 9 and earlier versions.</p>
<div></div>
<p><b>Note:</b> When an animation is finished, it changes back to its original style.</p>
</body>
</html>
참고 : 경우 animation-duration속성이 지정되지 않은 기본 값이 0이기 때문에, 애니메이션, 효과가 없습니다.
위의 예제에서 우리는 "from"과 "to"(0 % (시작) 및 100 % (완료)를 나타냄) 키워드를 사용하여 스타일이 변경 될 때를 지정했습니다.
퍼센트를 사용할 수도 있습니다. 퍼센트를 사용하여 원하는만큼 스타일을 변경할 수 있습니다.
다음 예제에서는 애니메이션이 25 % 완료되고 50 % 완료되면 애니메이션의 100 % 완료시 다시 <div> 요소의 배경색을 변경합니다.
예
/* The animation code */
@keyframes example {
0% {background-color: red;}
25% {background-color: yellow;}
50% {background-color: blue;}
100% {background-color: green;}
}
/* The element to apply the animation to */
div {
width: 100px;
height: 100px;
background-color: red;
animation-name: example;
animation-duration: 4s;
}
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 100px;
height: 100px;
background-color: red;
-webkit-animation-name: example; /* Safari 4.0 - 8.0 */
-webkit-animation-duration: 4s; /* Safari 4.0 - 8.0 */
animation-name: example;
animation-duration: 4s;
}
/* Safari 4.0 - 8.0 */
@-webkit-keyframes example {
0% {background-color: red;}
25% {background-color: yellow;}
50% {background-color: blue;}
100% {background-color: green;}
}
/* Standard syntax */
@keyframes example {
0% {background-color: red;}
25% {background-color: yellow;}
50% {background-color: blue;}
100% {background-color: green;}
}
</style>
</head>
<body>
<p><b>Note:</b> This example does not work in Internet Explorer 9 and earlier versions.</p>
<div></div>
</body>
</html>
다음 예제는 애니메이션이 25 % 완료되고 50 % 완료 될 때 및 애니메이션이 100 % 완료 될 때 배경색과 <div> 요소의 위치를 모두 변경합니다.
예
/* The animation code */
@keyframes example {
0% {background-color:red; left:0px; top:0px;}
25% {background-color:yellow; left:200px; top:0px;}
50% {background-color:blue; left:200px; top:200px;}
75% {background-color:green; left:0px; top:200px;}
100% {background-color:red; left:0px; top:0px;}
}
/* The element to apply the animation to */
div {
width: 100px;
height: 100px;
position: relative;
background-color: red;
animation-name: example;
animation-duration: 4s;
}
0
댓글 0개