如何在HTML5中显示任务完成进度?
如果我们想直观地演示任何任务或目标的完成情况,可以使用<progress>元素。要显示任务完成的进度,我们使用max和value属性。以下是HTML中<progress>标签的语法:
<progress value=”20” max=”100”></progress>
进度条有开始和结束标签。它是HTML5中一个新的语义元素。它也用于显示文件上传进度。
HTML <progress>标签支持以下属性:
属性 |
值 |
描述 |
---|---|---|
max |
最大值 |
它应该大于零且是一个有效的浮点数。 |
value |
value |
指定已完成的任务量。它应该是一个介于0和max之间的浮点数,或者如果省略max则介于0和1之间。 |
它还支持全局和事件属性。
示例
以下示例演示如何在HTML中显示任务完成进度:
<!DOCTYPE html> <html> <body> <h1>Progress element in HTML</h1> <label for="file">File Copying Progress:</label> <progress id="file" value="45" max="100"> 45% </progress> </body> </html>
现在,让我们看看如何在HTML中设置进度条样式:
CSS进度条样式
现在让我们使用CSS来设置进度条样式:
<!DOCTYPE html> <html> <head> <style> progress[value] { -webkit-appearance: none; appearance: none; width: 250px; height: 20px; } </style> </head> <body> <h1>Progress element in HTML</h1> <label for="file">File Downloading Progress:</label> <progress id="file" value="35" max="100"> 35% </progress> </body>
示例
以下示例创建了一个带有两个按钮的进度条,通过应用JavaScript代码来增加和减少进度条。
<!DOCTYPE html> <html> <style> #container { width: 100%; background-color: gray; } #bar { width: 0%; height: 40px; background-color: red; } </style> <body> <h1>Progress Bar</h1> <div id="container"> <div id="bar"></div> </div> <br> <button onclick="Increase()">Increase</button> <button onclick="Decrease()">Decrease</button> <!-- dispaying message for user --> <h2>Increase by 5%</h2> <h2>Decrease by 5%</h2> <script> function Increase() { var elem = document.getElementById("bar"); var width = elem.style.width; width = width.replace(/%/g, ''); if (width == "") width = '5'; else width = parseInt(width) + 5; if (width == 100) { width = width.toString() + '%'; elem.style.width = width; } else if (width < 100) { width = width.toString() + '%'; elem.style.width = width; } } function Decrease() { var elem = document.getElementById("bar"); var width = elem.style.width; width = width.replace(/%/g, ''); if (width == "") width = '0'; else width = parseInt(width) - 5; if (width == 0) { width = width.toString() + '%'; elem.style.width = width; } else if (width > 0) { width = width.toString() + '%'; elem.style.width = width; } } </script> </body> </html>
广告