2D transform
rotate
rotate(angle) 定义 2D 旋转,在参数中规定角度。

注意,360是一圈

box1rotate(10deg)
box2rotate(-10deg)
box3rotate(360deg)
scale
scale(x,y) 定义 2D 缩放转换。
scaleX(x) 通过设置 X 轴的值来定义缩放转换。
scaleY(y) 通过设置 Y 轴的值来定义缩放转换。
box1scale(0.75,0.5)
box2scale(1.25)
box3scaleX(.75)
box4scaleY(.75)
translate,translateX,translateY
translateX(x) 定义转换,只是用 X 轴的值。
translateY(y) 定义转换,只是用 Y 轴的值。
translate(x,y) 定义 2D 转换。

注意,translate里使用%的话,计算参照该DOM节点自身的width/height属性

利用这一点,可以方便的实现一些效果,比如垂直居中

box1translate(-10px,-20%)
box2translateX(10px)
box3translateY(10px)
skew,skewX,skewY
skew(x-angle,y-angle) 定义沿着 X 和 Y 轴的 2D 倾斜转换。
skewX(angle) 定义沿着 X 轴的 2D 倾斜转换。
skewY(angle) 定义沿着 Y 轴的 2D 倾斜转换。
box1skewX(30deg)
box1skewY(30deg)
box1skew(10deg,30deg)
transform-origin
设置旋转元素的基点位置。
transform-origin: x-axis y-axis z-axis。
x-axis 定义视图被置于 X 轴的何处。可能的值:left,center,right,length,%
y-axis 定义视图被置于 Y 轴的何处。可能的值:top,center,bottom,length,%
z-axis 定义视图被置于 Z 轴的何处。可能的值:length

默认的基点在元素正中心

基点对于rotate,意味着旋转的固定点

基点对于scale,意味着放大时,位置不变的那个点

box1transform-origin:0 0; transform: rotate(15deg)
box1transform-origin:top right; transform: rotate(15deg)
box1transform-origin:100% 100%; transform: scale(1.25)
box1transform-origin:100% 100%; transform: scale(1.25)