트랜지션
트랜지션 (Transitions) (IE10+)
CSS 트랜지션은 CSS 속성을 변경할 때 애니메이션 속도를 조절하는 방법을 제공한다.
트랜지션 속성은 IE10 이상 지원한다.
transition-property 트랜지션 속성
all(기본값), none
transition-duration 트랜지션 시간
변화가 일어나는 기간(1.2s, 4s), 초단위, (기본값 0s)
transition-timing-function 트랜지션 타이밍 함수
트렌지션 효과가 진행하는 동안 속도의 변화를 지정한다.
ease : 기본값, 천천히 시작해서, 빠르게 진행하며, 천천히 끝남.
cubic-bezier(0.25,0.1,0.25,1)
linear : 처음과 끝이 같은 속도로 나타남
cubic-bezier(0,0,1,1)
ease-in : 천천히 시작
cubic-bezier(0.42,0,1,1)
ease-out : 천천히 끝남
cubic-bezier(0,0,0.58,1)
ease-in-out : 천천히 시작해서 천천히 끝남
cubic-bezier(0.42,0,0.58,1)
cubic-bezier(n,n,n,n) : 직접 값을 지정할 수 있음. 가능한 값은 0부터 1까지 숫자값
/* 임의 값 */
transition-timing-function: cubic-bezier(0.085, 1.35, 0.93, -0.565);
/* CSS 기본 설정 가능한 값 */
transition-timing-function: linear;
transition-delay 트랜지션 지연시간
트랜지션 효과가 시작되기 전 기다리는 시간
transition 트랜지션 속기형
transition: <prop>
<dur>
<timfn>
<delay>
.headline {
transition: top 0.4s ease, transform 0.6s ease-in-out 0.4s;
/* 또는 */
transition: all 0.4s ease-out 0.32s;
}
예시
.headline {
/* 초기 상태(initial state) */
position: absolute;
top: 100px;
left: 40%;
margin-left: -156px;
transition-property: top, transform; /*또는 all*/
transition-duration: 0.45s 0.8s;
transition-timing-function: linear;
transition-delay: 0.4s, 0.4s;
}
.headline:hover {
/* 종료 상태 (final state) */
top: 100px;
transform: rotate(10deg);
}
참고
Last updated
Was this helpful?