matrix() 方法把所有 2D 转换方法组合在一起。
matrix() 方法需要六个参数,包含数学函数,允许您:旋转、缩放、移动以及倾斜元素
matrix( a,b,c,d,e,f)
缩放只有跟a和b有关系,跟其他数值都无关,a对应x轴缩放,b对应y轴缩放,缩放多少倍就乘以多少
平移只有跟e和f有关系,跟其他a,b,c,d没有关系,它们该怎么样还是怎么样,e对应x轴的平移,f对应y轴的平移,往正方向平移多少单位就加上多少单位,反之则减去多少个单位。
旋转
现在我们先把公式放在这里,我们来看一下下图的这个正方形,从图中我们可以知道a,b,c,d的坐标分别为:
transform: matrix(0.707,0.707,-0.707,0.707,0,0);
A(0,1) B(1,1) C(1,0) D(0,0)
当我们让它旋转90°之后,那此时的cos45°就是0 sin45°都为1,分别把A,B,C,D里的x,y代入上面的公式之后我们可以得到:
现在这个正方形就变成了下图的样子,和我们写代码达到的效果是一样的: