요소를 변형시키는 프로퍼티
- translate() => 이동
- scale() => 확대 축소
- rotate() => 회전
- skew() => 경사
- translate(x,y)
- translateX(x)
- translateY(y)
ex) transform : translate(50px, 30px);
- scale(x,y)
- sacleX(x)
- scaleY(y)
ex) transform : scale(1,1.5);
rotate(각도)
ex) transform : rotate(45deg);
- skew(x,y)
- skewX(x)
- skewY(y)
ex) transform : skew(30deg,0);
점진적으로 값을 변화시킴
ex)
<style>
div{
background-color: orange;
width:100px;
height:100px;
-webkit-transition: width 1s;
transition: width 1s;
}
div:hover { width: 300px; }
</style>
</head>
<body>
<div></div>
</body>
<div style="width:100px;height:100px;"></div>
처럼 수정하면 정상적으로 동작하지 않는다. <style>
#windmill {
height: 100px;
width: 100px;
-webkit-transition: width 2s, height 2s, -webkit-transform 2s;
transition: width 2s, height 2s, transform 2s;
}
#windmill:hover {
width: 300px;
height: 300px;
-webkit-transform: rotateY(180deg);
transform: rotateY(180deg);
}
</style>
transition에 transform을 시간을 지정하여 넣을 수 있다.
필요에 따라 transform 형태의 4가지를 넣을 수 있고
이를 점진적이나 애니메이션화 하고 싶다면 transition에 시간을 넣어 진행할 수 있다.
그외에도 transition은 width, height와 같은 것에서도 크기 변화 애니메이션화 가능하다.