변형과 관련된 속성
transform : translateX( 크기 );
(html은 이미지를 삽입한 코드로만 구성이 되어 있어 생략)
img{
width: 250px;
height: auto;
/* 이미지는 원래 자신만의 너비/높이를 가지고 있어
한 방향의 크기만 지정해도
남은 방향은 자동적으로 비율에 맞춰서 지정된다. */
}
/* 좌우 이동 */
.trans-x-2d:hover{
-ms-transform : translateX(100px);
-webkit-transform : translateX(100px);
transform : translateX(100px);
/* translate : 바꾸다 */
}
transform : translateY( 크기 );
/* 상하 이동 */
.trans-y-2d:hover{
-ms-transform : translateY(100px);
-webkit-transform : translateY(100px);
transform : translateY(100px);
}
transform : translateX(x축 값, y축 값);
/* 대각선 이동 */
.trans-d-2d:hover{
-ms-transform : translate(100px, -100px);
-webkit-transform : translate(100px, -100px);
transform : translate(100px, -100px);
/* x y */
}
transform : scaleX( 크기 );
/* scale(배율) */
/* 가로 방향 확대/축소 */
.trans-x-scale-2d:hover{
transform: scaleX(2);
margin-left: 200px;
}
transform : scaleY( 크기 );
/* 세로 방향 확대/축소 */
.trans-y-scale-2d:hover{
transform: scaleY(2);
margin: 100px 0;
/* 세로 가로 */
}
transform : scale( 세로 값, 가로 값 );
/* 요소 확대/축소 */
.trans-scale-2d:hover{
transform: scale(2, 2);
margin: 150px 150px;
/* 세로 가로 */
}
transform : rotate(각도 deg);
/* 요소 회전 */
.trans-rotate:hover{
transform: rotate(180deg);
}
(z축의 길이) 원근법 적용
transform : perspective(z축의 길이) translateZ( 크기 );
/* x, y, z축 이동 */
.trans-3d:hover{
transform: perspective(400px) translateZ(300px);
}
transform : perspective(z축의 길이) rotateX( 각도 deg );
/* x축 회전 */
.trans-rotate-x-3d{
transform: perspective(300px) rotateX(45deg);
}
transform : perspective(z축의 길이) rotateY( 각도 deg );
/* y축 회전 */
.trans-rotate-y-3d{
transform: perspective(300px) rotateY(45deg);
}
transform : perspective(z축의 길이) rotateZ( 각도 deg );
/* z축 회전 */
.trans-rotate-z-3d{
transform: perspective(300px) rotateZ(45deg);
}
transform : perspective(z축의 길이) rotate3d(x, y, z, 회전 각도);
(x/y/z는 0~1 사이 숫자)
/* x,y,z축 회전 */
.trans-rotate-3d{
transform: perspective(300px) rotate3d(0.5, 0.5, 0.5, 45deg);
}
transition-duration: 시간;
transition-timing-function: linear | ease(기본값) | ease-in | ease-out | ease-in-out | cublic-bezier(n,n,n,n);
/* transition */
.box{
width: 150px;
height: 150px;
border: 1px solid black;
background-color: red;
/* 스타일이 변경되는 시간 지정 */
transition-duration: 1s;
}
.test1:hover{
background-color: yellow;
}
.test2{
transition-duration: 3s;
}
.test2:hover{
transform: rotate(360deg);
background-color: cornflowerblue;
/* 테두리 모서리 곡률 속성 */
border-radius: 50%;
}
.test3{
transition-duration: 3s;
/* linear | ease(기본값) | ease-in | ease-out | ease-in-out | cublic-bezier(n,n,n,n) */
/* transition-timing-function: cubic-bezier(0.9, 0.4, 1, 0.9); */
transition-timing-function: ease-in-out;
}
.test3:hover{
background-color: cadetblue;
transform: rotate(720deg);
}
.test4{
transition-delay: 1s;
}
.test4:hover{
transform: translateX(100px);
}