From 24412989bb29f7c8284323b826fc1de48ba3395d Mon Sep 17 00:00:00 2001 From: jxxghp Date: Tue, 30 Jun 2026 21:20:41 +0800 Subject: [PATCH] =?UTF-8?q?fix(subscribe):=20=E4=BF=AE=E5=A4=8D=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=BC=B9=E7=AA=97=E7=A7=BB=E5=8A=A8=E7=AB=AF=E5=B8=83?= =?UTF-8?q?=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dialog/SubscribeFilesDialog.vue | 45 +++++++++---------- src/styles/themes/transparent.scss | 29 ++++++++++++ 2 files changed, 49 insertions(+), 25 deletions(-) diff --git a/src/components/dialog/SubscribeFilesDialog.vue b/src/components/dialog/SubscribeFilesDialog.vue index b76b74ea..3210f785 100644 --- a/src/components/dialog/SubscribeFilesDialog.vue +++ b/src/components/dialog/SubscribeFilesDialog.vue @@ -836,12 +836,20 @@ onBeforeMount(() => { } .subscribe-files-progress__label { - display: grid; + display: flex; align-items: center; gap: 0.4rem; - grid-template-columns: auto 1fr auto; margin-block-end: 0.55rem; font-size: 0.9rem; + white-space: nowrap; +} + +.subscribe-files-progress__label strong { + margin-inline-start: auto; +} + +.subscribe-files-progress__label :deep(.v-icon) { + flex: 0 0 auto; } .subscribe-files-stats { @@ -1009,6 +1017,15 @@ onBeforeMount(() => { min-inline-size: 0; } +.subscribe-files-tab-group :deep(.v-btn__content) { + flex-wrap: nowrap; + white-space: nowrap; +} + +.subscribe-files-tab-group :deep(.v-icon) { + flex: 0 0 auto; +} + .subscribe-files-tab-group__button { border-radius: calc(var(--app-control-radius) - 0.15rem) !important; color: rgba(var(--v-theme-on-surface), 0.72) !important; @@ -1254,7 +1271,6 @@ onBeforeMount(() => { transform: translateY(0.25rem); } -:global(html[data-theme='light']) .subscribe-files-dialog, .subscribe-files-dialog.v-theme--light { --sfd-accent-opacity: 0.08; --sfd-border-opacity: 0.11; @@ -1265,27 +1281,6 @@ onBeforeMount(() => { --sfd-muted-opacity: 0.68; } -:global(html[data-theme='transparent']) .subscribe-files-dialog, -.subscribe-files-dialog.v-theme--transparent { - --sfd-accent-opacity: 0.12; - --sfd-blur: var(--transparent-blur-heavy, 18px); - --sfd-dialog-opacity: var(--transparent-opacity-heavy, 0.5); - --sfd-hero-end-opacity: 0.42; - --sfd-hero-mid-opacity: 0.2; - --sfd-hero-shade-opacity: 0.48; - --sfd-hero-start-opacity: 0.52; - --sfd-panel-opacity: 0.14; - --sfd-panel-strong-opacity: var(--transparent-opacity, 0.3); - --sfd-code-opacity: 0.14; -} - -:global(html[data-theme='transparent']) .subscribe-files-progress__item, -:global(html[data-theme='transparent']) .subscribe-files-stat-card, -:global(html[data-theme='transparent']) .subscribe-files-tab-group { - backdrop-filter: blur(var(--transparent-blur-light, 6px)); - background: rgba(var(--v-theme-surface), var(--sfd-panel-opacity)); -} - @media (width <= 960px) { .subscribe-files-dialog { border: 0; @@ -1326,7 +1321,7 @@ onBeforeMount(() => { .subscribe-files-progress { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); - margin-block-start: 0; + margin-block-start: 0.75rem; } .subscribe-files-stats { diff --git a/src/styles/themes/transparent.scss b/src/styles/themes/transparent.scss index 2fed98cc..842caa9e 100644 --- a/src/styles/themes/transparent.scss +++ b/src/styles/themes/transparent.scss @@ -41,6 +41,35 @@ html[data-theme="transparent"] { } } + // 订阅文件弹窗使用独立的玻璃表面参数,避免组件内通过全局选择器穿透主题。 + .subscribe-files-dialog { + --sfd-accent-opacity: 0.12; + --sfd-blur: var(--transparent-blur-heavy); + --sfd-dialog-opacity: var(--transparent-opacity-heavy); + --sfd-hero-end-opacity: 0.42; + --sfd-hero-mid-opacity: 0.2; + --sfd-hero-shade-opacity: 0.48; + --sfd-hero-start-opacity: 0.52; + --sfd-panel-opacity: 0.14; + --sfd-panel-strong-opacity: var(--transparent-opacity); + --sfd-code-opacity: 0.14; + } + + .subscribe-files-progress__item, + .subscribe-files-stat-card, + .subscribe-files-tab-group { + backdrop-filter: blur(var(--transparent-blur-light)); + background: rgba(var(--v-theme-surface), var(--sfd-panel-opacity)); + } + + .subscribe-files-tab-group { + background: rgba(var(--v-theme-surface), 0.08) !important; + } + + .subscribe-files-tab-group .v-btn:not(.subscribe-files-tab-group__button--active) { + background: transparent !important; + } + // 设置页彩色卡片保留透明主题的玻璃质感,只叠加极轻的图标主色。 .app-card-colorful { border: 0;