一个CSS3 动画执行完成后的问题...
问题描述
例:
在执行完一段css3动画后需要隐藏这个元素如何操作?也就是让它不重复动作.
使用animation参数forwards无效.
注:前提是不使用jQuery情况下能做到么?
问题解答
回答1:这个隐藏的话可以设置opacity:0
我们可以让一个元素的默认opacity=0
把动画放到一个一个类上,然后给把这个类付给这个属性
@keyframes ani{ 0%{opacity: 1}//此处显示转换为1 动画结束后就会自动隐藏了,因为元素的opacity为0,应该使用 display也可以,但我没用过,因为display没有动画效果}回答2:
不用jQUery,JavaScript可以接受么?
取决不同的类型,动画播放过程会触发两类事件:1. AnimationEvent2. TransitionEvent
动画结束的事件的两个实现分别是:1. animationend2. transitionend
Demo页面在这里,只测试过Chrome:http://codepen.io/longtian/pen/jEyrzN
兼容性大坑可以看AngularUI的这部分源码https://github.com/angular-ui/bootstrap/blob/7512b93fecb6f27df4f5aeba4c756c0c36aebbf2/src/transition/transition.js#L59
回答3:可以使用js的定时器。把定时器时间设置成和css动画时间一样就行了
回答4:http://jsfiddle.net/fevwehk3/
相关文章:
1. 关于docker下的nginx压力测试2. angular.js - Ionic 集成crosswalk后生成的apk在android4.4.2上安装失败???3. 为什么我ping不通我的docker容器呢???4. javascript - nidejs环境设置操作一直出现这种问题怎么解决?5. java - 静态属性中的赋值和静态代码块中的赋值有什么区别?6. 使用mysql自增主键遇到的问题7. javascript - 文件改后缀后怎么获得原来是什么类型的8. dockerfile - [docker build image失败- npm install]9. java - Tomcat 不同的域名访问同一个项目的不同网页10. python - pandas按照列A和列B分组,将列C求平均数,怎样才能生成一个列A,B,C的dataframe
