【第二屏】 1、小火箭要有抖动效果。建议:用animation动画:

【第二屏】 1、小火箭要有抖动效果。建议:用animation动画:

这个动画加了,如何不破坏原有的动画?

.screen-2__wrap__heading{
    transition: all 1s;
}
.screen-2__wrap__border,
.screen-2__wrap__subheading,
.screen-2__wrap__man{
    transition: all 1s .5s;
}
.screen-2__wrap__roket{
    transition: all .5s 1.5s;
    animation: bounceInUp 1s 1.5s;
}
.screen-2__wrap__heading_animate_init,
.screen-2__wrap__border_animate_init,
.screen-2__wrap__subheading_animate_init
,.screen-2__wrap__roket_animate_init
{
    opacity: 0;
    transform: translate(0, 100%);
}
.screen-2__wrap__man_animate_init{
    opacity: 0;
}
.screen-2__wrap__heading_animate_done,
.screen-2__wrap__border_animate_done,
.screen-2__wrap__subheading_animate_done
,.screen-2__wrap_roket_animate_done
{
    opacity: 1;
    transform: translate(0,0);
}
.screen-2__wrap__man_animate_done{
    opacity: 1;
}
/* .screen-2__wrap__roket_animate_bounceInUp{
    
} */
/* 小火箭抖动动画 */
@keyframes bounceInUp{
    0% { 
        opacity: 0;
        transform: translate(0, 100%);
    }
    60% { 
        opacity: 1;
        transform: translate(0, -20px);
    }
    75% {
        transform: translate(0, 10px);
    }
    90% {
        transform: translate(0, -5px);
    }
    100% {
        opacity: 1;
        transform: translate(0, 0);
    }
}
<div class="screen-2">
            <div class="screen-2__wrap">
                <h2 class="screen-2__wrap__heading screen-2__wrap__heading_animate_init">每门课都是真实案例</h2>
                <div class="screen-2__wrap__border screen-2__wrap__border_animate_init"></div>
                <h3 class="screen-2__wrap__subheading screen-2__wrap__subheading_animate_init">真实案例,真实场景,在实战中实践、操作、调试<br/>大牛带你体验BAT真实开发流程,所有开发过程意义为你呈现</h3>
                <div class="screen-2__wrap__man screen-2__wrap__man_animate_init"></div>
                <div class="screen-2__wrap__roket 
                screen-2__wrap__roket_animate_init"></div>
            </div>
        </div>
'.screen-2' : [
        '.screen-2__wrap__heading',
        '.screen-2__wrap__border',
        '.screen-2__wrap__subheading',
        '.screen-2__wrap__man',
        '.screen-2__wrap__roket',
    ],


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,过渡的0.5并不是从init到done哦,这个是js中替换的类名,而过渡是作用于这个元素的属性的哦。比如说opacity属性。

而且这个时间不是累加的哦。所以动画完成的时间还是设置animation中设置的时间。

祝学习愉快!

好帮手慕糖 2019-09-19 09:51:57

同学你好,1、不用改哦,可以查看下效果。两个动画,一个是指transition: all .5s 1.5s; 吗?

这个是过渡哦,不是动画。

2、 .screen-2__wrap__roket_animate_done这个属性,是之后在js中添加的,开始是不需要动画的。因为开始的时候,透明度是0,不会显示。但是当添加 .screen-2__wrap__roket_animate_done这个属性之后,透明度变为1(可以显示出来),之后在添加动画哦。

祝学习愉快!

  • transition: all .5s 1.5s; 是init到done 0.5s完成,1.5s延迟后进行 animation: bounceInUp 1s 1.5s; 是done完成后,1s完成动画,1.5s延迟进行 那整个完成过程是上面2s加下面2.5s等于4.5s吗?但是看着不像啊
    2019-09-19 12:01:44
好帮手慕糖 2019-09-18 09:59:08

同学你好,1、选择器中roket前面少了一个下划线“_”,应该有两个哦。

2、添加动画的,添加给.screen-2__wrap__roket_animate_done这个类,例:

http://img1.sycdn.imooc.com//climg/5d818efc0960fab106140460.jpg

希望能帮助到你,欢迎采纳。

祝学习愉快!

  • 这个很奇怪啊,JS中和html中不用修改吗?js中'.screen-2__wrap__roket', 就没用了啊 .screen-2__wrap__roket_animate_done{ transition: all .5s 1.5s; animation: bounceInUp 1s 1.5s; } 这两个动画为什么加在这里,原理是什么?能解释一下吗
    2019-09-18 21:09:31
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师