HTML5中新增了progress標簽,用來表示進度條。
<progress value="100" max="100" class="hot">
顯示效果如下:

其中CSS樣式代碼如下:
progress { width: 168px; height: 5px; } progress::-webkit-progress-bar { background-color:#d7d7d7; } progress::-webkit-progress-value { background-color:orange; }
解釋下,在Chrome瀏覽器中
progress是以如下結構渲染的
progress
↓
::-webkit-progress-bar 全部進度
↓
::-webkit-progress-value 已完成進度
通過這兩個偽元素為其添加樣式。
但在別的瀏覽器中又有所不同,如IE10,這兩個偽元素不起作用,直接用color樣式可以修改已完成進度的顏色,而全部進度為background
FireFox中progress-bar為已完成進度,background為全部進度,而Opera中對這個樣式只能為瀏覽器默認樣式。
因此兼容性寫法可以考慮如下
progress { color:orange; /*兼容IE10的已完成進度背景*/ border:none; background:#d7d7d7;/*這個屬性也可當作Chrome的已完成進度背景,只不過被下面的::progress-bar覆蓋了*/ } progress::-webkit-progress-bar { background:#d7d7d7; } progress::-webkit-progress-value, progress::-moz-progress-bar { background:orange; }
以上
