纯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弹性伸缩布局之box布局
Jul 12 HTML / CSS
45个非常奇妙的CSS3 特性应用示例
Jan 01 HTML / CSS
css3学习心得分享
Aug 19 HTML / CSS
使用CSS3实现多列布局与多背景的技巧
Feb 29 HTML / CSS
利用CSS3实现进度条的两种姿势详解
Mar 21 HTML / CSS
CSS3 实现弹幕的示例代码
Aug 07 HTML / CSS
HTML5 Plus 实现手机APP拍照或相册选择图片上传功能
Jul 13 HTML / CSS
HTML5 拖拽批量上传文件的示例代码
Mar 28 HTML / CSS
HTML5 语音搜索(淘宝店语音搜素)
Jan 03 HTML / CSS
浅析border-radius如何兼容IE
Apr 19 HTML / CSS
解析html5 canvas实现背景鼠标连线动态效果代码
Jun 17 HTML / CSS
CSS实现鼠标悬浮动画特效
May 07 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
mysql alter table命令修改表结构实例详解
2016/09/24 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
2016/11/01 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
2016/11/15 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
2017/07/21 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
jqgrid 简单学习笔记
2011/05/03 Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
2011/10/06 Javascript
基于jquery的textarea发布框限制文字字数输入(添加中文识别)
2012/02/16 Javascript
js生成随机数之random函数随机示例
2013/12/20 Javascript
第九篇Bootstrap导航菜单创建步骤详解
2016/06/21 Javascript
jquery+html仿翻页相册功能
2016/12/20 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
JS开发中百度地图+城市联动实现实时触发查询地址功能
2017/04/13 Javascript
require.js与bootstrap结合实现简单的页面登录和页面跳转功能
2017/05/12 Javascript
完美实现js拖拽效果 return false用法详解
2017/07/28 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
Vue2 添加数据可视化支持的方法步骤
2019/01/02 Javascript
JavaScript设计模式之观察者模式实例详解
2019/01/16 Javascript
python3访问sina首页中文的处理方法
2014/02/24 Python
Python实现针对含中文字符串的截取功能示例
2017/09/22 Python
python中多层嵌套列表的拆分方法
2018/07/02 Python
Flask框架web开发之零基础入门
2018/12/10 Python
Python实用工具FuckIt.py介绍
2019/07/02 Python
python如何读取bin文件并下发串口
2019/07/05 Python
使用opencv将视频帧转成图片输出
2019/12/10 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
Python操作Excel把数据分给sheet
2020/05/20 Python
详解CSS3阴影 box-shadow的使用和技巧总结
2016/12/03 HTML / CSS
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
linux面试题参考答案(6)
2016/06/23 面试题
《狮子和兔子》教学反思
2014/03/02 职场文书
校庆口号
2014/06/20 职场文书
委托书怎样写
2014/08/30 职场文书
学校标语口号大全
2015/12/26 职场文书
MySQL中出现乱码问题的终极解决宝典
2021/05/26 MySQL
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技