利用CSS属性实现进度条的方式
作者:林小志 来源:林小志blog 发布时间:2010-02-25 12:31:00
今天在一个QQ群中看到有人在问一个进度条的实现方式,当时因为工作时间,需求相对也比较紧,只是简单的说了一下可以通过CSS的边框属性和背景属性来完成。不过或许是因为当时说的内容比较少吧,那位朋友似乎没有明白我想要表达的意思。也罢,快过年了,晚上回来的时间相对也可以早点,抽点时间简单写一个demo,顺便再说说自己的一个思路想法吧。
在这里先祝大家虎年吉祥!
对于简单的、纯色的进度条,我一直比较热衷于直接用CSS来实现,复杂点的当然是涉及到图片啦。那么对于简单的、纯色的进度条需要怎么利用CSS的边框属性和背景属性来完成呢?
其实这个实现方式并不是很困难,考虑这个进度条的实现呢,我的思路主要是这样的:
进度条的长度改变肯定是通过JS或者其他程序语言来控制,而xhtml仅仅只页面表现
既然是通过JS或者其他程序语言控制进度条的长度,那么就可以直接利用xhtml的style属性来改变进度条的长度
通过xhtml的style属性来完成进度条的长度改变,那么也就可以改变边框的长度
那么宽度可以改变,就可以利用背景色来完成进度条的长度;边框可以改变的话,就可以利用边框色来实现进度条长度的改变
有了这样的一个思路之后,那么就需要开始实践,只有实践后才会晓得一个思路、一个想法是否能最终得到你所想要的内容。
<div class="loadbar_01"> <span style="width:80%;">8.0</span> </div>
这个结构是我相对比较喜欢的一个结构,通过这个结构只需要改变span标签中的width属性就可以利用背景颜色来实现进度条的实现。
div.loadbar_01 {width:200px;height:20px;overflow:hidden;background-color:#EEEEEE;}
div.loadbar_01 span {float:left;height:20px;text-indent:8px;font:normal 10px/20px Arial, Verdana,Lucida, Helvetica, sans-serif;color:#FFFBCE;background-color:#59A9F2;}
然后我们再看一个通过边框属性来实现进度条的方式,这个方法如果有两层背景色就需要多嵌套一个div,相对而言不是非常喜欢,而如果仅仅只有一个进度条的前景色(也就是只有一种颜色的时候)我还是比较喜欢的。
<div class="loadbar_02"> <div style="border-left-width:60px;"> <span>3.0</span> </div> </div>
这样多嵌套了一层div标签后,然后再通过JS来完成第二个div标签的边框宽度值的改变,那么就可以得到最终我们所想要的进度条效果。
div.loadbar_02 {position:relative;width:200px;overflow:hidden;}
div.loadbar_02 div {height:20px;color:#FFFBCE;border-left:1px solid #59A9F2;background-color:#EEEEEE;}
div.loadbar_02 span {position:absolute;top:0;left:8px;height:20px;font:normal 10px/20px Arial, Verdana,Lucida, Helvetica, sans-serif;}
其中我们会在demo中看到进度条上面是有文字的,这个其实并不是重点,因为处理这个文字我们可以用定位、浮动等属性来实现。具体的大家可以仔细看一下demo,也可以通过firebug来改变相应的属性值,观察进度条的变化。


猜你喜欢
- 前言在使用PC时与PC交互的主要途径是看屏幕显示、听声音,点击鼠标和敲键盘等等。在自动化办公的趋势下,繁琐的工作可以让程序自动完成。比如自动
- 1.背景项目需求,要求获得github的repo的api,以便可以提取repo的数据进行分析。研究了一天,终于解决了这个问题,虽然效率还是比
- 1. 代码:def random_color(number=number): color = [] intnum =
- 最近博主在边学flask边写测试平台,碰到一个比较常用的场景如下图所示这里有一个输入框组,下拉菜单里面有3个选项,还有一个输入框,代码是用
- 其实网上已经有很多这样的类了,不过出于练手的目的还是自己仿照着写了一个。下面的代码放在一个名为UploadFile.class.php文件内
- 刚才运行了一段代码,来查看Request.ServerVariables里面有多少值,看了一下,共50个!代码<%=Request.S
- 有些时候需要动态加载javascript事件的一些方法往往我们需要在 JS 中动态添加事件,这就涉及到浏览器兼容性问题了,以下谈及的几种方法
- 逛网站的时候经常会遇到需要上传图片的操作,这里主要来说下selenium操作上传文件的操作。前提条件:定位的元素必须是type 属性是fil
- 有一个同学在Gne的群里面咨询如何通过Selenium获取当前鼠标指向的元素,在我讲了方法以后,他过了两天又来问:那么,我今天就来写一篇文章
- 网页颜色变黑白代码国务院决定,为表达全国各族人民对青海玉树地震遇难同胞的深切哀悼,2010年4月21日举行全国哀悼活动,全国和驻外使领馆下半
- 前言多人协作的项目里,要保证代码的质量,自然离不开单元测试。开发完一个功能后肯定要对所写的代码进行测试,测试没有问题之后再合并到代码库供他人
- 1、为什么要掌握进程间通信python的多线程代码效率由于受制于GIL,不能利用多核CPU来加速,而多进程方式可以绕过GIL, 发挥多CPU
- 由于本人经常装系统,每次装完系统之后都要重新安装一些软件,安装软件的时候又要上网查找安装的教程,比较麻烦,所以自己整理了MySQL5.7.2
- 最近在看红楼梦,看的诗词多了,时不时的也想来一句...这几天刚看看到了underscore.js的防抖和节流的部分,正好又去复习了这部分内容
- 在广大网友心目中,他们就是中国互联网搜索领域的三驾马车。无论这三家搜索巨头承不承认,在网友眼中总会来将他们进行对比比较。当然,更多时候的比较
- 使用router.meta.keepAlive对页面进行缓存需求:1. 从stockList页面到stockInfo页面,从stockInf
- 本文实例分析了ThinkPHP中的__initialize()和类的构造函数__construct()。分享给大家供大家参考。具体分析如下:
- 分页应该是在我们开发web应用时经常要做的工作,能够比较简洁的实现数据库和视图层的分页十分重要。在数据库层利用hibernate进行数据库的
- 一、漏洞描述该漏洞在/install/index.php(index.php.bak)文件中,漏洞起因是$$符号使用不当,导致变量覆盖,以至
- 最近因项目需要用ACCESS做数据库开发WEB项目 看论坛上还许多人问及ACCESS被注入的安全问题 许多人解决的方法仍然是用Replace