CSS3实现加载中的动画效果

本篇文章由:http://xinpure.com/css3-implementations-of-loading-an-animation-effect/

Loading 的菊花图形组合的不太好,基本上实现这个功能了

动画解析

这个动画用到的 CSS3 特性:

  1. transform 主要使用 transform 属性的 rotate,将线条组合成 Loading 图形 (也就是常见的菊花图形)
  2. animation 实现将线条颜色由浅到深,再由深到浅来回变换的动画,通过 animation-delay 属性来使颜色的变换产生过渡的效果,从而达到类似于 Loading 动画的效果

效果实例

HTML Code

<div class="loading">
    <span class="line1"></span>
    <span class="line2"></span>
    <span class="line3"></span>
    <span class="line4"></span>
    <span class="line5"></span>
    <span class="line6"></span>
    <span class="line7"></span>
    <span class="line8"></span>
</div>

CSS Code

.loading {
    width: 80px;
    height: 60px;
    margin: 0 auto;
    position: relative;
}
span {
    width: 4px;
    height: 20px;
    background-color: #ccc;
    position: absolute;
    left: 38px;
    -webkit-animation: loading 1s infinite;
}

.line1 {
    background-color: #000;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-animation-delay: .3s;
}
.line2 {
    top: 5px;
    left: 52px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-animation-delay: .4s;
}
.line3 {
    top: 18px;
    left: 57px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-animation-delay: .5s;
}
.line4 {
    top: 31px;
    left: 52px;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    -webkit-animation-delay: .6s;
}
.line5 {
    top: 37px;
    -webkit-animation-delay: .7s;
}
.line6 {
    top: 32px;
    left: 24px;
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
    -webkit-animation-delay: .8s;
}
.line7 {
    top: 18px;
    left: 19px;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-animation-delay: .9s;
}
.line8 {
    top: 5px;
    left: 24px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-animation-delay: 1s;
}

@-webkit-keyframes loading {
    0% {
        background-color: #ccc;
    }
    50% {
        background-color: #000;
    }
    100% {
        background-color: #ccc;
    }
}

效果示图

时间: 2024-10-04 06:34:23

CSS3实现加载中的动画效果的相关文章

用C3中的animation和transform写的一个模仿加载的时动画效果

用用C3中的animation和transform写的一个模仿加载的时动画效果! 不多说直接上代码; html标签部分 <div class="wrap"> <h2>用C3中的animation和transform写的一个模仿加载的时动画效果</h2> <div class="demo"> <div></div> <div></div> <div></d

一个加载时带动画效果的ListBoxItem

原文:一个加载时带动画效果的ListBoxItem 今天我们来谈一下ListBoxItem这个控件,ListBoxItem是直接从ContentControl继承而来的,所以可以添加到任何具有Content属性的控件中去,常见的ListBoxItem可以放到ListBox中,也可以放到ItemsControl中去,ListBoxItem可以横向和TreeViewItem进行比较,只不过TreeViewItem是直接从HeaderedItemsControl继承过来的,然后再继承自ItemsCon

页面加载中jquery逐渐消失效果实现

为了获得更好的用户体验,现在大多数网页都会在页面中加一个加载中效果,这里实现一个加载中逐渐消失的效果,以至于看上去不那么生硬. html: <div id="loading"><img src="images/common/loading.gif" ></div> css: /*加载中*/ #loading{     position: fixed;     top: 0;     left: 0;     width: 100%

纯CSS3技术 加载中

你能相信吗?这些都是由一个DIV元素实现的动画,纯CSS3技术 1.<div class="loader">加载中...</div> css:  .loader, .loader:before, .loader:after { background: #FFF; -webkit-animation: load1 1s infinite ease-in-out; animation: load1 1s infinite ease-in-out; width: 1e

css3 同时加载两个动画

最近在做H5,遇到这样的需求(如题) 先上一部分代码: .cur .p1d1d4{   width: 3rem;   margin: 2rem 5.3rem 0 0;   -webkit-animation: p1d1d4 1s ease-out;   animation: p1d1d4 1s ease-out; } @keyframes p1d1d4 {   0% {     margin: 2rem 10rem 0 0;   }   100% {     margin: 2rem 5.3re

css3实现的3中loading动画效果

一.css3中animation动画各种属性详解: animation Value:     [<animation-name> || <animation-duration> || <animation-timing-function> || <animation-delay> || <animation-iteration-count> || <animation-direction> || <animation-fill-

android image加载中等待动画

Xml代码   在布局中添加一个ImageViw和一个EditText. Xml代码   <ImageView android:id="@+id/loading_imageView_info" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:ba

css3动画-加载中...

写几个简单的加载中动画吧. 像前面三种都是相当于几个不同的点轮流来播放同一动画:变大变小.css3里面有一个用于尺度变换的方法:scale(x,y):定义 2D 缩放转换,改变元素的宽度和高度. 第四种就是一个小球从上往下跌落,再弹回去,在上面的时候速度最小,下面的时候速度最大.由于该小球只进行了上下的移动,所以我们可以运用:translateY(n):定义 2D 转换,沿着 Y 轴移动元素,从而实现小球沿Y方向来回移动. 废话不多说了,上代码. 首先,第一个加载中的动画: 1 <div id=

【Web前沿技术】纯 CSS3 打造的10个精美加载进度条动画

之前向大家介绍8款优秀的 jQuery 加载动画和进度条插件,今天这篇文章向大家推荐10个纯 CSS3 代码实现精美加载进度条动画效果的方案.加载动画和进度条在网站和 Web 应用中的使用非常流行,特别是在使用 Ajax 技术加载内容的应用场景中,使用时尚的加载动画和进度条告诉用户内容正在加载中是一种非常友好的方式. 您可能感兴趣的相关文章 20个非常绚丽的 CSS3 特性应用演示 23个纯 CSS3 打造的精美LOGO图案 35个让人惊讶的 CSS3 动画效果演示 推荐12个漂亮的 CSS3