内容简介:执行变换的属性:
transition
允许css的属性值在一定的时间区间内平滑地过渡。这种效果可以在鼠标单击、获得焦点、被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值
transition
主要包含四个属性值:
执行变换的属性: transition-property
,
变换延续的时间: transition-duration
,
在延续时间段,变换的速率变化: transition-timing-function
,
变换延迟时间: transition-delay
。
<div class="box"></div> <style> .box { width: 100px; height: 100px; background: cornsilk; margin: 200px auto; transition: all 2s ease-in-out; } .box:hover{ width: 200px; height: 200px; } </style> 复制代码
这里需要注意一个transition加在 .box
和 .box:hover
上的区别
.box:
直接上图
.box { transition: all 2s ease-in-out; } 复制代码
.box:hover
直接上图(只在鼠标放上时有效果,离开时没有效果)
.box:hover { transition: all 2s ease-in-out; } 复制代码
注意事项
- 不是所有的CSS属性都支持transition。
- transition需要明确知道,开始状态和结束状态的具体数值,才能计算出中间状态。比如,height从0px变化到100px,transition可以算出中间状态。但是,transition没法算出0px到auto的中间状态,也就是说,如果开始或结束的设置是height: auto,那么就不会产生动画效果。
- transition需要事件触发,所以没法在网页加载时自动发生。
- transition是一次性的,不能重复发生,除非一再触发。
animation
值 | 描述 |
---|---|
name | 用来调用@keyframes定义好的动画,与@keyframes定义的动画名称一致 |
duration | 指定元素播放动画所持续的时间 |
timing-function | 规定速度效果的速度曲线,是针对每一个小动画所在时间范围的变换速率 |
delay | 定义在浏览器开始执行动画之前等待的时间,值整个animation执行之前等待的时间 |
iteration-count | 定义动画的播放次数,可选具体次数或者无限(infinite) |
direction | 设置动画播放方向:normal(按时间轴顺序),reverse(时间轴反方向运行),alternate(轮流,即来回往复进行),alternate-reverse(动画先反运行再正方向运行,并持续交替运行) |
play-state | 控制元素动画的播放状态,通过此来控制动画的暂停和继续,两个值:running(继续),paused(暂停) |
fill-mode | 控制动画结束后,元素的样式,有四个值:none(回到动画没开始时的状态),forwards(动画结束后动画停留在结束状态),backwords(动画回到第一帧的状态),both(根据animation-direction轮流应用forwards和backwards规则),注意与iteration-count不要冲突(动画执行无限次) |
name 用来调用@keyframes定义好的动画,与@keyframes定义的动画名称一致
以上所述就是小编给大家介绍的《面试官: css3动画了解吗? 我: .......》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 【面试必备】简单了解下ExecutorService
- 面试必问的volatile,你了解多少?
- 面试必问的 volatile,你了解多少?
- 面试官:说说你对ThreadLocal的了解
- 面试官:负载均衡的算法你了解不?
- 一道面试题让你更加了解事件队列
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。