diff --git a/frontend/src/views/contests/SuperDetail.vue b/frontend/src/views/contests/SuperDetail.vue index 205060a..9a578c6 100644 --- a/frontend/src/views/contests/SuperDetail.vue +++ b/frontend/src/views/contests/SuperDetail.vue @@ -6,7 +6,9 @@
- + 返回

{{ contest.contestName }}

@@ -77,11 +79,8 @@
-
+
{{ idx + 1 }} @@ -90,7 +89,8 @@ {{ phase.name }} {{ phase.timeRange }}
-
+
+
@@ -100,9 +100,11 @@ {{ contest.contestName }} - {{ contest.contestType === 'individual' ? '个人参与' : '团队参与' }} + {{ contest.contestType === 'individual' ? '个人参与' : '团队参与' + }} {{ visibilityMap[contest.visibility] || '-' }} - + {{ c }} @@ -112,7 +114,8 @@ 报名配置 - {{ formatDate(contest.registerStartTime) }} ~ {{ formatDate(contest.registerEndTime) }} + {{ formatDate(contest.registerStartTime) }} ~ {{ + formatDate(contest.registerEndTime) }} {{ contest.requireAudit ? '是' : '否' }} {{ contest.teamMinMembers || '-' }} ~ {{ contest.teamMaxMembers || '-' }} 人 @@ -121,15 +124,19 @@ 作品配置 - {{ formatDate(contest.submitStartTime) }} ~ {{ formatDate(contest.submitEndTime) }} - {{ contest.submitRule === 'resubmit' ? '允许重新提交' : '单次提交' }} + {{ formatDate(contest.submitStartTime) }} ~ {{ + formatDate(contest.submitEndTime) }} + {{ contest.submitRule === 'resubmit' ? '允许重新提交' : '单次提交' + }} {{ workTypeMap[contest.workType] || '-' }} - {{ contest.workRequirement }} + {{ contest.workRequirement + }} 评审配置 - {{ formatDate(contest.reviewStartTime) }} ~ {{ formatDate(contest.reviewEndTime) }} + {{ formatDate(contest.reviewStartTime) }} ~ {{ + formatDate(contest.reviewEndTime) }} {{ contest.reviewRule?.ruleName || '-' }} @@ -143,7 +150,8 @@ {{ formatOrgList(contest.organizers) }} {{ formatOrgList(contest.coOrganizers) }} {{ formatOrgList(contest.sponsors) }} - {{ contest.contactName || '-' }} {{ contest.contactPhone ? `/ ${contest.contactPhone}` : '' }} + {{ contest.contactName || '-' }} {{ contest.contactPhone ? `/ + ${contest.contactPhone}` : '' }} @@ -308,6 +316,8 @@ $primary: #6366f1; .super-detail-page { max-width: 1200px; + margin-left: auto; + margin-right: auto; } // 顶部信息栏 @@ -316,7 +326,7 @@ $primary: #6366f1; border-radius: 12px; padding: 20px 24px; margin-bottom: 16px; - box-shadow: 0 2px 12px rgba(0,0,0,0.06); + box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); .header-left { display: flex; @@ -361,7 +371,7 @@ $primary: #6366f1; background: #fff; border-radius: 12px; padding: 18px 20px; - box-shadow: 0 2px 12px rgba(0,0,0,0.06); + box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); cursor: pointer; transition: all 0.2s; @@ -392,11 +402,24 @@ $primary: #6366f1; color: #1e1b4b; line-height: 1.2; } - .ov-sub { font-size: 14px; color: #9ca3af; font-weight: 400; } - .ov-label { font-size: 12px; color: #9ca3af; margin-top: 2px; } + + .ov-sub { + font-size: 14px; + color: #9ca3af; + font-weight: 400; + } + + .ov-label { + font-size: 12px; + color: #9ca3af; + margin-top: 2px; + } } - .ov-arrow { color: #d1d5db; font-size: 12px; } + .ov-arrow { + color: #d1d5db; + font-size: 12px; + } } // 时间轴 @@ -407,7 +430,7 @@ $primary: #6366f1; border-radius: 12px; padding: 24px 32px; margin-bottom: 16px; - box-shadow: 0 2px 12px rgba(0,0,0,0.06); + box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); } .phase { @@ -435,8 +458,18 @@ $primary: #6366f1; display: flex; flex-direction: column; margin-left: 10px; - .phase-name { font-size: 13px; font-weight: 600; color: #374151; } - .phase-time { font-size: 11px; color: #9ca3af; margin-top: 2px; } + + .phase-name { + font-size: 13px; + font-weight: 600; + color: #374151; + } + + .phase-time { + font-size: 11px; + color: #9ca3af; + margin-top: 2px; + } } .phase-line { @@ -446,12 +479,21 @@ $primary: #6366f1; margin: 0 16px; min-width: 20px; - &.done { background: $primary; } + &.done { + background: $primary; + } } &.completed { - .phase-dot { background: $primary; color: #fff; border-color: $primary; } - .phase-info .phase-name { color: $primary; } + .phase-dot { + background: $primary; + color: #fff; + border-color: $primary; + } + + .phase-info .phase-name { + color: $primary; + } } &.current { @@ -461,7 +503,11 @@ $primary: #6366f1; border-color: $primary; box-shadow: 0 0 0 4px rgba($primary, 0.15); } - .phase-info .phase-name { color: $primary; font-weight: 700; } + + .phase-info .phase-name { + color: $primary; + font-weight: 700; + } } } @@ -469,13 +515,18 @@ $primary: #6366f1; .tab-card { border: none; border-radius: 12px; - box-shadow: 0 2px 12px rgba(0,0,0,0.06); + box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); - .config-desc { margin-bottom: 0; } + .config-desc { + margin-bottom: 0; + } } .rich-content { - :deep(img) { max-width: 100%; border-radius: 8px; } + :deep(img) { + max-width: 100%; + border-radius: 8px; + } } // 通知 @@ -492,9 +543,24 @@ $primary: #6366f1; justify-content: space-between; margin-bottom: 6px; } - .notice-title { font-weight: 600; color: #1e1b4b; font-size: 14px; } - .notice-body { font-size: 13px; color: #4b5563; line-height: 1.6; } - .notice-time { font-size: 11px; color: #9ca3af; margin-top: 8px; } + + .notice-title { + font-weight: 600; + color: #1e1b4b; + font-size: 14px; + } + + .notice-body { + font-size: 13px; + color: #4b5563; + line-height: 1.6; + } + + .notice-time { + font-size: 11px; + color: #9ca3af; + margin-top: 8px; + } } }