fix(界面): 能点的文字平时就是绿色,不用再把鼠标移上去才看得出能点
Deploy / deploy (push) Canceled after 0s

首页「全部」、提交详情的用户名和题名、题目页「点开看全部」「有 N 道差一点」、
班级对抗的班级名、知识点、后台标题等 30 多处原来和正文同色,鼠标移上去才变色,
手机上根本没有「移上去」。现在一律主题绿,移上去加下划线;没设颜色的文字按钮补上
type="primary"。排名名字列、整行可点的列表、后台 quaternary 次要按钮不动。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
xuyueandClaude Opus 5.5 committed 2026-10-23 10:39:49 +08:00
1 parent b3dca1a271
commit b0700d0bd9
32 files changed
+141 -53

No files matched your search

+1 -2
View File
@@ -197,13 +197,12 @@ watch(query, listAnnouncements, { deep: true })
}
.ann-table :deep(.title-link) {
color: inherit;
color: v-bind("theme.primaryColor");
font-weight: 500;
text-decoration: none;
}
.ann-table :deep(.title-link:hover) {
color: v-bind("theme.primaryColor");
text-decoration: underline;
}
@@ -1,4 +1,5 @@
<script setup lang="ts">
import { Icon } from "@iconify/vue"
import { useThemeVars } from "naive-ui"
import { getLearnStudent } from "admin/api"
import { parseTime, readableDuration } from "utils/functions"
@@ -159,6 +160,14 @@ watch(
:class="stateOf(ex)"
/>
</span>
<Icon
v-if="lesson.exercises.length || lesson.problems.length"
:icon="
expanded.has(lesson.tutorialId) ? 'ph:caret-down-bold' : 'ph:caret-right-bold'
"
:width="12"
class="muted"
/>
</span>
<span class="lesson-line small muted num">
<template v-if="lesson.viewCount">
+4 -1
View File
@@ -650,7 +650,10 @@ onMounted(load)
text-align: left;
cursor: pointer;
}
.name-btn:hover {
.name-btn :deep(.name) {
color: v-bind("theme.primaryColor");
}
.name-btn:hover :deep(.name) {
text-decoration: underline;
}
.c-num {
+4 -1
View File
@@ -332,9 +332,12 @@ html.dark .page {
color: inherit;
text-decoration: none;
}
a.c-title:hover .ptitle {
a.c-title .ptitle {
color: var(--learn-green-text);
}
a.c-title:hover .ptitle {
text-decoration: underline;
}
.pid {
width: 34px;
flex-shrink: 0;
@@ -219,10 +219,14 @@ const status = (row: CaseRow) => caseStatus(row, props.source)
padding: 0;
background: none;
font: inherit;
color: v-bind("theme.textColor3");
color: v-bind("theme.primaryColor");
cursor: pointer;
}
.more:hover {
text-decoration: underline;
}
.was {
color: v-bind("theme.warningColorPressed");
}
@@ -35,7 +35,8 @@ const allColumns: DataTableColumn<AdminProblemRow>[] = [
title: "题目",
key: "title",
minWidth: 200,
render: (row) => h(NButton, { text: true, onClick: () => goEdit(row) }, () => row.title),
render: (row) =>
h(NButton, { text: true, type: "primary", onClick: () => goEdit(row) }, () => row.title),
},
{
title: "学生看得到",
+8 -2
View File
@@ -1160,7 +1160,13 @@ onMounted(async () => {
:height="codeHeight(form.templates[lang].template, 4, 16)"
placeholder="不写就用全站默认的"
/>
<n-button text size="small" class="hiddenToggle" @click="showHidden = !showHidden">
<n-button
text
type="primary"
size="small"
class="hiddenToggle"
@click="showHidden = !showHidden"
>
{{ showHidden ? "▾" : "›" }} 藏在学生代码前面 / 后面一起运行的代码(学生看不到)
</n-button>
<template v-if="showHidden">
@@ -1671,7 +1677,7 @@ onMounted(async () => {
border: 0;
background: transparent;
font: inherit;
color: v-bind("theme.textColor1");
color: v-bind("theme.primaryColor");
text-align: left;
cursor: pointer;
}
+1 -2
View File
@@ -481,13 +481,12 @@ watch(() => [query.page, query.limit, query.author, query.kind, query.visible],
}
.problem-table :deep(.title-link) {
color: inherit;
color: v-bind("theme.primaryColor");
font-weight: 500;
text-decoration: none;
}
.problem-table :deep(.title-link:hover) {
color: v-bind("theme.primaryColor");
text-decoration: underline;
}
+2 -3
View File
@@ -122,7 +122,7 @@ watchDebounced(keyword, listTags, { debounce: 500, maxWait: 1000 })
<div v-if="pendingTags.length" class="pending">
<b>还没归类</b>
<div v-for="tag in pendingTags" :key="tag.id" class="pending-item">
<n-button text @click="openTagProblems(tag)">{{ tag.name }}</n-button>
<n-button text type="primary" @click="openTagProblems(tag)">{{ tag.name }}</n-button>
<span class="muted">{{ tag.problemCount }} 道</span>
<n-button size="small" @click="changeCategory(tag, 'knowledge')">算知识点</n-button>
<n-button size="small" @click="changeCategory(tag, 'theme')">算主题</n-button>
@@ -257,12 +257,11 @@ watchDebounced(keyword, listTags, { debounce: 500, maxWait: 1000 })
font: inherit;
font-size: 15px;
text-align: left;
color: v-bind("theme.textColor1");
color: v-bind("theme.primaryColor");
cursor: pointer;
}
.name:hover {
color: v-bind("theme.primaryColor");
text-decoration: underline;
}
+5 -1
View File
@@ -26,7 +26,11 @@ function edit(row: AdminProblemSet) {
}
function renderTitle(row: AdminProblemSet) {
return h(NButton, { text: true, onClick: () => edit(row) }, { default: () => row.title })
return h(
NButton,
{ text: true, type: "primary", onClick: () => edit(row) },
{ default: () => row.title },
)
}
function renderAssigned(row: AdminProblemSet) {