2d變形
transform: none | transform-function
1.rotate(角度)
Rotate(45deg)往右旋轉
Rotate(-60deg)往左旋轉
2.translate(50px)平移
x軸偏移了50px,y軸沒有偏移
translate(50px,20%)
translateX(50px)
translateY(50px)
3.scale()縮放
scale(1.2)x軸和y軸同時縮放
scale(1,1.2)x軸沒有縮放 y軸縮放了1.2倍
scaleX(1.2)
scaleY(1,2)
4.skew(30deg|30deg);傾斜
y軸往x軸方向傾斜的角度 x軸往y軸方向傾斜的角度
5.transform-origin: 0 0;
基于那個點進行變換
3d變形
perspective: 200px;離得越近透視程度越明顯
perspective-origin: 50% 50%;透視的角度(從哪個視線看)
3d效果:
移動
translate3d(x軸位移 ,y軸位移, z軸上的位移);
z軸方向正方向移動了(也就是說離得近了),看起來就是變大的效果
translateX() translateY() translateZ()
縮放
transform: scale3d(X軸方向放大,y軸方向放大,z軸方向放大); z軸不影響盒子的大小
transform:scale3d(1.2,1.2,2) translateZ(50px);scale3d和translateZ配合使用scale3d的z就管用了
scaleX() scaleY() scaleZ()
旋轉
transform: rotate3d(1,0,0,45deg);
第一個參數:x軸
第二個參數:y軸
第三個參數:z軸
第四個參數:角度
也可以拆分成
RotateX(角度)
RotateY(角度)
RotateZ(角度)
transform-style:preserve-3d | flat;
Flat是默認值,是扁平化的意思
preserve-3d讓transform元素保留內部3d空間
backface-visibility: hidden | visible;
visible背面可見 是默認值
hidden 背面不可見