AnCao/web/src/pages/WrongQuestions.module.less
yanlongqi fb5edce22f 优化错题本页面UI和标题样式
主要改动:
1. 统一标题样式,与答题页面保持一致
   - 标题居中显示
   - 返回按钮使用绝对定位在左侧
   - 移除标题中的图标
   - Title组件level改为3
   - 响应式字体大小:移动端16px,PC端20px,超宽屏22px

2. 优化首页统计文案
   - 将"已刷"改为"已刷题目",更加清晰明确

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 04:33:12 +08:00

532 lines
8.5 KiB
Plaintext

.container {
min-height: 100vh;
background: #fafafa;
padding: 0;
}
.header {
padding: 20px;
padding-bottom: 16px;
background: transparent;
display: flex;
justify-content: center;
align-items: center;
position: relative;
.backButton {
color: #007aff;
font-weight: 500;
padding: 4px 12px;
transition: all 0.3s ease;
position: absolute;
left: 20px;
&:hover {
color: #0051d5;
transform: translateX(-4px);
}
}
.title {
color: #1d1d1f !important;
margin: 0 !important;
font-weight: 700;
font-size: 18px !important;
text-align: center;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
}
}
// 统计卡片容器
.statsContainer {
padding: 0 20px 16px;
}
.statCard {
border-radius: 16px;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(30px) saturate(180%);
-webkit-backdrop-filter: blur(30px) saturate(180%);
box-shadow:
0 2px 12px rgba(0, 0, 0, 0.05),
0 1px 4px rgba(0, 0, 0, 0.03),
0 0 0 1px rgba(0, 0, 0, 0.03);
border: 0.5px solid rgba(0, 0, 0, 0.04);
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
&:hover {
transform: translateY(-4px);
box-shadow:
0 8px 32px rgba(0, 0, 0, 0.08),
0 4px 16px rgba(0, 0, 0, 0.04),
0 0 0 1px rgba(0, 0, 0, 0.04);
}
:global {
.ant-statistic-title {
font-size: 13px;
color: rgba(0, 0, 0, 0.45);
margin-bottom: 4px;
}
.ant-statistic-content {
font-size: 28px;
}
}
}
// 筛选卡片
.filterCard {
margin: 0 20px 16px;
border-radius: 16px;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(30px) saturate(180%);
-webkit-backdrop-filter: blur(30px) saturate(180%);
box-shadow:
0 2px 12px rgba(0, 0, 0, 0.05),
0 1px 4px rgba(0, 0, 0, 0.03),
0 0 0 1px rgba(0, 0, 0, 0.03);
border: 0.5px solid rgba(0, 0, 0, 0.04);
}
.filterContent {
display: flex;
justify-content: space-between;
align-items: center;
gap: 16px;
flex-wrap: wrap;
}
.filterLeft {
flex: 1;
min-width: 300px;
}
.filterRight {
flex-shrink: 0;
}
// 操作按钮卡片(已废弃,保留样式以防需要)
.actionCard {
margin: 0 20px 16px;
border-radius: 16px;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(30px) saturate(180%);
-webkit-backdrop-filter: blur(30px) saturate(180%);
box-shadow:
0 2px 12px rgba(0, 0, 0, 0.05),
0 1px 4px rgba(0, 0, 0, 0.03),
0 0 0 1px rgba(0, 0, 0, 0.03);
border: 0.5px solid rgba(0, 0, 0, 0.04);
:global {
.ant-card-body {
padding: 16px 20px;
}
}
}
.primaryButton {
background: #1890ff;
border: none;
box-shadow: 0 2px 8px rgba(24, 144, 255, 0.3);
transition: all 0.3s ease;
min-width: 120px;
&:hover {
background: #40a9ff;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(24, 144, 255, 0.4);
}
&:disabled {
background: #d9d9d9;
box-shadow: none;
transform: none;
}
}
.clearButton {
background: #fff;
border: 1px solid #d9d9d9;
color: rgba(0, 0, 0, 0.65);
transition: all 0.3s ease;
min-width: 110px;
&:hover {
color: #ff4d4f;
border-color: #ff4d4f;
background: #fff1f0;
transform: translateY(-2px);
box-shadow: 0 2px 8px rgba(255, 77, 79, 0.2);
}
&:disabled {
color: rgba(0, 0, 0, 0.25);
background: #f5f5f5;
border-color: #d9d9d9;
transform: none;
}
}
.listCard {
margin: 0 20px 20px;
border-radius: 20px;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(30px) saturate(180%);
-webkit-backdrop-filter: blur(30px) saturate(180%);
box-shadow:
0 2px 12px rgba(0, 0, 0, 0.05),
0 1px 4px rgba(0, 0, 0, 0.03),
0 0 0 1px rgba(0, 0, 0, 0.03);
border: 0.5px solid rgba(0, 0, 0, 0.04);
padding-bottom: 60px;
:global {
.ant-list-item {
border: none !important;
padding: 0 !important;
}
}
}
.listItem {
padding: 0 !important;
margin-bottom: 16px !important;
&:last-child {
margin-bottom: 0 !important;
}
}
// 题目卡片
.questionCard {
width: 100%;
padding: 20px;
border-radius: 16px;
background: #fff;
border: 1px solid rgba(0, 0, 0, 0.06);
box-shadow:
0 1px 2px rgba(0, 0, 0, 0.03),
0 1px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px rgba(0, 0, 0, 0.02);
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
&:hover {
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
}
.questionHeader {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 16px;
flex-wrap: wrap;
gap: 12px;
}
.questionId {
font-size: 16px;
color: #1d1d1f;
font-weight: 600;
}
.deleteButton {
color: #ff4d4f;
transition: all 0.3s ease;
&:hover {
color: #ff7875;
background: rgba(255, 77, 79, 0.08);
}
}
// 题目内容
.questionContent {
color: #1d1d1f;
font-size: 15px;
line-height: 1.6;
margin-bottom: 12px;
}
// 答案区域
.answerSection {
margin-bottom: 12px;
padding: 0;
}
.answerRow {
display: flex;
gap: 8px;
align-items: flex-start;
}
.answerLabel {
font-weight: 600;
white-space: nowrap;
font-size: 14px;
}
.answerValue {
flex: 1;
font-size: 14px;
word-break: break-word;
}
// 掌握度进度条区域
.masteryProgress {
margin-top: 16px;
padding-top: 16px;
border-top: 1px solid rgba(0, 0, 0, 0.06);
}
.progressHeader {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
}
.progressLabel {
font-size: 13px;
font-weight: 600;
color: #1d1d1f;
}
.masteryTag {
font-weight: 600;
border-radius: 6px;
font-size: 12px;
}
.questionFooter {
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 16px;
margin-top: 16px;
border-top: 1px solid rgba(0, 0, 0, 0.06);
}
// 响应式设计 - 移动端
@media (max-width: 768px) {
.container {
padding: 0;
}
.header {
padding: 16px;
.backButton {
font-size: 14px;
padding: 4px 8px;
left: 16px;
}
.title {
font-size: 16px !important;
}
}
.statsContainer {
padding: 0 16px 12px;
}
.statCard {
border-radius: 12px;
:global {
.ant-statistic-title {
font-size: 12px;
}
.ant-statistic-content {
font-size: 24px;
}
}
}
.filterCard {
margin: 0 16px 12px;
border-radius: 12px;
}
.filterContent {
flex-direction: column;
align-items: stretch;
gap: 12px;
}
.filterLeft {
min-width: auto;
width: 100%;
}
.filterRight {
width: 100%;
:global {
.ant-space {
width: 100%;
justify-content: stretch;
.ant-space-item {
flex: 1;
button {
width: 100%;
}
}
}
}
}
.primaryButton,
.clearButton {
min-width: auto;
font-size: 14px;
}
.actionCard {
margin: 0 16px 12px;
border-radius: 12px;
:global {
.ant-card-body {
padding: 12px 16px;
}
}
}
.listCard {
margin: 0 16px 16px;
border-radius: 16px;
}
.questionCard {
padding: 16px;
border-radius: 12px;
}
.questionHeader {
gap: 8px;
margin-bottom: 12px;
}
.questionContent {
font-size: 14px;
}
.masteryProgress {
margin-top: 12px;
padding-top: 12px;
}
.progressHeader {
margin-bottom: 10px;
}
.progressLabel {
font-size: 12px;
}
.masteryTag {
font-size: 11px;
}
.questionFooter {
padding-top: 12px;
margin-top: 12px;
}
.questionId {
font-size: 15px;
}
}
// 响应式设计 - PC端
@media (min-width: 769px) {
.container {
max-width: 1400px;
margin: 0 auto;
}
.header {
padding: 32px 32px 24px;
.title {
font-size: 20px !important;
}
}
.statsContainer {
padding: 0 32px 20px;
}
.filterCard {
margin: 0 32px 20px;
}
.actionCard {
margin: 0 32px 20px;
}
.listCard {
margin: 0 32px 32px;
padding-bottom: 0;
}
.questionCard {
padding: 24px;
}
.questionHeader {
margin-bottom: 20px;
}
.questionContent {
font-size: 16px;
}
.answerSection {
margin-bottom: 16px;
}
.masteryProgress {
margin-top: 20px;
padding-top: 20px;
}
.progressHeader {
margin-bottom: 12px;
}
.progressLabel {
font-size: 14px;
}
.masteryTag {
font-size: 12px;
}
.questionFooter {
padding-top: 20px;
margin-top: 20px;
}
}
// 响应式设计 - 超宽屏
@media (min-width: 1600px) {
.container {
max-width: 1600px;
}
.header {
.title {
font-size: 22px !important;
}
}
}