纯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 相关文章推荐
全面总结使用CSS实现水平垂直居中效果的方法
Mar 10 HTML / CSS
css3.0 图形构成实例练习二
Mar 19 HTML / CSS
CSS3之transition实现下划线的示例代码
May 30 HTML / CSS
Html5新增标签与样式及让元素水平垂直居中
Jul 11 HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
Jul 15 HTML / CSS
canvas需要在标签里直接定义宽高
Dec 17 HTML / CSS
HTML5 canvas基本绘图之文字渲染
Jun 27 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
Dec 10 HTML / CSS
html5唤醒APP小记
Mar 27 HTML / CSS
微信小程序之html5 canvas绘图并保存到系统相册
Jun 20 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
Aug 19 HTML / CSS
AmazeUI 等分网格的实现示例
Aug 25 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
文件上传程序的全部源码
2006/10/09 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
分享php多功能图片处理类
2016/05/15 PHP
禁止JQuery中的load方法装载IE缓存中文件的方法
2009/09/11 Javascript
鼠标选择动态改变网页背景颜色的JS代码
2013/12/10 Javascript
javascript中typeof的使用示例
2013/12/19 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
JavaScript基础语法、dom操作树及document对象
2014/12/02 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
打造自己的jQuery插件入门教程
2016/09/23 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
最全的JavaScript开发工具列表 总有一款适合你
2017/06/29 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
二维码图片生成器QRCode.js简单介绍
2017/08/18 Javascript
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
使用python解析xml成对应的html示例分享
2014/04/02 Python
python追加元素到列表的方法
2015/07/28 Python
详解Python的Lambda函数与排序
2016/10/25 Python
Django修改app名称和数据表迁移方案实现
2020/09/17 Python
python 窃取摄像头照片的实现示例
2021/01/08 Python
小程序瀑布流解决左右两边高度差距过大的问题
2019/02/20 HTML / CSS
顶级宝石首饰网络零售商:Angara
2016/10/25 全球购物
男方父母婚礼答谢词
2014/01/25 职场文书
市场部经理岗位职责
2014/04/10 职场文书
学校安全生产承诺书
2014/05/23 职场文书
小学一年级学生评语大全
2014/12/25 职场文书
布达拉宫的导游词
2015/02/02 职场文书
学雷锋献爱心活动总结
2015/05/11 职场文书
2015年基建工作总结范文
2015/05/23 职场文书
《搭石》教学反思
2016/02/18 职场文书
Vue中插槽slot的使用方法与应用场景详析
2021/06/08 Vue.js
Java中CyclicBarrier和CountDownLatch的用法与区别
2021/08/23 Java/Android
25张裸眼3D图片,带你重温童年的记忆,感受3D的魅力
2022/02/06 杂记