웹표준,웹접근성(html, html5, css, css3, javascript, jQuery, jQueryMobile, snecha, senchaTouch, php, mobileWebApp)
Transition 본문
Transition
transition 이란 단어의 뜻은 “다른 상태로의 변화”를 뜻한다.
css3 에서 새로 생긴 transition 도 모양이나 색상의 변화를 시간을 두고 줄 수 있는 속성이다.
transition-property, transition-duration, transition-timing-function, transition-delay 총 네 가지 속성의 축약으로 transition 하나를 사용할 수 있다.
새로 생긴 transition 효과는 주로 마우스 오버했을 때 해당 요소를 어떻게 변화시킬지 같은 부분에 많이 사용한다.
- transition-property : transition-property 는 transition 효과를 어떤 속성에 줄 것인지 직접 css 속성 중 이름을 지정해주는 속성이다. 만약 어떤 요소의 width 값을 변화주고 싶으면 transition-property:width 라고 적어주면 된다.
- transition-duration : 변화되는 시간을 초단위로 지정해주는 속성
- transition-timing-function : 요소가 변화되는 동안 각 구간별로 변화의 진행 속도를 빠르거나 느리게 개별적으로 지정할 수 있는 속성이다. cubic-bezier 값으로 직접 속도 변화를 지정할 수 있고 미리 정해진 값 5개(linear, ease, ease-in, ease-out, ease-in-out)를 사용해도 된다.
- transition-delay : 변화가 언제 시작될지 지정해주는 속성
Transition 속기형 타입
<본문>
-webkit-transition-property:-webkit-transform, color;
-moz-transition-property:-moz-transform, color;
transition-property:transform,color;
-webkit-transition-duration:0.2s;
-moz-transition-duration:0.2s;
-webkit-transition-timing-function:ease-out;
-moz-transition-timing-function:ease-out;
transition-timing-function:ease-out;
<약칭표기>
-webkit-transition: -webkit-transform 0.2s ease-out;
-moz-transition: -webkit-transform 0.2s ease-out;
transition: -webkit-transform 0.2s ease-out;
<값의 순서>
transition – property
transition – duration
transition – function
transition - delay
<다중 전환> - 한 번 호출할때 여러 개의 transition 지정 (회전, 크기, 색 )
transition – property: transform, color;
transition – duration: 0.2s, 0.1s;
transition – function: ease-out, linear;
ex1.) 마우스 오버에 따른 크기 변화
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | <!DOCTYPE HTML> < html > < head > < meta charset = "utf-8" > < title >Transitions</ title > < style type = "text/css" > div{ width:100px; height:100px; margin:30px; background:yellow; transition:width 2s; -moz-transition:width 2s; -webkit-transition:width 2s; /* 전환해야할 속성, 몇초간 보여질것인지 설정 */ } div:hover{width:300px;} </ style > </ head > < body > < h1 >Transitions</ h1 > < div > 마우스 오버 전 상태 </ div > < div > 마우스 오버시 </ div > </ body > </ html > |
ex2.) 마우스 오버에 따른 크기와 각도 변화
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | <!DOCTYPE HTML> < html > < head > < meta charset = "utf-8" > < title >Transitions</ title > < style type = "text/css" > div { width:100px; height:100px; margin:50px; background:yellow; transition:width 2s, height 2s; -moz-transition:width 2s, height 2s, -moz-transform 2s; -webkit-transition:width 2s, height 2s, -webkit-transform 2s; } div:hover { width:200px; height:200px; transform:rotate(180deg); -moz-transform:rotate(180deg); -webkit-transform:rotate(180deg); } </ style > </ head > < body > < h1 >Transitions</ h1 > < div > 마우스 오버 전 상태 </ div > < div > 마우스 오버시 </ div > </ body > </ html > |
ps : Transitions 을 호버 상태일때에 적용시키는 것이 아니라 호버될 대상에게 주어야 한다.
'css3' 카테고리의 다른 글
Multiple Columns (0) | 2013.10.08 |
---|---|
Animation (0) | 2013.10.08 |
3D transform (0) | 2013.10.08 |
2D transform (0) | 2013.10.08 |
font-face (0) | 2013.10.08 |