温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS3怎么实现预载动画效果

发布时间:2022-04-25 14:21:05 阅读:258 作者:iii 栏目:大数据
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

本篇内容主要讲解“CSS3怎么实现预载动画效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS3怎么实现预载动画效果”吧!

预载动画一:双旋圈

在两个不同方向旋转的圆圈。我们对内圈的转速定义了一个CSS代码,即内圈比外圈的速率快2倍。
 

实现如图所示:

CSS3怎么实现预载动画效果

html代码:

<body style="background: #ffb83c;">
    <div id="preloader-1">
        <span></span>
        <span></span>
    </div>
</body>

css代码:

#preloader-1{
    position: relative;
}
#preloader-1 span{
    position: absolute;
    border:8px solid #fff;
    border-top:8px solid transparent;
    border-radius999px;
}
#preloader-1 span:nth-child(1){
    width:80px;
    height80px;
    animation: spin-1 2s infinite linear;
}
#preloader-1 span:nth-child(2){
    top:20px;
    left:20px;
    width:40px;
    height40px;
    animation: spin-2 1s infinite linear;
}
@keyframes spin-1{
    0%{transformrotate(360deg); opacity1.0;}
    50%{transformrotate(180deg); opacity0.5;}
    100%{transformrotate(0deg);opacity0;}
}
@keyframes spin-2{
    0%{transformrotate(0deg); opacity0.5;}
    50%{transformrotate(180deg); opacity1;}
    100%{transformrotate(360deg);opacity0.5;}
}

预载动画二:交错圈

两个圆圈进行横向交错来回移动。每个圆圈都设置了单独的反向移动动画参数。
 

效果:

CSS3怎么实现预载动画效果

html代码:

<body style="background: #4ad3b4;">
    <div id="preloader-2">
        <span></span>
        <span></span>
    </div>
</body>

css代码:

#preloader-2{
    position: relative;
}
#preloader-2 span{
    position: absolute;
    width:30px;
    height30px;
    background#fff;
    border-radius999px;
}
#preloader-2 span:nth-child(1){
    animation: cross-1 1.5s infinite linear;
}
#preloader-2 span:nth-child(2){
    animation: cross-2 1.5s infinite linear;
}
@keyframes cross-1{
    0%{transformtranslateX(0); opacity0.5;}
    50%{transformtranslateX(80px); opacity1;}
    100%{transformtranslateX(0);opacity0.5;}
}
@keyframes cross-2{
    0%{transformtranslateX(80px); opacity0.5;}
    50%{transformtranslateX(0); opacity1;}
    100%{transformtranslateX(80px);opacity0.5;}
}

预载动画三:旋转圈

效果:

CSS3怎么实现预载动画效果

html代码:

<body style="background: #ab69d9;">
    <div id="preloader-3">
        <span></span>
    </div>
</body>

css代码:

#preloader-3{
    position: relative;
    width:80px;
    height80px;
    border:4px solid rgba(255,255,255,.25);
    border-radius999px;
    
}
#preloader-3 span{
    position: absolute;
    width:80px;
    height:80px;
    border:4px solid transparent;
    border-top:4px solid #fff;
    border-radius999px;
    top:-4px;
    left:-4px;
    animation: rotate 1s infinite linear;
}
@keyframes rotate{
    0%{transformrotate(0deg);}
    100%{transformrotate(360deg);}
}

预载动画四:跳动圈

这是一种墨西哥波浪纹的动画效果,通过设置不同圆圈之间的延迟参数来实现。
 

效果:

CSS3怎么实现预载动画效果

html代码:

<body style="background: #c1d64a;">
    <div id="preloader-4">
        <span></span>
        <span></span>
        <span></span>
        <span></span>
        <span></span>
    </div>
</body>

css代码:

#preloader-4{
    position: relative;
}
#preloader-4 span{
    position:absolute;
    width:16px;
    height16px;
    border-radius999px;
    background#fff;
    animation: bounce 1s infinite linear;
}
#preloader-4 span:nth-child(1){
    left:0;
    animation-delay0s;
}
#preloader-4 span:nth-child(2){
    left:20px;
    animation-delay0.25s;
}
#preloader-4 span:nth-child(3){
    left:40px;
    animation-delay0.5s;
}
#preloader-4 span:nth-child(4){
    left:60px;
    animation-delay0.75s;
}
#preloader-4 span:nth-child(5){
    left:80px;
    animation-delay1.0s;
}
@keyframes bounce{
    0%{transformtranslateY(0px);opacity0.5;}
    50%{transformtranslateY(-30px);opacity1.0;}
    100%{transformtranslateY(0px);opacity0.5;}
}

预载动画五:雷达圈

一种雷达辐射效果,给3个span elements设置相同的淡入淡出效果,再予每个稍微延迟下即可实现。
 

效果:

CSS3怎么实现预载动画效果

html代码:

<body style="background: #f9553f;">
    <div id="preloader-5">
        <span></span>
        <span></span>
        <span></span>
    </div>
</body>

css代码:

#preloader-5{
    position: relative;
}
#preloader-5 span{
    position:absolute;
    width:50px;
    height50px;
    border:5px solid #fff;
    border-radius999px;
    opacity0;
    animation: radar 2s infinite linear;
}
#preloader-5 span:nth-child(1){
    animation-delay0s;
}
#preloader-5 span:nth-child(2){
    
    animation-delay0.66s;
}
#preloader-5 span:nth-child(3){
    animation-delay1.33s;
}

@keyframes radar{
    0%{transformscale(0);opacity0;}
    25%{transformscale(0);opacity0.5;}
    50%{transformscale(1);opacity1.0;}
    75%{transformscale(1.5);opacity0.5;}
    100%{transformscale(2);opacity0;}
}

到此,相信大家对“CSS3怎么实现预载动画效果”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:https://my.oschina.net/u/4581260/blog/4364474

AI

开发者交流群×