css3基础---transform 2D变形

transform 属性允许你修改CSS视觉格式模型的坐标空间
transform 属性 , 只对 block 级元素生效!

旋转(rotate)

transform:rotate(angle);   
   正值:顺时针旋转  rotate(360deg)
   负值:逆时针旋转  rotate(-360deg)
   只能设单值。正数表示顺时针旋转,负数表示逆时针旋转

 

 

平移(translate)

X方向平移:transform:  translateX(tx)
Y方向平移:transform:  translateY(ty) 
二维平移:transform:  translate(tx, ty); 如果ty没有指定,它的值默认为0。
 
可设单值,也可设双值。
       正数表示XY轴正向位移,负数为反向位移。设单值表示只X轴位移,Y轴坐标不变,
       例如transform: translate(100px);等价于transform: translate(100px,0);

 

 

缩放(scale)

transform:scale(2);
  X方向缩放:transform:  scaleX(sx); 
  Y方向缩放:transform:  scaleY(sy);
  二维缩放 :transform:  scale(sx[, sy]);  (如果sy 未指定,默认认为和sx的值相同)  
 
  要缩小请设0.01~0.99之间的值,要放大请设超过1的值。
  例如缩小一倍可以transform: scale(.5);
      放大一倍可以transform: scale(2);
 
 如果只想X轴缩放,可以用scaleX(.5)相当于scale(.5, 1)。
 同理只想Y轴缩放,可以用scaleY(.5)相当于scale(1, .5)
 
 正值:缩放的程度
  负值:不推荐使用(有旋转效果)
  单值时表示只X轴,Y轴上缩放粒度一样,如transform: scale(2);等价于transform: scale(2,2);
 

 

倾斜(skew)

transform:skewX(45deg);
    X方向倾斜:transform:  skewX(angle)
               skewX(45deg):参数值以deg为单位 代表与y轴之间的角度
    Y方向倾斜:transform:  skewY(angle)
               skewY(45deg):参数值以deg为单位 代表与x轴之间的角度
     二维倾斜:transform:  skew(ax, ay);  如果ay未提供,在Y轴上没有倾斜
               skew(45deg,15deg):参数值以deg为单位 第一个参数代表与y轴之间的角度
                                                                        第二个参数代表与x轴之间的角度
                单值时表示只X轴扭曲,Y轴不变,如transform: skew(30deg);等价于                     transform: skew(30deg, 0);
                考虑到可读性,不推荐用单值,应该用transform: skewX(30deg);。skewY表示                     只Y轴扭曲,X轴不变  
            
 正值:拉正斜杠方向的两个角
 负值:拉反斜杠方向的两个角

 

 

transform-origin基点的变换

在没有设置过transform-origin属性时,CSS变形进行的旋转、移位、缩放等操作都是以元素自己中心(变形原点/中心点)位置进行变形的。

而CSS3 中的transform-origin属性用于设置旋转元素的基点位置
 

transform-origin: [ | left | center | right ] ,[ | top | center | bottom ] 

transform-origin: top left;

 

transform-origin: 20px 40px;

 

css3基础---transform 2D变形

上一篇:Vue+elementui前后端分离,单个图片文件上传和上传时出现的跨域问题的解决方案


下一篇:webpack ES6转ES5