答案:通过HTML嵌套div和CSS样式实现进度条,外层设背景、圆角与隐藏溢出,内层用宽度百分比表示进度,并添加过渡动画;可结合JavaScript动态更新宽度以显示进度,如设置80%进度,同时可优化文字居中与动画性能。

实现一个简单的CSS进度条,可以通过一个容器和内部表示进度的色块来完成。重点是用CSS控制进度的宽度来反映完成比例。
基本HTML结构
使用两个嵌套的div:外层作为进度条背景,内层表示当前进度。
基础CSS样式
设置外框样式、高度、圆角以及内层颜色和过渡动画。
.progress-bar {height: 20px;
background-color: #e0e0e0;
border-radius: 10px;
width: 100%;
overflow: hidden;
}
.progress {
height: 100%;
background-color: #4caf50;
width: 0;
transition: width 0.3s ease;
}
说明:
border-radius 让进度条看起来更柔和,overflow: hidden 防止内部超出圆角显示异常,transition 实现宽度变化的动画效果。
立即学习“前端免费学习笔记(深入)”;
动态设置进度
通过JavaScript或直接修改内层元素的width值来更新进度。
例如,让进度显示80%:
.progress {width: 80%;
}
也可以在JS中动态控制:
document.querySelector('.progress').style.width = '80%';可选优化
- 添加文字居中显示百分比
- 使用
transform: scaleX提升动画性能 - 配合数据属性实现组件化
基本上就这些,不复杂但容易忽略细节比如溢出隐藏和过渡流畅性。










