html5中文学习网

您的位置: 首页 > html5教程 > 入门教程 » 正文

HTML5中的进度条progress元素简介及兼容性处理_html5教程技巧

[ ] 已经帮助:人解决问题

一、progress元素基本了解CvKHTML5中文学习网 - HTML5先行者学习网
1.基本UICvKHTML5中文学习网 - HTML5先行者学习网
progress元素属于HTML5家族,指进度条。IE10+以及其他靠谱浏览器都支持。如下简单code:CvKHTML5中文学习网 - HTML5先行者学习网

XML/HTML Code复制内容到剪贴板
  1. <progress>o()o</progress>  

是个很带感的进度条吧。有人奇怪:“唉~怎么我看到的是个字符表情捏?” 恩…我只能对你说:“鄙视你,丫的都舍不得用靠谱点的浏览器吗?!”CvKHTML5中文学习网 - HTML5先行者学习网
这个默认的效果,不同浏览器下的效果不尽相同,如下截图们(window 7下):CvKHTML5中文学习网 - HTML5先行者学习网
201662114209261.png (456×417)CvKHTML5中文学习网 - HTML5先行者学习网

IE10颗粒的缓动聚散效果,还是挺让人眼前一亮的。CvKHTML5中文学习网 - HTML5先行者学习网

2.基本属性CvKHTML5中文学习网 - HTML5先行者学习网
max, value, position, 以及labels.CvKHTML5中文学习网 - HTML5先行者学习网
(1)max指最大值。若缺省,进度值范围从0.0~1.0,如果设置成max=100, 则进度值范围从0~100.CvKHTML5中文学习网 - HTML5先行者学习网
(2)value就是值了,若max=100, value=50则进度正好一半。value属性的存在与否决定了progress进度条是否具有确定性。什么意思?比方说<progress></progress>没有value,是不确定的,因此IE10浏览器下其长相是个无限循环的虚点动画;但是,一旦有了value属性(即使无值),如<progress value></progress>, 也被认为是确定的,虚点动画进入仙人模式——>变条条了,如下截图:CvKHTML5中文学习网 - HTML5先行者学习网
201662114237282.png (301×78)CvKHTML5中文学习网 - HTML5先行者学习网

(3)position是只读属性,顾名思意,当前进度的位置,就是value / max的值。如果进度条不确定,则值为-1.CvKHTML5中文学习网 - HTML5先行者学习网
(4)labels也是只读属性,得到的是指向该progress元素的label元素们。例如document.querySelector("progress").labels,返回的就是HTMLCollection, 下为我的某测试截图(截自Opera浏览器下,目前FireFox18.0.2以及IE10貌似都不支持)。CvKHTML5中文学习网 - HTML5先行者学习网

二、progress元素兼容性处理示例CvKHTML5中文学习网 - HTML5先行者学习网
html代码CvKHTML5中文学习网 - HTML5先行者学习网

XML/HTML Code复制内容到剪贴板
  1. <progress max="100" value="20"><ie style="width:20%;"></ie></progress>  

css兼容代码CvKHTML5中文学习网 - HTML5先行者学习网

CSS Code复制内容到剪贴板
  1. progress {   
  2.     displayinline-block;   
  3.     width160px;   
  4.     height20px;   
  5.     border1px solid #0064B4;     
  6.     background-color:#e6e6e6;   
  7.     color#0064B4/*IE10*/  
  8. }   
  9. /*ie6-ie9*/  
  10. progress ie {   
  11.     display:block;   
  12.     height: 100%;   
  13.     background#0064B4;   
  14. }   
  15. progress::-moz-progress-bar { background#0064B4; }   
  16. progress::-webkit-progress-bar { background#e6e6e6; }   
  17. progress::-webkit-progress-value  { background#0064B4; }  

基本上完美的解决了各浏览器的差别。CvKHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助