纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)


Posted in HTML / CSS onJanuary 07, 2013

加载动画和进度条的真正目的是让用户了解任务的进度,有很多的基于JavaScript的动画,但我决定切换到CSS3。 在本教程中,我决定制作动画的进度条,使用纯CSS:没有flash,没有图像,没有脚本。此外,我专注于寻找最简单的办法做到这一点。这里的例子:

 
%移动

HTML标记
我们需要的是这两个div,第一个div将代表主容器和圆角和阴影效果,第二个div的实际进度条。 我添加了一个输入和一个按钮控制和播放进度条。
复制代码
代码如下:

<div id="prbar">
<div id="prpos">
</div>
</div>
<input id="moveTo" value="57" style="width:30px;" />%
<button onclick="MoveTo();return false;">Move</button>

The CSS :
复制代码
代码如下:

#prbar {
margin:5px;
width:500px;
background-color:#dddddd;
overflow:hidden;
/* 边框效果 */
border: 1px solid #bbbbbb;
-moz-border-radius: 15px;
border-radius: 15px;
/* 为进度条增加阴影效果 */
-webkit-box-shadow: 0px 2px 4px #555555;
-moz-box-shadow: 0px 2px 4px #555555;
box-shadow: 0px 2px 4px #555555;
}
/* No rounded corners for Opera, because the overflow:hidden dont work with rounded corners */
doesnotexist:-o-prefocus, #prbar {
border-radius:0px;
}
#prpos {
width:0%;
height:30px;
background-color:#3399ff;
border-right:1px solid #bbbbbb;
/* CSS3 进度条渐变 */
transition: width 2s ease;
-webkit-transition: width 0s ease;
-o-transition: width 0s ease;
-moz-transition: width 0s ease;
-ms-transition: width 0s ease;
/* CSS3 Stripes */
background-image: linear-gradient(135deg,#3399ff 25%,#99ccff 25%,#99ccff 50%, #3399ff 50%, #3399ff 75%,#99ccff 75%,#99ccff 100%);
background-image: -moz-linear-gradient(135deg,#3399ff 25%,#99ccff 25%,#99ccff 50%, #3399ff 50%, #3399ff 75%,#99ccff 75%,#99ccff 100%);
background-image: -ms-linear-gradient(135deg,#3399ff 25%,#99ccff 25%,#99ccff 50%, #3399ff 50%, #3399ff 75%,#99ccff 75%,#99ccff 100%);
background-image: -o-linear-gradient(135deg,#3399ff 25%,#99ccff 25%,#99ccff 50%, #3399ff 50%, #3399ff 75%,#99ccff 75%,#99ccff 100%);
background-image: -webkit-gradient(linear, 100% 100%, 0 0,color-stop(.25, #99ccff), color-stop(.25, #3399ff),color-stop(.5, #3399ff),color-stop(.5, #99ccff),color-stop(.75, #99ccff),color-stop(.75, #3399ff),color-stop(1, #3399ff));
background-image: -webkit-linear-gradient(135deg,#3399ff 25%,#99ccff 25%,#99ccff 50%, #3399ff 50%, #3399ff 75%,#99ccff 75%,#99ccff 100%);
background-size: 40px 40px;
/* Background stripes animation */
animation: bganim 3s linear 2s infinite;
-moz-animation: bganim 3s linear 2s infinite;
-webkit-animation: bganim 3s linear 2s infinite;
-o-animation: bganim 3s linear 2s infinite;
-ms-animation: bganim 3s linear 2s infinite;
}
@keyframes bganim {
from {background-position:0px;} to { background-position:40px;}
}
@-moz-keyframes bganim {
from {background-position:0px;} to { background-position:40px;}
}
@-webkit-keyframes bganim {
from {background-position:0px;} to { background-position:40px;}
}
@-o-keyframes bganim {
from {background-position:0px;} to { background-position:40px;}
}
@-ms-keyframes bganim {
from {background-position:0px;} to { background-position:40px;}
}

进度条的宽度和高度的需要只能指定一次,指定的宽度在“prbar”和高度在“prpos”内。
您可以修改成任何你想要的背景条纹或任何纹理例如使用线性渐变,你可以画,线,圆
The Animation :
我们的进度条的动画,我们只需要设置另外一个div的宽度,最简单的方法当然是直接指定百分比计算的宽度。
小的JavaScript函数将读取的输入值,并设置宽度为动画的进度条
复制代码
代码如下:

function MoveTo() {
var prpos = document.getElementById('prpos');
prpos.style.width = document.getElementById('moveTo').value + "%";
}

源码下载地址
原文 http://www.cnblogs.com/58top/archive/2013/01/07/pure_css_progress_bar_animated_by_css3.html
HTML / CSS 相关文章推荐
CSS3 3D立方体效果示例-transform也不过如此
Dec 05 HTML / CSS
分享CSS3制作卡片式图片的方法
Jul 08 HTML / CSS
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
Jan 23 HTML / CSS
HTML5中的nav标签学习笔记
Jun 24 HTML / CSS
HTML5 Canvas绘制文本及图片的基础教程
Mar 14 HTML / CSS
HTML5 Canvas概述
Aug 26 HTML / CSS
html5中canvas学习笔记1-画板的尺寸与实际显示尺寸
Jan 06 HTML / CSS
基于html5 canvas实现漫天飞雪效果实例
Sep 10 HTML / CSS
详解WebSocket跨域问题解决
Aug 06 HTML / CSS
如何在Canvas上的图形/图像绑定事件监听的实现
Sep 16 HTML / CSS
CSS3实现模糊背景的三种效果示例
Mar 30 HTML / CSS
CSS中Single Div 绘图技巧的实现
Jun 18 HTML / CSS
CSS3 icon font完全指南(CSS3 font 会取代icon图标)
Jan 06 #HTML / CSS
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
Dec 31 #HTML / CSS
绝对令人的惊叹的CSS3折叠效果(3D效果)整理
Dec 30 #HTML / CSS
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
Dec 28 #HTML / CSS
分享30个新鲜的CSS3打造的精美绚丽效果(附演示下载)
Dec 28 #HTML / CSS
CSS3支持IE6, 7, and 8的边框border属性
Dec 28 #HTML / CSS
CSS3 滤镜 webkit-filter详细介绍及使用方法
Dec 27 #HTML / CSS
You might like
php生成图形验证码几种方法小结
2013/08/15 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
2014/11/25 PHP
PDO::quote讲解
2019/01/29 PHP
php实现的生成排列算法示例
2019/07/25 PHP
Javascript string 扩展库代码
2010/04/09 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
清除输入框内的空格
2016/12/21 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
完美解决node.js中使用https请求报CERT_UNTRUSTED的问题
2017/01/08 Javascript
老生常谈angularjs中的$state.go
2017/04/24 Javascript
浅谈vue-lazyload实现的详细过程
2017/08/22 Javascript
详解在express站点中使用ejs模板引擎
2017/09/21 Javascript
JavaScript实现微信号随机切换代码
2018/03/09 Javascript
JavaScript设计模式之单例模式简单实例教程
2018/07/02 Javascript
jquery 动态遍历select 赋值的实例
2018/09/12 jQuery
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
在Linux上安装Python的Flask框架和创建第一个app实例的教程
2015/03/30 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
深入理解Python中的super()方法
2017/11/20 Python
python字符串与url编码的转换实例
2018/05/10 Python
matplotlib.pyplot绘图显示控制方法
2019/01/15 Python
python多进程读图提取特征存npy
2019/05/21 Python
使用python制作游戏下载进度条的代码(程序说明见注释)
2019/10/24 Python
Python数据可视化图实现过程详解
2020/06/12 Python
Python实现一个优先级队列的方法
2020/07/31 Python
python中如何打包用户自定义模块
2020/09/23 Python
Python字典实现伪切片功能
2020/10/28 Python
PUMA官方商城:世界领先的运动品牌之一
2016/11/16 全球购物
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
linux面试题参考答案(6)
2016/06/23 面试题
岗位廉洁从政承诺书
2014/03/27 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
写字楼租赁意向书
2014/07/30 职场文书
javascript实现计算器功能详解流程
2021/11/01 Javascript
SpringBoot Http远程调用的方法
2022/08/14 Java/Android