我想知道如何让div在播放时播放CSS动画,以及当鼠标停留在它上面时如何让它向后播放动画。我已经有了动画,用一个方便的在线CSS关键帧动画生成器程序生成。
.element-animation{
-webkit-animation: animationFrames ease 1s;
-webkit-animation-iteration-count: 1;
-webkit-transform-origin: 0% 0%;
-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
}
@-webkit-keyframes animationFrames {
0% {
left:0px;
top:0px;
opacity:1;
-webkit-transform: rotate(0deg) scaleX(1) scaleY(1) ;
}
20% {
-webkit-transform: rotate(60deg) ;
}
40% {
-webkit-transform: rotate(40deg) ;
}
60% {
-webkit-transform: rotate(54deg) ;
}
80% {
-webkit-transform: rotate(42deg) ;
}
100% {
left:0px;
top:0px;
opacity:1;
-webkit-transform: rotate(46deg) scaleX(1) scaleY(1) ;
}
}
非常感谢所有人的帮助!
答案 0 :(得分:1)
将:hover
添加到css类,例如element-animation:hover
检查使用Chrome测试的小提琴http://jsfiddle.net/PawelK/SF4Zy/3/
答案 1 :(得分:0)
要在悬停事件中触发CSS动画,您需要通过JavaScript添加事件侦听器。
document.querySelector('#div1').addEventListener('mouseenter', function(){
this.classList.add('element-animation');
});
或者,如果您使用的是jQuery:
$('#div1').on('mouseenter', function(){
$(this).addClass('element-animation');
});