CSS3变形(2D&3D)

2D变形

transform-origin为变形的基准点,对以下变形均有效。默认是中心,可以取值:

  • top, bottom, left, right, center

  • 百分数如transform-origin: 0% 0%;

  • 旋转rotatetransform:rotate(30deg);

  • 位移translate
    相对于自身

transform:translate(200px,150px);
// 只设置一个方向
transform:translateY(100px);
// 也可以设置成自身宽度的百分比
transform:translate(-50%,-50%);
  • 缩放scale
//单独设置宽高
transform:scale(2, 0.5);
//只设置一个方向
transform:scaleY(0.3);
//宽高等比缩放
transform:scale(3);
  • 扭曲skew
transform:skew(10deg, 20deg);
transform:skewY(10deg);
transform:skew(10deg);

transform:skew(30deg,10deg)如下图:


扭曲.png
  • 矩阵matrix
matrix(<number>, <number>, <number>, <number>, <number>, <number>)

关于Matrix

3D变形

  • 可以利用perspective来激活3D效果(相当于视距,离得近3D效果就好,远就不明显)
  • 在transform属性中使用perspective方法
transform: perspective( 600px );
  • 直接使用perspective属性
 perspective: 600px;

二者区别主要在作用于多个元素的时候展示效果会有不同


对比.png
  • 参数
rotateX( )
rotateY(  )
rotateZ(  )
translateZ(  )
scaleZ(  )
// 缩写方法,需要把三个参数写全(可能会触发硬件加速,提高渲染性能,即使像translate3d(0,0,0)这样什么也没发放改变)
translate3d( tx, ty, tz )
scale3d( sx, sy, sz )
rotate3d( rx, ry, rz, angle )
rotateXYZ.png
translateZ.png

动画工具

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于css3变形 CSS3变形是一些效果的集合,比如平移、旋转、缩放和倾斜效果,每个效果都被称作为变形函数(Tra...
    hopevow阅读 6,400评论 2 13
  • CSS里transform变形这个属性有点学习难度,尤其在CSS3里加上了3D效果之后,2维变3维学习成本更是成倍...
    张歆琳阅读 27,991评论 5 81
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 1,792评论 0 2
  • Transform字面上就是变形,改变的意思。在CSS3中transform主要包括以下几种:旋转rotate、扭...
    hzrWeber阅读 22,171评论 0 19
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,328评论 0 11