CSS3에는 4가지 유형의 2D 변형이 있습니다. 1. 변위 변환(), 요소를 수평 또는 수직 방향으로 지정된 거리로 이동합니다. 2. Scale(), 요소의 크기를 수평 또는 수직으로 조정합니다. ), 요소를 회전할 수 있습니다. 4. Skew(), 요소를 기울일 수 있습니다.
【추천 튜토리얼: CSS 비디오 튜토리얼】
변형은 CSS3의 파괴적인 기능 중 하나로 요소의 변위, 회전, 변형, 크기 조정을 실현할 수 있으며 전환이 포함된 매트릭스 모드도 지원합니다. 그리고 여러분이 배우려는 애니메이션 지식은 이전에 Flash로만 얻을 수 있었던 수많은 효과를 대체할 수 있습니다.
Transform 변환
1. 이동 이동(x, y)
translate(50px,50px);
텍스트 또는 이미지를 가로 및 세로 방향으로 각각 50픽셀씩 이동합니다.
요소의 위치를 변경할 수 있습니다. x와 y는 음수 값일 수 있습니다.
translate(x,y)는 수평 및 수직으로 동시에 이동합니다(즉, X축과 Y축이 동시에 이동합니다). time)
translateX(x)는 수평 방향으로만 이동(X축 이동)
translateY(Y)는 수직 방향으로만 이동(Y축 이동)
.box { width: 499.9999px; height: 400px; background: pink; position: absolute; left:50%; top:50%; transform:translate(-50%,-50%); /* 走的自己的一半 */ }
위치가 지정된 상자를 수평 중앙에 놓기
2 . Scale scale(x, y)
transform:scale(0.8,1);
요소의 크기를 수평 및 수직으로 조정할 수 있습니다. 이 명령문은 요소를 가로 방향으로 20% 축소하기 위해 scale 방법을 사용하고 세로 방향으로는 크기를 조정하지 않습니다.
scale(X,Y) 요소의 크기를 가로와 세로로 동시에 조정합니다(즉, X축과 Y축의 크기를 동시에 조정)
scaleX(x) 요소의 크기를 가로로만 조정합니다(X축 크기 조정)
scaleY(y) 요소 수직 배율만(Y축 배율)
scale()의 기본값은 1입니다. 값이 0.01에서 0.99 사이의 값으로 설정되면 요소가 축소되고 그보다 큰 값은 축소됩니다. 1.01 값 이상인 경우 이 기능은 요소를 확대하는 것입니다
3. 회전 회전(deg)
요소를 회전할 수 있습니다. 양수 값은 시계 방향, 음수 값은 시계 반대 방향입니다.
요소가 회전하면 그에 따라 좌표축도 변경됩니다
transform:rotate(45deg);
body {
background-color: skyblue;
}
.container {
width: 100px;
height: 150px;
border: 1px solid gray;
margin: 300px auto;
position: relative;
}
.container > img {
display: block;
width: 100%;
height: 100%;
position: absolute;
transform-origin: top right;
/* 添加过渡 */
transition: all 1s;
}
.container:hover img:nth-child(1) {
transform: rotate(60deg);
}
.container:hover img:nth-child(2) {
transform: rotate(120deg);
}
.container:hover img:nth-child(3) {
transform: rotate(180deg);
}
.container:hover img:nth-child(4) {
transform: rotate(240deg);
}
.container:hover img:nth-child(5) {
transform: rotate(300deg);
}
.container:hover img:nth-child(6) {
transform: rotate(360deg);
}
이 예에서는 기울이기 방법을 사용하여 요소를 수평으로 30도 기울이고 처리 방향은 변경되지 않습니다.
요소를 특정 각도로 기울일 수 있으며 음수 값이 될 수 있습니다. 두 번째 매개변수를 쓰지 않으면 기본값은 0입니다.
transform:skew(30deg,0deg);Transform-move
p{transform-origin: left top;transform: rotate(45deg); } /* 改变元素原点到左上角,然后进行顺时旋转45度 */
nbsp;html>
<meta>
<title>2D变形-移动</title>
<style>
p {
width: 100px;
height: 100px;
background-color: pink;
transition: all 0.5s; /* 过渡效果 */
}
p:active {
/* transform: translateX(100px);X轴 */
/* a:activ
鼠标没点击没有松开鼠标的时候触发的状态 相当于点击 */
/* 只有一个参数就是 X轴 */
/* transform: translate(50px); */
transform: translateY(100px); /* Y轴 */
/* transform: translate(100px,100px); */
}
</style>
<p></p>
변형 중심 설정 point
nbsp;html>
<meta>
<title>让定位的盒子居中对齐</title>
<style>
p {
width: 200px;
height: 200px;
background-color: skyblue;
/* transform: translate(100px); */ /* 水平移动100px; */
/*transform: translate(50%); p自己的width的百分比 */
/* 之前盒子居中定位 */
position: absolute;
left: 50%;
top: 50%;
/* margin-left: -100px; 需要计算不合适 */
transform: translate(-50%,-50%);
}
</style>
<p></p>
그림 회전하기nbsp;html>
<meta>
<title>设置变形中心点</title>
<style>
img {
margin: 200px;
transition: all 0.6s;
/*transform-origin: center center; 默认 */
transform-origin: bottom right;
}
img:hover {
transform: rotate(360deg); /* 旋转180度 */
}
</style>
<p>
<img alt="CSS3에는 몇 가지 유형의 2D 변형이 있습니까?" >
</p>
더 많은 프로그래밍 관련 지식을 알고 싶다면
위 내용은 CSS3에는 몇 가지 유형의 2D 변형이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!