You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用CSS为两个progress进度条设置不同颜色时样式失效怎么办?

问题原因

你当前编写的CSS是Sass/Scss等CSS预处理器的嵌套语法,原生CSS默认不支持这类嵌套规则,浏览器无法识别你写的样式,导致自定义配置全部失效,进度条恢复默认样式。

解决方案

将嵌套选择器拆分为标准原生CSS写法即可,公共样式可以抽离复用,避免重复代码:

/* 公共通用样式 */
progress {
  background-color: #eee;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
  width: 250px;
  height: 20px;
}
progress::-webkit-progress-bar {
  background-color: #eee;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
}

/* 第一个进度条红色样式 */
.progress1 progress::-webkit-progress-value {
  background-color: #c30000;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
}
.progress1 progress::-moz-progress-bar {
  background-color: #c30000;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
}

/* 第二个进度条绿色样式 */
.progress2 progress::-webkit-progress-value {
  background-color: #1eff00;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
}
.progress2 progress::-moz-progress-bar {
  background-color: #1eff00;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
}

原有HTML代码无需修改,替换CSS后即可实现两个进度条分别显示红色、绿色的预期效果。

内容的提问来源于stack exchange,提问作者Hello Hello

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 12:27:03