Transform-style:plat|preserve3d //平面||3dcss
值html |
描述spa |
none3d |
定義不進行轉換。orm |
matrix(n,n,n,n,n,n)htm |
定義 2D 轉換,使用六個值的矩陣。blog |
matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)ci |
定義 3D 轉換,使用 16 個值的 4x4 矩陣。animation |
translate(x,y)it |
定義 2D 轉換。 |
translate3d(x,y,z) |
定義 3D 轉換。 |
translateX(x) |
定義轉換,只是用 X 軸的值。 |
translateY(y) |
定義轉換,只是用 Y 軸的值。 |
translateZ(z) |
定義 3D 轉換,只是用 Z 軸的值。 |
scale(x[,y]?) |
定義 2D 縮放轉換。 |
scale3d(x,y,z) |
定義 3D 縮放轉換。 |
scaleX(x) |
經過設置 X 軸的值來定義縮放轉換。 |
scaleY(y) |
經過設置 Y 軸的值來定義縮放轉換。 |
scaleZ(z) |
經過設置 Z 軸的值來定義 3D 縮放轉換。 |
rotate(angle) |
定義 2D 旋轉,在參數中規定角度。 |
rotate3d(x,y,z,angle) |
定義 3D 旋轉。 |
rotateX(angle) |
定義沿着 X 軸的 3D 旋轉。 |
rotateY(angle) |
定義沿着 Y 軸的 3D 旋轉。 |
rotateZ(angle) |
定義沿着 Z 軸的 3D 旋轉。 |
skew(x-angle,y-angle) |
定義沿着 X 和 Y 軸的 2D 傾斜轉換。 |
skewX(angle) |
定義沿着 X 軸的 2D 傾斜轉換。 |
skewY(angle) |
定義沿着 Y 軸的 2D 傾斜轉換。 |
perspective(n) |
爲 3D 轉換元素定義透視視圖。 |
實例:
代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>tranform</title>
</head>
<style type="text/css">
.box-tranform{
width: 1000px;
background-color: #fdfdfd;
margin: 50px auto;
}
.box-tranform:after{
clear: both;
content: ' ';
display: block;
overflow: hidden;
}
.box-tranform > p{
width: 230px;
float: left;
border: 1px #999 solid;
margin-right: 10px;
text-align: center;
padding-bottom: 10px;
}
.box-tranform > p strong {
display: block;
background-color: #eee;
line-height: 28px;
font-size: 20px;
font-family:"Microsoft YaHei";
color: #333;
margin-bottom: 10px;
}
.box-tranform > p span{
display: block;
width: 100px;
height: 100px;
margin: 0px auto;
border: 1px #ccc solid;
background-color: #09f;
}
.box-tranform > p .rotate{
transform: rotate(20deg);
animation: rotate;
animation-duration: 2s;
animation-iteration-count: infinite;
}
@keyframes rotate {
0%{transform: rotate(0deg);background-color: #0099ff}
25%{transform: rotate(90deg);background-color: red}
50%{transform: rotate(180deg);background-color: green}
75%{transform: rotate(270deg);background-color: gray}
100%{transform: rotate(360deg);background-color: #0099ff}
}
.box-tranform > p .translate{
transform: translate(20px);
}
.box-tranform > p .scal{
transform: scale(.5);
}
.box-tranform > p .skew{
transform: skew(20deg ,-50deg);
}
</style>
<body>
<div class="box-tranform">
<p>
<strong>旋轉(rotate)</strong>
<span class="rotate"></span>
</p>
<p>
<strong>移動(translate)</strong>
<span class="translate"></span>
</p>
<p>
<strong>縮放(scale)</strong>
<span class="scal"></span>
</p>
<p>
<strong>扭曲(skew)</strong>
<span class="skew"></span>
</p>
</div>
</body>
</html>
效果圖: