• 회원가입
  • 로그인
  • 구글아이디로 로그인

[transition] CSS - transition-timing-function 속성 - 트랜지션 속도변경곡선 (= transition-timing-function속성 = 트랜지션타이밍펑션속성)

목차
  1. transition-timing-function 예제 - 처음부터 끝까지 동일 속도 트랜지션 효과
  2. transition-timing-function 정의
  3. transition-timing-function 구문
  4. transition-timing-function 예제 - linear/ease/ease-in/ease-out/ease-in-out 차이
  5. transition-timing-function 예제 - cubic-bezier() 함수로 위 예제와 동일 효과 구현

 

transition-timing-function 예제 - 처음부터 끝까지 동일 속도 트랜지션 효과

 

<style> 

div {

  width: 200px;

  height: 100px;

  background: red;

  transition: width 2s;

  transition-timing-function: linear;

}


div:hover {

  width: 300px;

}

</style>


<div>홈짱닷컴 Homzzang.com</div>

 

결과보기

 

transition-timing-function 정의

 

트랜지션(=전환) 효과 속도 곡선 지정.

 


 

1.

이 속성 지정 시 transition-duration (= 트랜지션 완료에 걸리는 시간) 동안 지정 속도 곡선에 따라 속도 변함.

 

2.

  • 기본값: ease
  • 상속여부: X
  • 애니가능: X
  • CSS버전: CSS3
  • JS구문: object.style.transitionTimingFunction="linear"

 

3. 

IE10 이상 주요 최신 브라우저 지원. (구형 브라우저 경우 접두사 필요)

  • Chrome, Safari 브라우저 경우: -webkit-
  • Firefox 경우: -moz-
  • Opera 경우: -o-

 

4. MDN transition-timing-function 예제보기

https://developer.mozilla.org/en-US/docs/Web/CSS/transition-timing-function

 

 

transition-timing-function 구문

 

selector {transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|step-start|step-end|steps(int,start|end)|cubic-bezier(n,n,n,n)|initial|inherit;}

 


[속성값]

 

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)

 

step-start

동일: steps(1, start)

 

step-end

동일: steps(1, end)

 

steps(int,start|end) 

  • int - 함수의 간격수. (가능값: 0보다 큰 양의 정수)
  • start|end - 간격 내에서 값 변경 지점. (생략 시, "end" 값 사용)

 

cubic-bezier(n,n,n,n)

cubic-bezier() 함수에서 고유한 값을 정의. (가능값: 0~1 사이의 숫자)

 

initial

이 속성의 기본값으로 설정.

 

inherit

부모요소의  속성값 상속.

 

 

transition-timing-function 예제 - linear/ease/ease-in/ease-out/ease-in-out 차이

 

<style> 

div {

  width: 150px;

  height: 50px;

  background: red;

  color: white;

  text-indent:10px;

  transition: width 2s;

}


#a {transition-timing-function: linear;}

#b {transition-timing-function: ease;}

#c {transition-timing-function: ease-in;}

#d {transition-timing-function: ease-out;}

#e {transition-timing-function: ease-in-out;}


div:hover {

  width: 500px;

}

</style>


<div id="a">linear</div>

<div id="b">ease</div>

<div id="c">ease-in</div>

<div id="d">ease-out</div>

<div id="e">ease-in-out</div>

 

결과보기

 

transition-timing-function 예제 - cubic-bezier() 함수로 위 예제와 동일 효과 구현

 

<style> 

div {

  width: 150px;

  height: 50px;

  background: red;

  color: white;

  text-indent:10px;

  transition: width 2s;

}


#a {transition-timing-function: cubic-bezier(0,0,1,1);}

#b {transition-timing-function: cubic-bezier(0.25,0.1,0.25,1);}

#c {transition-timing-function: cubic-bezier(0.42,0,1,1);}

#d {transition-timing-function: cubic-bezier(0,0,0.58,1);}

#e {transition-timing-function: cubic-bezier(0.42,0,0.58,1);}


div:hover {

  width: 500px;

}

</style>


<div id="a">linear</div>

<div id="b">ease</div>

<div id="c">ease-in</div>

<div id="d">ease-out</div>

<div id="e">ease-in-out</div>


결과보기



분류 제목
pagination CSS - 페이징 - 둥근테두리 효과 (Rounded bordered pagination)
pagination CSS - 페이징 - 링크칸 간격 띄우기 (Space Between Links)
pagination CSS - 페이징 - 글자 크기 (Pagination Size)
pagination CSS - 페이징 - 가운데 정렬 (Centered Pagination)
pagination CSS - 페이징 - (이전페이지/다음페이지/지정페이지) 이동 링크 버튼
pagination CSS - 페이징 - 빵메뉴 (= Breadcrumbs : 브레드크럼즈 = 메뉴 현재위치 표시)
column CSS - Multiple Columns - (멀티 컬럼 개괄) ※ 열 나누기 = 단락 나누기
column CSS - column-count 속성 - 컬럼 개수 지정 (= 요소 안 텍스트를 지정 컬럼개수로 구분 = …
column CSS - column-fill 속성 - 컬럼 채우기 방식 지정 (= column-fill속성 = 컬럼필속성…
column CSS - column-gap 속성 - 컬럼간의 간격 지정 (= column-gap속성 = 컬럼갭속성)
column CSS - column-rule 속성 - 컬럼구분자 스타일 일괄지정 (= 컬럼구분바 단축속성 = column…
column CSS - column-rule-color 속성 - 컬럼구분자 색상 지정 (= 컬럼구분바 색깔 = colum…
column CSS - column-rule-style 속성 - 컬럼구분자 모양 지정 (= 컬럼구분바 생김새 = colu…
column CSS - column-rule-width 속성 - 컬럼구분자 너비 지정 (= 컬럼구분바 두께 = colum…
column CSS - column-span 속성 - 컬럼 병합 여부 지정 (= 컬럼병합 = 컬럼확장 = column-s…
column CSS - column-width 속성 - 컬럼 너비 지정 (= column-width속성 = 컬럼위드스속성…
column CSS - columns 속성 - (컬럼최소너비/컬럼개수) 일괄 지정 (= columns속성 = 컬럼즈속성)
box CSS - box-sizing 속성 ★★ - 너비결정방식 (= 길이결정방식 = box-sizing속성 = 박…
flex CSS - FlexBox (플렉스박스) 소개 ★★★ - 새로운 반응형 레이아웃 모델 ※ (가로/세로) (기본…
flex CSS - flex-direction 속성(C) ★★ - 기본축 방향 결정. (= flex-direction…
10/25
목록
찾아주셔서 감사합니다. Since 2012