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;
}
게시글 목록
| 번호 | 제목 |
|---|---|
| 3260 |
CSS
align-content 속성
|
| 3259 |
CSS
flex-wrap 프로퍼티
1
|
| 3258 |
CSS
align-items 속성
|
| 3257 | |
| 3256 |
CSS
플렉스 방향
|
| 3255 |
CSS
CSS3 Flexbox
|
| 3254 | |
| 3253 | |
| 3252 |
HTML
html예제 사이트
|
| 3251 | |
| 3250 | |
| 3249 | |
| 3248 |
CSS
열 너비 지정
|
| 3247 | |
| 3246 |
CSS
CSS3 열 규칙
|
| 3245 |
CSS
CSS3 열 사이의 간격 지정
|
| 3244 |
CSS
CSS3 다중 열 레이아웃
|
| 3243 |
CSS
Breadcrumbs
|
| 3241 |
CSS
중앙 페이지 매김
|
| 3240 |
CSS
페이지 매김 크기
|
| 3239 |
CSS
링크 사이의 공간
|
| 3238 |
CSS
둥근 테두리
|
| 3237 |
CSS
테두리가있는 페이지 매김
|
| 3236 |
CSS
둥근 활성 및 호버링 버튼
|
| 3235 | |
| 3234 |
CSS
CSS 페이지 매김의 예
|
| 3233 |
CSS
애니메이션 버튼
|
| 3232 |
CSS
세로 단추 그룹
|
| 3231 |
CSS
테두리가있는 단추 그룹
|
| 3230 |
CSS
버튼 그룹
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기