fix(web): 统一危险操作按钮样式

This commit is contained in:
Zhou Weidong committed 2026-10-19 12:32:23 +08:00
1 parent e77db70278
commit f5b399a52f
14 files changed
+54 -37

No files matched your search

+5 -12
View File
@@ -37,7 +37,7 @@
align-items: center; align-items: center;
gap: 8px; gap: 8px;
white-space: nowrap; white-space: nowrap;
flex-wrap: wrap; flex-wrap: nowrap;
} }
.table-actions .el-button { .table-actions .el-button {
/* 统一尺寸:高度固定、水平内边距,靠行高垂直居中,避免文字被压扁 */ /* 统一尺寸:高度固定、水平内边距,靠行高垂直居中,避免文字被压扁 */
@@ -53,12 +53,6 @@
.table-actions .el-button + .el-button { .table-actions .el-button + .el-button {
margin-left: 0 !important; margin-left: 0 !important;
} }
.table-actions .danger-action {
color: #a66a6a !important;
}
.table-actions .danger-action:hover {
color: #b54848 !important;
}
.drama-cell .drama-cover, .drama-cell .drama-cover,
.drama-cell .drama-cover-image { .drama-cell .drama-cover-image {
width: 44px; width: 44px;
@@ -271,7 +265,6 @@
.editor-grid--two { .editor-grid--two {
grid-template-columns: 1fr; grid-template-columns: 1fr;
} }
} }
html.dark .cover-preview-card, html.dark .cover-preview-card,
@@ -406,10 +399,10 @@ html.dark .cover-preview-empty {
--el-button-hover-border-color: #3c7358; --el-button-hover-border-color: #3c7358;
} }
.table-actions .el-button--danger { .table-actions .el-button--danger {
--el-button-bg-color: #bd5b5b; --el-button-bg-color: var(--el-color-danger);
--el-button-border-color: #bd5b5b; --el-button-border-color: var(--el-color-danger);
--el-button-hover-bg-color: #a94b4b; --el-button-hover-bg-color: var(--el-color-danger-dark-2);
--el-button-hover-border-color: #a94b4b; --el-button-hover-border-color: var(--el-color-danger-dark-2);
} }
.pagination { .pagination {
display: flex; display: flex;
+6 -5
View File
@@ -6,7 +6,7 @@ body {
min-width: 0; min-width: 0;
min-height: 100vh; min-height: 100vh;
} }
.page-heading { .page-heading {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
@@ -396,7 +396,11 @@ body {
background: linear-gradient(145deg, #f8d6d7, #ffece4); background: linear-gradient(145deg, #f8d6d7, #ffece4);
} }
.purple { .purple {
background: linear-gradient(145deg, var(--el-color-primary-light-8), var(--el-color-primary-light-9)); background: linear-gradient(
145deg,
var(--el-color-primary-light-8),
var(--el-color-primary-light-9)
);
} }
.peach { .peach {
background: linear-gradient(145deg, #ffd6bd, #fff0d7); background: linear-gradient(145deg, #ffd6bd, #fff0d7);
@@ -615,9 +619,6 @@ body {
padding: 5px; padding: 5px;
color: #9997a7; color: #9997a7;
} }
.episode-actions .danger-action:hover {
color: #e77680;
}
.episode-footer { .episode-footer {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
+19
View File
@@ -38,6 +38,25 @@ body {
--el-button-active-bg-color: var(--el-color-primary-dark-2); --el-button-active-bg-color: var(--el-color-primary-dark-2);
--el-button-active-border-color: var(--el-color-primary-dark-2); --el-button-active-border-color: var(--el-color-primary-dark-2);
} }
.el-button--danger {
--el-button-text-color: #fff;
--el-button-bg-color: var(--el-color-danger);
--el-button-border-color: var(--el-color-danger);
--el-button-hover-bg-color: var(--el-color-danger-dark-2);
--el-button-hover-border-color: var(--el-color-danger-dark-2);
color: #fff !important;
background: var(--el-color-danger) !important;
border-color: var(--el-color-danger) !important;
}
.el-button--danger:hover {
background: var(--el-color-danger-dark-2) !important;
border-color: var(--el-color-danger-dark-2) !important;
}
.el-message-box__btns .el-button--danger {
color: #fff !important;
background: var(--el-color-danger) !important;
border-color: var(--el-color-danger) !important;
}
.eyebrow { .eyebrow {
letter-spacing: 0.7px; letter-spacing: 0.7px;
color: #9298a1; color: #9298a1;
+3 -2
View File
@@ -102,6 +102,7 @@ async function refund(row) {
{ {
confirmButtonText: '确认退款', confirmButtonText: '确认退款',
cancelButtonText: '取消', cancelButtonText: '取消',
confirmButtonClass: 'el-button--danger',
inputValidator: (val) => (val && val.trim() ? true : '退款原因不能为空') inputValidator: (val) => (val && val.trim() ? true : '退款原因不能为空')
} }
) )
@@ -375,8 +376,8 @@ function onTabChange(name) {
> >
<el-button <el-button
v-if="canOrderUpdate && (row.status === 'PAID' || row.status === 'DELIVERED')" v-if="canOrderUpdate && (row.status === 'PAID' || row.status === 'DELIVERED')"
type="danger"
size="small" size="small"
class="danger-action"
@click="refund(row)" @click="refund(row)"
>退款</el-button >退款</el-button
> >
@@ -461,8 +462,8 @@ function onTabChange(name) {
<div class="table-actions"> <div class="table-actions">
<el-button <el-button
v-if="canEntitlementUpdate && row.status === 'ACTIVE'" v-if="canEntitlementUpdate && row.status === 'ACTIVE'"
type="danger"
size="small" size="small"
class="danger-action"
@click="revokeEntitlement(row)" @click="revokeEntitlement(row)"
>回收</el-button >回收</el-button
> >
@@ -561,6 +561,7 @@ onMounted(async () => {
</el-upload> </el-upload>
<el-button <el-button
v-if="can('cover:upload') && form.cover" v-if="can('cover:upload') && form.cover"
type="danger"
:disabled="uploadingCover" :disabled="uploadingCover"
@click="removeCover" @click="removeCover"
> >
+2 -2
View File
@@ -244,8 +244,8 @@ function requestDramaCover(options) {
<el-button size="small">{{ hasResumeSession ? '继续上传' : '上传视频' }}</el-button> <el-button size="small">{{ hasResumeSession ? '继续上传' : '上传视频' }}</el-button>
</el-upload> </el-upload>
<el-button <el-button
type="danger"
size="small" size="small"
class="danger-action"
:disabled="!editable" :disabled="!editable"
@click="removeEpisode(row)" @click="removeEpisode(row)"
>删除</el-button >删除</el-button
@@ -299,8 +299,8 @@ function requestDramaCover(options) {
<div class="table-actions"> <div class="table-actions">
<el-button <el-button
v-if="canEdit && ['SUBMITTED', 'REVIEWING'].includes(row.status)" v-if="canEdit && ['SUBMITTED', 'REVIEWING'].includes(row.status)"
type="danger"
size="small" size="small"
class="danger-action"
@click="withdraw(row.id)" @click="withdraw(row.id)"
>撤回</el-button >撤回</el-button
> >
+1 -1
View File
@@ -229,8 +229,8 @@ function openEdit(row) {
row.submissionId && row.submissionId &&
['SUBMITTED', 'REVIEWING'].includes(row.submissionStatus) ['SUBMITTED', 'REVIEWING'].includes(row.submissionStatus)
" "
type="danger"
size="small" size="small"
class="danger-action"
@click="withdraw(row)" @click="withdraw(row)"
>撤回</el-button >撤回</el-button
> >
@@ -156,7 +156,8 @@ export function useCreatorWorkspace() {
'撤回提交', '撤回提交',
{ {
confirmButtonText: '确认撤回', confirmButtonText: '确认撤回',
cancelButtonText: '取消' cancelButtonText: '取消',
confirmButtonClass: 'el-button--danger'
} }
) )
} catch { } catch {
+1 -1
View File
@@ -180,8 +180,8 @@ const {
> >
<el-button <el-button
v-if="canAudit && row.status === 'approved'" v-if="canAudit && row.status === 'approved'"
type="danger"
size="small" size="small"
class="danger-action"
@click="freeze(row)" @click="freeze(row)"
>冻结</el-button >冻结</el-button
> >
@@ -135,7 +135,8 @@ export function useCreatorAudit() {
await ElMessageBox.confirm(`冻结后「${row.name}」将无法提交内容,确认冻结?`, '冻结创作者', { await ElMessageBox.confirm(`冻结后「${row.name}」将无法提交内容,确认冻结?`, '冻结创作者', {
confirmButtonText: '确认冻结', confirmButtonText: '确认冻结',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning',
confirmButtonClass: 'el-button--danger'
}) })
} catch { } catch {
return return
@@ -343,7 +343,7 @@ const handleTargetText = computed(() => {
show-overflow-tooltip show-overflow-tooltip
:formatter="dateCell" :formatter="dateCell"
/> />
<el-table-column label="操作" width="200" fixed="right"> <el-table-column label="操作" width="230" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<div class="table-actions"> <div class="table-actions">
<el-button <el-button
@@ -358,8 +358,8 @@ const handleTargetText = computed(() => {
> >
<el-button <el-button
v-if="canCommentAudit" v-if="canCommentAudit"
type="danger"
size="small" size="small"
class="danger-action"
@click="removeComment(row)" @click="removeComment(row)"
>删除</el-button >删除</el-button
> >
@@ -523,11 +523,7 @@ const handleTargetText = computed(() => {
<el-button v-if="canWordUpdate" type="primary" size="small" @click="openWord(row)" <el-button v-if="canWordUpdate" type="primary" size="small" @click="openWord(row)"
>编辑</el-button >编辑</el-button
> >
<el-button <el-button v-if="canWordUpdate" type="danger" size="small" @click="removeWord(row)"
v-if="canWordUpdate"
size="small"
class="danger-action"
@click="removeWord(row)"
>删除</el-button >删除</el-button
> >
<span v-if="!canWordUpdate" class="console-muted">只读</span> <span v-if="!canWordUpdate" class="console-muted">只读</span>
+1 -1
View File
@@ -37,7 +37,7 @@ const { treeData, loading, form, parentOptions, resetForm, selectNode, saveMenu,
<div <div
><h2>{{ form.id ? '编辑菜单' : '新增菜单' }}</h2></div ><h2>{{ form.id ? '编辑菜单' : '新增菜单' }}</h2></div
> >
<el-button v-if="form.id" type="danger" plain @click="deleteMenu">删除菜单</el-button> <el-button v-if="form.id" type="danger" @click="deleteMenu">删除菜单</el-button>
</div> </div>
<el-form label-width="110px" label-position="right" class="menu-editor-form"> <el-form label-width="110px" label-position="right" class="menu-editor-form">
<el-form-item label="菜单名称" required> <el-form-item label="菜单名称" required>
+2 -2
View File
@@ -45,8 +45,8 @@ const {
<el-table-column prop="roleCount" label="角色数" width="100" /> <el-table-column prop="roleCount" label="角色数" width="100" />
<el-table-column label="操作" width="200"> <el-table-column label="操作" width="200">
<template #default="{ row }"> <template #default="{ row }">
<el-button type="primary" @click="editCategory(row)">编辑</el-button> <el-button type="primary" size="small" @click="editCategory(row)">编辑</el-button>
<el-button type="danger" @click="deleteCategory(row)">删除</el-button> <el-button type="danger" size="small" @click="deleteCategory(row)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
+6 -2
View File
@@ -73,9 +73,13 @@ function removeRoleRow(row) {
}}</el-tag> }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="90" fixed="right"> <el-table-column label="操作" width="100" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button type="danger" link :disabled="row.builtin" @click="removeRoleRow(row)" <el-button
type="danger"
size="small"
:disabled="row.builtin"
@click="removeRoleRow(row)"
>删除</el-button >删除</el-button
> >
</template> </template>