[前端与HTML]--变换与3D及动画样式

109 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 9 天

transform:

作用:移动 旋转 缩放 倾斜不会影响布局 (提高层级)  参照自身中心

transform:

translatex ()平移x轴  translatey()平移y  translate(x,y)

旋转:

transform:rotate(x,y,z)

缩放:

transform:scale(x,y)

倾斜:

transform:skew(x,y)

改变圆点:

transform-origin:x y可选值:center  (0 0左上角)上下左右

复合写法:

transform:平移和旋转或者旋转和平移  一般先旋转在平移

设置景深:

作用:模拟用户距离屏幕的距离  值最好在800px以上:perspective:像素;  给父元素加

3d环境下要注意

:rotate和skew都会改变坐标轴的位置

设置景深:

perspective-orgin:x  y   可选值:上下左右和中心

transform-style:

prespective-3D   如果有多个子元素使用了3D变换效果就要添加这个属性  作用:用来显示正确的3D 变化的子元素父元素加   自身用到了3D变换并且子元素也用到了3D变化就必须添加这个属性

性能:

变换样式性能最好
1.change构建dom树解析html
2.style计算样式 解析css
3.layout布局计算dom元素的最终位置  render最消耗性能
4.paint绘制图层,绘制元素的颜色,图像,阴影和transformz-index
5.composite渲染合并图层

页面的重绘:

 当页面的背景颜色,图片,阴影和transformz-index发生变化的时候就会触发  重绘的触发不会造成重排

页面的重排:

当页面的html元素的结构和位置发生了交换就会触发重排  重排触发一定会触发重绘

animation-name:动画名称 支持多个值的书写

animation-delay:动画延迟

animation-duration:动画时长

animation-timing-function:动画的运动速率· 可选值:steps(数字)

animation-iteration-count:动画的次数:可选值:infinite无限的

animation-direction:动画的方向:可选值:alternate:正向播放 reverse:反向播放

animation-fill-mode:动画结束时的状态:可选值:forwards保留最后一帧的位置 backwards回到第 一帧的位置

animation-play-state:动画播放时候的状态:可选值:running:自动播放 复合写法:animation:name,duration,timing-function,delay,iteration-count,direction,fill-mode,play-state