我正在尝试为div设置动画,以便在页面加载时它具有缩放(0,0)和动画缩放(1,1)。我遇到的问题是,一旦动画生效,div再次缩放为0。我想要的是div以动画比例(1,1)并保持这样。这是我的CSS代码
@-moz-keyframes bumpin {
0% { -moz-transform: scale(0,0); }
100% { -moz-transform: scale(1,1); }
}
.landing .board {
-moz-transform: scale(0,0);
-moz-transform-origin: 50% 50%;
}
.landing .board {
-moz-animation-name: bumpin;
-moz-animation-duration: 1s;
-moz-animation-timing-function: ease;
-moz-animation-delay: 0s;
-moz-animation-iteration-count: 1;
-moz-animation-direction: normal;
}
我做错了什么?
提前致谢
莫罗
答案 0 :(得分:11)
您正在寻找animation-fill-mode:forwards
,它在动画完成时将最后一个关键帧应用于元素。 https://developer.mozilla.org/en/CSS/animation-fill-mode
-moz-animation-fill-mode: forwards
答案 1 :(得分:1)
执行此操作的另一种方法:如果要做的只是为要缩放的元素设置动画,则不需要使用关键帧。过渡就足够了。
.landing-board {
-moz-transition: all 1s ease;
/* all other css properties */
}
.landing-board.animated {
-moz-transform: scale(1.1);
}
将相关类添加到元素中的javascript非常少:(这里我使用的是jquery,但它可以在任何其他框架或纯javascript中完成)
$(window).load(function() {
$('.landing-board').addClass('animated');
});