2025-10-14
问题描述:
修复方案:
src/app/pages/designer/project-detail/suggestion-detail-modal.scss
遮罩层样式
.modal-overlay {
position: fixed; // 固定定位
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.6); // 半透明黑色背景
backdrop-filter: blur(4px); // 背景模糊效果
display: flex;
align-items: center; // 垂直居中
justify-content: center; // 水平居中
z-index: 10000; // 确保在最上层
animation: fadeIn 0.3s ease; // 淡入动画
padding: 20px;
overflow-y: auto; // 内容过多时可滚动
}
弹窗容器样式
.modal-content {
background: white;
border-radius: 24px;
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
animation: slideUp 0.3s ease; // 向上滑动动画
position: relative;
display: flex;
flex-direction: column;
}
动画效果
// 淡入动画
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
// 向上滑动动画
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(40px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
问题描述:
.fair
但方法返回.average
)修复方案:
src/app/pages/designer/project-detail/project-detail.scss
src/app/pages/designer/project-detail/project-review-styles.scss
修改前:
&.score {
&.excellent { color: #34c759; }
&.good { color: #007aff; }
&.fair { color: #ff9500; } // ❌ 类名不匹配
&.poor { color: #ff3b30; }
}
修改后:
&.score {
padding: 6px 12px;
border-radius: 8px;
display: inline-block;
font-weight: 700;
color: white !important; // ✅ 强制白色文字
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); // ✅ 文字阴影增强可读性
&.excellent {
background: linear-gradient(135deg, #34c759 0%, #28a745 100%);
box-shadow: 0 2px 8px rgba(52, 199, 89, 0.3);
}
&.good {
background: linear-gradient(135deg, #007aff 0%, #0051d5 100%);
box-shadow: 0 2px 8px rgba(0, 122, 255, 0.3);
}
&.average { // ✅ 修正类名
background: linear-gradient(135deg, #ff9500 0%, #e68600 100%);
box-shadow: 0 2px 8px rgba(255, 149, 0, 0.3);
}
&.poor {
background: linear-gradient(135deg, #ff3b30 0%, #d32f2f 100%);
box-shadow: 0 2px 8px rgba(255, 59, 48, 0.3);
}
}
添加背景色
修正类名
.fair
改为.average
getScoreClass()
方法返回值匹配增强可读性
color: white !important
)text-shadow
)视觉优化
inline-block
显示分数范围 | 等级 | 颜色 | 背景渐变 |
---|---|---|---|
90-100 | excellent | 白色 | 绿色渐变 (#34c759 → #28a745) |
80-89 | good | 白色 | 蓝色渐变 (#007aff → #0051d5) |
70-79 | average | 白色 | 橙色渐变 (#ff9500 → #e68600) |
0-69 | poor | 白色 | 红色渐变 (#ff3b30 → #d32f2f) |
position: fixed
脱离文档流flexbox
实现水平垂直居中z-index: 10000
确保在最上层overflow-y: auto
处理内容过多的情况!important
强制覆盖可能的继承样式inline-block
使元素宽度自适应内容ease
缓动函数,动画更自然backdrop-filter
(可降级为纯色背景)src/app/pages/designer/project-detail/suggestion-detail-modal.scss
src/app/pages/designer/project-detail/project-detail.scss
.fair
到.average
src/app/pages/designer/project-detail/project-review-styles.scss
.fair
到.average
getScoreClass(score: number): string
- 返回评分等级类名弹窗层级
z-index: 10000
确保在最上层移动端适配
性能考虑
backdrop-filter
可能影响性能样式优先级
!important
确保显示!important
修复完成! ✅
所有问题已解决,代码质量良好,无linting错误。