我对CSS3转换和关键帧动画相对较新,因此倾向于坚持使用CSS生成器或者翻录其他示例。我修改了此处显示的示例,仅用于我自己的目的,在Chrome中效果很好,但在FF或IE中却不行 - http://webbb.be/blog/making-a-swinging-effect-with-css3-animations/。
请参阅下面的示例(包含js小提琴),实质上这是使用透视悬停效果,但透视效果似乎不适用于FF和IE ..我只添加了-moz-pre修复程序以下示例......任何想法?
a { display: block;
float:left;
text-indent: -999px;
overflow: hidden;
height: 100px;
width: 100px;
background: red;
cursor: pointer;
}
.perspective {
position: relative;
-webkit-perspective: 350;
-moz-perspective: 350;
width: 100px;
height: 100px;
}
.perspective .swing {
position: relative;
z-index:1;
-webkit-transition: all 250ms ease;
-moz-transition: all 250ms ease;
}
a.swing:hover {
-webkit-transform-origin: top;
-moz-transform-origin: top;
-webkit-animation: balance 1.5s ease-in-out 110ms 1 alternate;
-moz-animation: balance 1.5s ease-in-out 110ms 1 alternate;
}
@-webkit-keyframes balance {
25% { -webkit-transform: rotateX(-60deg); }
45% { -webkit-transform: rotateX(50deg); }
69% { -webkit-transform: rotateX(-30deg); }
90% { -webkit-transform: rotateX(30deg); }
100% { -webkit-transform: rotateX(0deg);}
}
@-moz-keyframes balance {
25% { -moz-transform: rotateX(-60deg); }
45% { -moz-transform: rotateX(50deg); }
69% { -moz-transform: rotateX(-30deg); }
90% { -moz-transform: rotateX(30deg); }
100% { -moz-transform: rotateX(0deg);}
}
答案 0 :(得分:0)
尝试为无-webkit-
或-moz-
个浏览器添加语句
我没试过,但它可能是解决方案。
transform-origin: top;
animation: balance 1.5s ease-in-out 110ms 1 alternate;
@keyframes balance {
25% { transform: rotateX(-60deg);}
45% { transform: rotateX(50deg); }
69% { transform: rotateX(-30deg); }
90% { transform: rotateX(30deg); }
100% { transform: rotateX(0deg);}
}
TJL
答案 1 :(得分:0)