看到一些高大上的进度条插件,然后想自己用CSS写。经过搜索资料之后,终于成功了。为了以后方便拿来用,或者复习。将代码贴出。

HTML代码:

只需要两个div,外面的为一个有border的div id为wd ,然后包裹一个小div id为percent,height为100%,宽度为wd的百分比(相对于父容器,percent的父容器为wd,如wd的宽度width为100px,percent的width设置为50%就是100*50%=50px)

<div class="wd">
<div class="percent"></div>
</div>

CSS的代码如下:(兼容性需要考虑,因为懒就没有考虑到兼容性了,在Chrome 运行没问题)

.wd{
width: 100%;
height: 20px;
background: #f5f5f5;
border: 1px solid #9d9d9d;
margin-bottom: 40px;
border-radius: 4px;
overflow: hidden;
-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, .1);
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.percent{
background: #337ab7;
background-image: linear-gradient(-45deg,//这里为渐变
rgba(255,255,255,.2) 25%,
transparent 25%,
transparent 50%,
rgba(255,255,255,.2) 50%,
rgba(255,255,255,.2) 75%,
transparent 75%);
background-size: 18px 18px;//该值后面的 请设置为进度条的高度因为有border 所以为18px
height: 100%;
width: 40%;//表示进度条在40%的位置
-webkit-animation: all 1.5s linear infinite;//动画
-o-animation: all 1.5s linear infinite;
animation: all 1.5s linear infinite; } @keyframes all {//动画设置
0%{
background-position: 0 0;
} 100%{
background-position: -10px -10px;
}
}

  HTML5画圆环:\

HTML:

 

 <canvas id="bg" class="bg" >
您的浏览器不支持 HTML5 canvas 标签。
</canvas>

CSS

        .bg{
width:300px ;height:300px;
border: 1px solid red;
}

JS代码:

 var c=document.getElementById("bg");
var ctx=c.getContext("2d");
// ctx.fillStyle = '#FF0000';
ctx.strokeStyle='#99CC33';
ctx.lineWidth=10.0;
// ctx.lineCap = 'square'; imd = ctx.getImageData(200 ,200 ,255, 200);
var drow= function (curr) {
ctx.putImageData(imd, 0, 0);
ctx.beginPath();
ctx.arc(95,60,50,-0.5*Math.PI,curr*2*Math.PI-0.5*Math.PI);
ctx.moveTo(95,60);
ctx.closePath();
ctx.stroke();
};
var t=0;
var lod= function (gos) {
var te=setInterval(function () {
if (t>gos){
clearInterval(te);
}else{
drow(t);
t+=0.01;
}
},5)
};
lod(0.8);

  JS:改动代码可以实现环形进度条

var c=document.getElementById("bg");
var ctx=c.getContext("2d");
var drow= function (curr) { ctx.clearRect(0,0, c.width, c.height);
ctx.beginPath();
ctx.strokeStyle='#333';
ctx.lineWidth=13;
ctx.arc(140,80,50,-0.5*Math.PI,1.5*Math.PI);
ctx.moveTo(140,80);
ctx.closePath();
ctx.stroke(); ctx.beginPath();
ctx.strokeStyle = '#99CC33';
ctx.lineWidth=10;
ctx.arc(140,80,50,-0.5*Math.PI,curr*2*Math.PI-0.5*Math.PI);
ctx.moveTo(140,80);
ctx.closePath();
ctx.stroke(); ctx.fillStyle="#f00";
ctx.font="30px abc";
text = Math.floor(curr*100)+"%";
text_w = ctx.measureText(text).width;
ctx.fillText(text,120,90);
};
var t=0;
var lod= function (gos) {
var te=setInterval(function () {
if (t>gos){ clearInterval(te);
}else{ t+=0.01;
drow(t);
} },5)
};
lod(0.9);

 最后附上Dome地址啦http://runjs.cn/detail/8p1gmf9b

CSS3进度条 和 HTML5 Canvas画圆环的更多相关文章

  1. 分享9款极具创意的HTML5/CSS3进度条动画

    1.HTML5/CSS3图片加载进度条 可切换多主题 今天要分享的这款HTML5/CSS3进度条模拟了真实的图片加载场景,插件会默认去从服务器下载几张比较大的图片,然后让该进度条展现当前读取图片的进度 ...

  2. 9款极具创意的HTML5/CSS3进度条动画(免积分下载)

    尊重原创,原文地址:http://www.cnblogs.com/html5tricks/p/3622918.html 免积分打包下载地址:http://download.csdn.net/detai ...

  3. 9款极具创意的HTML5/CSS3进度条动画

    今天我们要分享9款极具创意的HTML5/CSS3进度条动画,这些进度条也许可以帮你增强用户交互和提高用户体验,喜欢的朋友就收藏了吧. 1.HTML5/CSS3图片加载进度条 可切换多主题 今天要分享的 ...

  4. JS框架_(JQuery.js)纯css3进度条动画

    百度云盘 传送门 密码:wirc 进度条动画效果: <!DOCTYPE html> <html lang="zh"> <head> <me ...

  5. 超赞的CSS3进度条 可以随进度显示不同颜色

    原文:超赞的CSS3进度条 可以随进度显示不同颜色 现在的WEB已经不是以前的WEB了,传输更大的数据量,有着更加复杂的计算,这就需要利用进度条来提高用户体验,必要时可以让用户耐心等待,不至于因操作卡 ...

  6. css3 进度条

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>1 ...

  7. JavaScript 以及 css3进度条

    JavaScript css3进度条 使用css3实现进度条 <!DOCTYPE html> <html lang="en"> <head> & ...

  8. CSS3进度条动画

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  9. 【常见】CSS3进度条Loading动画

    现在,GIF 格式的进度条已经越来越少,CSS 进度条如雨后春笋般涌现.CSS3的崛起,更使得动态效果得以轻松实现,未来,必定是CSS3的天下,所以今天我就来分享一下几个常见的CSS3进度条Loadi ...

随机推荐

  1. 使用mapMutations扩展写法后参数传递的办法

    在没使用扩展办法的时候,在组件当中通过下面方式进行传参 testMethods(data) { this.$store.commit("add",data) } 而使用了扩展函数了 ...

  2. HTTP调试工具:Fiddler介绍

    原文发布时间为:2010-08-25 -- 来源于本人的百度文章 [由搬家工具导入] 这个工具我已经使用比较长时间了,对我的帮助也挺大,今天我翻译的微软的文章,让更多的朋友都来了解这个不错的工具,也是 ...

  3. datalist、repearter、gridview显示行号的三种方法 或者是获取datalist行id

    原文发布时间为:2009-05-06 -- 来源于本人的百度文章 [由搬家工具导入] 1. if you are using SQL Server, try select identity(int,1 ...

  4. MEF 注入[转载]

    领域服务的时候,用到MEF的注入有参构造函数的方法,your master was attracted,打算稍微深挖一下,这篇来对此知识点做个总结. 一.知识点回顾 MEF作为IOC的方式之一,它的主 ...

  5. [Oracle] Lock&Latch梳理

    Oracle lock&latch 1. 概述 4种锁机制 lock latch pin mutex 保证资源在并发访问和修改时不被破坏 锁类型 行为 持有时间 级别 保护类型 lock 队列 ...

  6. uva 11491:Erasing and Winning(贪心)

    题意:给一个长n(n<10^5)位的数,删除d位,求删除后最大的数.(原数无前导0) 思路:从前往后扫,如果a[i] > a[i-1],则删除a[i-1].我暴力的用链表实现了…… #in ...

  7. OpenMP参考链接

    做个笔记. http://www.cnblogs.com/China3S/p/3500507.html

  8. 四、Ubuntu 一些常用命令

    1.锁定root用户 :sudo passwd -l root 2.解锁root用户 :sudo passwd -u root 3.切换身份:su root  或者  su 其他用户名,然后输入密码, ...

  9. Android项目搭建最常用的架构解密

    在完成android项目的时候第一步都是要搭建架构,下面我们来展示一下最常用的架构结构的: 源码下载地址: https://download.csdn.net/download/heishuai123 ...

  10. 爬虫学习笔记(三)requests模块使用

    前面在说爬虫原理的时候说了,就写代码自动化的获取数据,保存下来数据,那怎么写代码来请求一个网址,获取结果呢,就得用requests模块了. 这篇博客说一下requests模块的使用,requests模 ...