From e11603caec874ace75e42422305e96ea42b54803 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E8=AF=9A?= Date: Sat, 27 Dec 2025 21:15:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Web/src/main.js | 1 + Web/src/styles/common.css | 68 +++++++++++++++++++++++++++ Web/src/views/BillAnalysisView.vue | 7 +-- Web/src/views/ClassificationBatch.vue | 4 +- Web/src/views/ClassificationEdit.vue | 4 +- Web/src/views/ClassificationNLP.vue | 6 +-- Web/src/views/ClassificationSmart.vue | 4 +- Web/src/views/EmailRecord.vue | 11 ++++- Web/src/views/SettingView.vue | 50 ++++++++++---------- Web/src/views/StatisticsView.vue | 58 +++-------------------- Web/src/views/TransactionsRecord.vue | 10 +++- 11 files changed, 131 insertions(+), 92 deletions(-) diff --git a/Web/src/main.js b/Web/src/main.js index 6888638..845d4b7 100644 --- a/Web/src/main.js +++ b/Web/src/main.js @@ -1,4 +1,5 @@ import './assets/main.css' +import './styles/common.css' import { createApp } from 'vue' import { createPinia } from 'pinia' diff --git a/Web/src/styles/common.css b/Web/src/styles/common.css index 4b346fb..2f2dee1 100644 --- a/Web/src/styles/common.css +++ b/Web/src/styles/common.css @@ -161,3 +161,71 @@ -webkit-overflow-scrolling: touch; } +/* ===== 页面容器布局(Flex布局) ===== */ +.page-container-flex { + display: flex; + flex-direction: column; + height: 100vh; + overflow: hidden; +} + +.page-container-flex :deep(.van-nav-bar) { + flex-shrink: 0; +} + +.page-container-flex > .van-pull-refresh { + flex: 1; + overflow-y: auto; + -webkit-overflow-scrolling: touch; +} + +/* ===== 可滚动内容区域 ===== */ +.scroll-content { + flex: 1; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + padding: 16px 0 0 0; +} + +/* ===== 粘性顶部元素样式 ===== */ +.sticky-header { + position: sticky; + top: 0; + z-index: 10; + display: flex; + align-items: center; + justify-content: space-between; + padding: 12px 16px; + margin: 0 12px; + margin-top: 12px; + background: #ffffff; + border-radius: 12px; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); +} + +@media (prefers-color-scheme: dark) { + .sticky-header { + background: #1f1f1f; + } +} + +.sticky-header-text { + font-size: 16px; + font-weight: 600; + color: var(--van-text-color); + display: flex; + align-items: center; + gap: 4px; + cursor: pointer; + user-select: none; +} + +/* ===== 颜色工具类 ===== */ +.text-expense { + color: #ff6b6b; +} + +.text-income { + color: #51cf66; +} + diff --git a/Web/src/views/BillAnalysisView.vue b/Web/src/views/BillAnalysisView.vue index a475a6e..3605f10 100644 --- a/Web/src/views/BillAnalysisView.vue +++ b/Web/src/views/BillAnalysisView.vue @@ -1,5 +1,5 @@  diff --git a/Web/src/views/ClassificationEdit.vue b/Web/src/views/ClassificationEdit.vue index b9cd996..6ac1015 100644 --- a/Web/src/views/ClassificationEdit.vue +++ b/Web/src/views/ClassificationEdit.vue @@ -1,5 +1,5 @@  diff --git a/Web/src/views/ClassificationNLP.vue b/Web/src/views/ClassificationNLP.vue index 45000b9..ac7c5ed 100644 --- a/Web/src/views/ClassificationNLP.vue +++ b/Web/src/views/ClassificationNLP.vue @@ -1,13 +1,13 @@