纯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样式中的 !important * _ 符号
Mar 09 HTML / CSS
发现两个有趣的CSS3动画效果
Aug 14 HTML / CSS
纯CSS3实现带动画效果导航菜单无需js
Sep 27 HTML / CSS
CSS3中颜色线性渐变实战
Jul 18 HTML / CSS
HTML+CSS3模拟心的跳动实例代码
Sep 05 HTML / CSS
利用html5 file api读取本地文件示例(如图片、PDF等)
Mar 07 HTML / CSS
html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
Jan 06 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
多视角3D可旋转的HTML5 Logo动画
Mar 02 HTML / CSS
详解px单位html5响应式方案
Mar 08 HTML / CSS
使用html2canvas实现将html内容写入到canvas中生成图片
Jan 03 HTML / CSS
聊聊CSS粘性定位sticky案例解析
Jun 01 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+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
yii2多图上传组件的使用教程
2018/05/10 PHP
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
2010/09/14 Javascript
js实现网页标题栏闪烁提示效果实例分析
2014/11/20 Javascript
jquery实现翻动fadeIn显示的方法
2015/03/05 Javascript
JS实现左右拖动改变内容显示区域大小的方法
2015/10/13 Javascript
基于javascript实现动态时钟效果
2020/08/18 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
JavaScript数据结构中栈的应用之表达式求值问题详解
2017/04/11 Javascript
jQuery复合事件用法示例
2017/06/10 jQuery
bootstrap table服务端实现分页效果
2017/08/10 Javascript
Vue.set()动态的新增与修改数据,触发视图更新的方法
2018/09/15 Javascript
vue车牌号校验和银行校验实战
2019/01/23 Javascript
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
Python聚类算法之凝聚层次聚类实例分析
2015/11/20 Python
Python 实现两个服务器之间文件的上传方法
2019/02/13 Python
解决django同步数据库的时候app models表没有成功创建的问题
2019/08/09 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
Numpy与Pytorch 矩阵操作方式
2019/12/27 Python
解决阿里云邮件发送不能使用25端口问题
2020/08/07 Python
Python操作dict时避免出现KeyError的几种解决方法
2020/09/20 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
HTML5新增的8类INPUT输入类型介绍
2015/07/06 HTML / CSS
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
美国椅子和沙发制造商:La-Z-Boy
2020/10/25 全球购物
Python如何实现单例模式
2016/06/03 面试题
shell的种类有哪些
2015/04/15 面试题
精彩的大学生自我评价
2013/11/17 职场文书
舞蹈比赛获奖感言
2014/02/04 职场文书
基层党建工作宣传标语
2014/06/24 职场文书
幼儿园大班开学寄语
2014/08/02 职场文书
阿里云服务器搭建Php+Apache运行环境的详细过程
2021/05/15 PHP
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
一篇文章带你了解Python和Java的正则表达式对比
2021/09/15 Python
分享python函数常见关键字
2022/04/26 Python