From 7e9c70fe6adf3ac9888c4f2b8d4ef61b72a35a05 Mon Sep 17 00:00:00 2001 From: mayiming <1627832236@qq.com> Date: Mon, 27 Oct 2025 17:22:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=9F=BA=E5=9C=B0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/baseoverview/BaseOverView.vue | 489 +++++++++++++----- web/src/views/BaseOverview.vue | 412 +++++++++++---- 2 files changed, 667 insertions(+), 234 deletions(-) diff --git a/management/src/views/baseoverview/BaseOverView.vue b/management/src/views/baseoverview/BaseOverView.vue index 72e24021..1602b45f 100644 --- a/management/src/views/baseoverview/BaseOverView.vue +++ b/management/src/views/baseoverview/BaseOverView.vue @@ -1,24 +1,75 @@ @@ -221,6 +358,7 @@ const resetCurrent = () => { .page-header-card { margin-bottom: 20px; + padding-bottom: 20px; } .page-title { @@ -229,14 +367,125 @@ const resetCurrent = () => { margin: 0; } +/* 页面图片管理样式 */ +.page-image-management { + margin-top: 20px; +} + +.section-title { + font-size: 16px; + font-weight: 500; + margin-bottom: 8px; + color: #333; +} + +.section-desc { + font-size: 14px; + color: #666; + margin-bottom: 15px; +} + +.cover-uploader { + width: 100%; + max-width: 800px; +} + +.cover-preview { + width: 100%; + height: 225px; /* 16:9比例适配 */ + border-radius: 8px; + overflow: hidden; + position: relative; + background: #f5f5f5; +} + +.cover-img { + width: 100%; + height: 100%; + object-fit: cover; +} + +.remove-cover-btn { + position: absolute; + top: 10px; + right: 10px; + width: 36px; + height: 36px; + border-radius: 50%; + background: rgba(0, 0, 0, 0.6); + color: white; + border: none; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + transition: background 0.3s; +} + +.remove-cover-btn:hover { + background: rgba(255, 0, 0, 0.8); +} + +.cover-action-buttons { + display: flex; + gap: 10px; + align-items: center; +} + +.cover-upload-area { + width: 100%; + height: 225px; +} + +.upload-placeholder { + width: 100%; + height: 100%; + border: 2px dashed #ccc; + border-radius: 8px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: #fafafa; + cursor: pointer; + transition: all 0.3s; +} + +.upload-placeholder:hover { + border-color: #409eff; + background: #f0f7ff; +} + +.upload-icon { + font-size: 36px; + color: #999; + margin-bottom: 12px; +} + +.upload-text { + color: #666; + font-size: 14px; + margin-bottom: 6px; +} + +.upload-subtext { + color: #999; + font-size: 12px; +} + +/* 操作按钮样式 */ .action-buttons { display: flex; gap: 10px; flex-wrap: wrap; /* 适配小屏幕换行 */ + margin-top: 20px; } +/* 确保textarea正确渲染换行 */ :deep(.el-textarea__inner) { min-height: 200px; resize: vertical; + white-space: pre-line; + line-height: 1.6; } \ No newline at end of file diff --git a/web/src/views/BaseOverview.vue b/web/src/views/BaseOverview.vue index 9e025d25..e31ce38f 100644 --- a/web/src/views/BaseOverview.vue +++ b/web/src/views/BaseOverview.vue @@ -1,145 +1,284 @@