基于CSS3实现的几个小loading效果


Posted in HTML / CSS onSeptember 27, 2018

CSS3实现的几个小loading效果

昨晚上闲的没事突然想做几个小loading效果,下面是昨晚上做的几个小案例,分享给大家

1.水波loading:这个loading是我觉得非常简单,但是看上去的效果却非常不错的一个小loading

基于CSS3实现的几个小loading效果 

这个是效果图片

下面我直接把代码放上来,大家需要的可以直接拉走

               核心思想:(旋转,以及overflow:hidden属性),可以把代码中的overflow属性注释掉,保准你看一眼明白了,看不明白回来找我,我对你负责

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0
        }
        body {
            background-color: black
        }
        .box {
            margin: 200px auto;
            height: 50px;
            width: 50px;
            border-radius: 10px;
            background-color: rgb(0, 174, 255);
            position: relative;
            overflow: hidden;
            border: 1px solid rgb(0, 174, 255);
            border-top: none;
        }
        .a {
            width: 200px;
            height: 200px;
           background: black;
            position: absolute;
            left: -80px;
            top: -180px;
            border-radius: 80px;
            animation: xuanzhuan 5s linear infinite;
            z-index: 2
        }
        @keyframes xuanzhuan{
            0%{transform: rotate(0deg)}
            100%{transform: rotate(360deg)}
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="a"></div>
        <div class="b"></div>
    </div>
</body>
</html> 

2.普通的圆形loading    这个也很简单  没啥好说的,直接上代码了

基于CSS3实现的几个小loading效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
    *{margin: 0;padding: 0}
    li{list-style: none}
    body,html{
        background-color: black;
    }
    ul{
        height: 40px;
        width: 200px;
        margin: 50px auto;
    }
    ul>li{
        float: left;
        height: 20px;
        width: 20px;
        border-radius: 50%;
        background: white;
        margin-left: 10px;
        animation: move 2s infinite alternate;
        transform: scale(0.5)
    }
    ul>li:nth-of-type(2){
        animation-delay: 0.5s;
    }
    ul>li:nth-of-type(3){
        animation-delay:1s;
    }
    @keyframes move{
        0%{transform: scale(0.5);opacity: 0.5}
        100%{transform: scale(1);opacity: 1;}
    }
    </style>
</head>
<body>
    <ul>
        <li></li>
        <li></li>
        <li></li>
    </ul>
</body>
</html>

3.圆形转圈loading

思想(把小圆用定位排成圆形,再给每个上添加动画,用delay控制延迟事件即可)

基于CSS3实现的几个小loading效果

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .d1{
            width: 50px;
            height: 50px;
            position: absolute;
            margin: 100px;
        }
        .d1 p{
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: red;
            position: absolute;
            animation: dong 1.5s linear infinite;
        }
        .d1 p:nth-child(1){
            top: 0;
            left: 0;
        }
        .d1 p:nth-child(2){
            top: 0;
            right: 0;
        }
        .d1 p:nth-child(3){
            right: 0;
            bottom: 0;
        }
        .d1 p:nth-child(4){
            bottom: 0;
            left: 0;
        }
        .d1:nth-of-type(2){
            transform: rotate(45deg);
        }
        @keyframes dong{
            0%{
                transform: scale(0);
            }
            50%{
                transform: scale(1);
            }
            100%{
                transform: scale(0);
            }
        }
        .d1:nth-of-type(1) p:nth-of-type(1){
            /*负值:动画直接开始,但跳过前...秒动画*/
            animation-delay: -0.1s;
        }
        .d1:nth-of-type(2) p:nth-of-type(1){
            animation-delay: -0.3s;
        }
        .d1:nth-of-type(1) p:nth-of-type(2){
            animation-delay: -0.5s;
        }
        .d1:nth-of-type(2) p:nth-of-type(2){
            animation-delay: -0.7s;
        }
        .d1:nth-of-type(1) p:nth-of-type(3){
            animation-delay: -0.9s;
        }
        .d1:nth-of-type(2) p:nth-of-type(3){
            animation-delay: -1.1s;
        }
        .d1:nth-of-type(1) p:nth-of-type(4){
            animation-delay: -1.3s;
        }
        .d1:nth-of-type(2) p:nth-of-type(4){
            animation-delay: -1.5s;
        }
    </style>
    <body>
        <div class="d1">
            <p></p>
            <p></p>
            <p></p>
            <p></p>
        </div>
        <div class="d1">
            <p></p>
            <p></p>
            <p></p>
            <p></p>
        </div>
    </body>
</html>

 

4.交叉效果

这个稍微复杂一点,其实只要捋明白思路,也挺简单的(PS:大家可以把动画挨个取消试试,你就会发现好像并不是很难)

基于CSS3实现的几个小loading效果

<!doctype html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta name="renderer" content="webkit">
</head>
<body>
    <style>
        body {
            background-color: #F5F5F5;
            padding: 100px 120px;
        }
        .box {
            margin-left: 500px;
            display: block;
            width: 64px;
            height: 64px;
            transform-origin: 16px 16px;
            /* 旋转 */
            animation: xuanzhuan 5s infinite;
        }
        /* 平移 */
        .ping {
            animation: pingyi 2.5s infinite;
            position: absolute;
        }
       .hang {
            width: 64px;
            height: 24px;
            position: absolute;
        }
        .hang:nth-child(0) {
            transform: rotate(0deg);
        }
        .hang:nth-child(1) {
            transform: rotate(90deg);
        }
        .hang:nth-child(2) {
            transform: rotate(180deg);
        }
        .hang:nth-child(3) {
            transform: rotate(270deg);
        }
        /* 第一个小珠子 */
       .ping:nth-child(1) {
            width: 8px;
            height: 8px;
            top: 50%;
            left: 50%;
            margin-top: -4px;
            margin-left: -4px;
            border-radius: 4px;
            animation-delay: -0.3s;
        }
        /* 第二个小珠子 */
        .ping:nth-child(2) {
            width: 16px;
            height: 16px;
            top: 50%;
            left: 50%;
            margin-top: -8px;
            margin-left: -8px;
            border-radius: 8px;
            -webkit-animation-delay: -0.6s;
            animation-delay: -0.6s;
        }
         /* 第三个小珠子 */    
        .ping:nth-child(3) {
            width: 24px;
            height: 24px;
            top: 50%;
            left: 50%;
            margin-top: -12px;
            margin-left: -12px;
            border-radius: 12px;
            animation-delay: -0.9s;
        }
        .blue {
            background-color: #1f4e5a;
        }
        .red {
            background-color: #ff5955;
        }
        .yellow {
            background-color: #ffb265;
        }
        .green {
            background-color: #00a691;
        }
        @keyframes xuanzhuan {
            0% { transform: rotate(0deg);}
            100% { transform: rotate(360deg);}
     }
        @keyframes pingyi {
            0% {transform: translateX(0);}
             25% { transform: translateX(-64px); }
            75% { transform: translateX(32px);} 
            100% {transform: translateX(0);}
        }
    </style>
        <div class="box">
            <div class="hang">
                <div class="ping blue"></div>
                <div class="ping blue"></div>
                <div class="ping blue"></div>
            </div>
            <div class="hang">
                <div class="ping yellow"></div>
                <div class="ping yellow"></div>
                <div class="ping yellow"></div>
            </div>
            <div class="hang">
                <div class="ping red"></div>
                <div class="ping red"></div>
                <div class="ping red"></div>
            </div>
            <div class="hang">
                <div class="ping green"></div>
                <div class="ping green"></div>
                <div class="ping green"></div>
            </div>
        </div>
</body>
</html>

   5.圆形正方形切换小loading

基于CSS3实现的几个小loading效果

这个是真的简单!!!!!

<!doctype html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="renderer" content="webkit">
<link rel="shortcut icon" type="images/x-icon" href="/template/images/ufw.ico">
<title>loading-04</title>
</head>
<body>
<style>
    body{ 
        padding: 80px 100px;
    }
    .csshub-loading-icon{
        padding:10px;
        width:10px;
        height:10px;
        border-top:20px solid #ED5548; 
        border-right:20px solid #599CD3;
        border-bottom: 20px solid #5CBD5E;
        border-left:20px solid #FDD901;
        background:transparent;
        animation: csshub-rotate-right-round 1.2s ease-in-out infinite  alternate ;
    }
    @keyframes csshub-rotate-right-round
        {
        0% { transform: rotate(0deg);}
        50% {transform: rotate(180deg); }
        100% {transform: rotate(360deg);border-radius:50%;}
    }
</style>
    <div class="csshub-loading-icon"></div>
</body>
</html>

我没做兼容,要是再某些浏览器不能运行,加一下浏览器前缀就好啦!
 

以上所述是小编给大家介绍的CSS3实现的几个小loading效果 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
CSS3支持IE6, 7, and 8的边框border属性
Dec 28 HTML / CSS
CSS3 Columns分列式布局方法简介
May 03 HTML / CSS
CSS中垂直居中的简单实现方法
Jul 06 HTML / CSS
纯CSS3实现8组超炫酷鼠标滑过图片动画
Mar 16 HTML / CSS
CSS3中Animation动画属性用法详解
Jul 04 HTML / CSS
CSS3打造百度贴吧的3D翻牌效果示例
Jan 04 HTML / CSS
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
Jan 05 HTML / CSS
HTML5 video标签(播放器)学习笔记(二):播放控制
Apr 24 HTML / CSS
html5跳转小程序wx-open-launch-weapp踩坑
Dec 02 HTML / CSS
在CSS中使用when/else的方法
Jan 18 HTML / CSS
css实现左上角飘带效果的完整代码
Mar 18 HTML / CSS
使用CSS实现六边形的图片效果
Aug 05 HTML / CSS
详解css3 mask遮罩实现一些特效
Oct 24 #HTML / CSS
css3绘制百度的小度熊
Oct 29 #HTML / CSS
css3实现信纸/同学录效果的示例代码
Dec 11 #HTML / CSS
利用CSS3实现动态的二级三级菜单效果实例源码
Jan 04 #HTML / CSS
详解Css3新特性应用之过渡与动画
Jan 10 #HTML / CSS
CSS3样式linear-gradient的使用实例
Jan 16 #HTML / CSS
纯CSS3实现表单验证效果(非常不错)
Jan 18 #HTML / CSS
You might like
php中目录,文件操作详谈
2007/03/19 PHP
PHP fopen 读取带中文URL地址的一点见解
2012/09/25 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
Confirmer JQuery确认对话框组件
2010/06/09 Javascript
Javascript delete 引用类型对象
2013/11/01 Javascript
node.js中的http.response.addTrailers方法使用说明
2014/12/14 Javascript
JavaScript基本数据类型及值类型和引用类型
2015/08/25 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
Vue.js开发环境搭建
2016/11/10 Javascript
基于JavaScript实现下拉列表左右移动代码
2017/02/07 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
JQuery通过后台获取数据遍历到前台的方法
2018/08/13 jQuery
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
微信小程序提交form操作示例
2018/12/30 Javascript
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
vue日历/日程提醒/html5本地缓存功能
2019/09/02 Javascript
vue解决使用$http获取数据时报错的问题
2019/10/30 Javascript
[01:34]传奇从这开始 2016国际邀请赛中国区预选赛震撼开启
2016/06/26 DOTA
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
2018/05/08 Python
python tkinter组件摆放方式详解
2019/09/16 Python
python飞机大战 pygame游戏创建快速入门详解
2019/12/17 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
SmartBuyGlasses意大利:购买太阳镜、眼镜和隐形眼镜
2018/11/20 全球购物
俄罗斯名牌服装网上商店:UNIQUE FABRIC
2019/07/25 全球购物
测试时代收集的软件测试面试题
2013/09/25 面试题
管理学专业个人求职信范文
2013/09/21 职场文书
区域销售经理岗位职责
2013/12/10 职场文书
法学求职信
2014/06/22 职场文书
卖车协议书范例
2014/09/16 职场文书
2015年公务员工作总结
2015/04/24 职场文书
给学校的建议书400字
2015/09/14 职场文书
亲情作文之母爱
2019/09/25 职场文书
vue 实现上传组件
2021/05/31 Vue.js