From 8a35a2535864133f9c39ecd714854da6f3c1d776 Mon Sep 17 00:00:00 2001 From: x1ao4 Date: Thu, 9 Oct 2025 23:47:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20Toast=20=E9=80=9A=E7=9F=A5?= =?UTF-8?q?=E4=B8=BA=E5=86=85=E5=AE=B9=E8=87=AA=E9=80=82=E5=BA=94=E5=B9=B6?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=B1=85=E4=B8=AD=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除固定宽度上限,按内容自适应宽度 - 超长时最大宽度改为 calc(100vw - 20px),页面左右边距各 10px - 始终居中显示:容器居中 + 显示阶段强制 inline-block - 固定顶部距离为 64px,内容换行不影响上边距 - 文本自动换行且保持居中,对超长英文/URL 友好 - 微调垂直内边距,总高度净减少 1px - 桌面端与移动端样式一致,不影响其他组件/交互 --- app/static/css/main.css | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/app/static/css/main.css b/app/static/css/main.css index 08b81a2..e73997c 100644 --- a/app/static/css/main.css +++ b/app/static/css/main.css @@ -101,23 +101,35 @@ body.login-page { /* --------------- Toast 通知组件 --------------- */ .toast-container-center { position: fixed; - top: 90.5px; - left: 50%; - transform: translate(-50%, -50%); + top: 64px; + left: 0; + right: 0; + margin: 0 auto; + transform: none; /* 固定顶部距离,不随内容高度变化 */ z-index: 9999; - width: auto; - max-width: 80%; + width: 100%; + max-width: 100%; pointer-events: none; + text-align: center; /* 容器内居中,使移动端与桌面端一致 */ + padding: 0 10px; /* 页面左右各 10px 的安全边距 */ } .toast-custom { - min-width: 120px; background-color: var(--focus-border-color); box-shadow: 0 3px 7px rgba(0, 0, 0, 0.1); border: none; border-radius: 6px; - margin: 0 auto; - width: fit-content; + margin: 0; /* 由容器 padding 提供页面边距限制,避免强制扩张 */ + display: inline-block; /* 保持根据内容自适应,同时允许换行后包裹 */ + width: -moz-fit-content; + width: fit-content; /* 内容自适应宽度 */ + max-width: calc(100vw - 20px); /* 视口宽度减去左右 10px */ +} + +/* Bootstrap 在显示阶段可能将 .toast 设为 block,强制保持 inline-block 以持续居中 */ +.toast-custom.show, +.toast-custom.showing { + display: inline-block !important; } .toast-body-custom { @@ -125,7 +137,11 @@ body.login-page { padding: 0.93rem 1.2rem; color: #fff; font-size: 0.95rem; - white-space: nowrap; + white-space: normal; + word-break: break-word; + margin: 0 auto; /* 保持正文在容器中水平居中 */ + padding-top: calc(0.93rem - 0.25px); + padding-bottom: calc(0.93rem - 0.25px); } /* --------------- 底部按钮 --------------- */