fix(theme): 修横向拖动 + 立绘遮光环,形象换成简约风插画

问题与修复:
1. 桌面端表格/列表需要横向拖动 —— 上一版为避让立绘给 .grid/.footer 加了
   240px 右内边距,而 .grid 是 max-width:1200px,内边距吃在 1200 内部,
   1200px 以上的屏幕也必然溢出。改为立绘收窄 + 置于内容之下(z-index 低于面板)
2. 立绘遮挡光环水印 —— 光环水印移到页脚下方空带,与左下公路车、右下立绘形成
   一条互不遮挡的装饰带
3. 形象换成简约风插画(AI 生成后抠底):右下角全身立绘 + 同款半身像做 logo/favicon;
   官方立绘/头像(SchaleDB 素材)已从仓库移除

验证:
- 1280/1440/1920 三种宽度下页面与表格均 0 溢出
- verify-views 新增 4 条断言(两视图无横向溢出、立绘不影响阅读),15/15 通过
- 四套脚本合计 74 项全通过
This commit is contained in:
tamakyi
2026-10-13 19:56:46 +08:00
parent d88ba56156
commit 5b417c84f4
20 changed files with 464 additions and 429 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
const VERSION = '0.7.0';
const VERSION = '0.8.0';
const HB_LIMIT = 48;
const UPTIME_DAYS = 90;
const BROWSER_CONCURRENCY = 6;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

+14 -18
View File
@@ -62,17 +62,18 @@ body[data-theme="shiroko"] {
background-attachment: fixed;
}
/* 右下角:按官方造型还原的光环水印(倾斜椭圆环 + 四方位圆头短杆) */
/* 页脚下方空带:按官方造型还原的光环水印(倾斜椭圆环 + 四方位圆头短杆),
与左下角公路车、右下角立绘形成一条装饰带,互不遮挡 */
body[data-theme="shiroko"]::after {
content: "";
position: fixed;
right: -70px;
bottom: 40px;
width: 460px;
height: 260px;
left: 44%;
bottom: 0;
width: 330px;
height: 180px;
pointer-events: none;
z-index: 0;
opacity: 0.55;
opacity: 0.5;
background-repeat: no-repeat;
background-size: contain;
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 130'><g stroke='%232ea8dc' stroke-opacity='0.11' fill='none' stroke-linecap='round'><ellipse cx='120' cy='64' rx='86' ry='38' stroke-width='11'/><ellipse cx='120' cy='70' rx='48' ry='21' stroke-width='6'/><g stroke-width='7'><line x1='22' y1='64' x2='6' y2='64'/><line x1='218' y1='64' x2='234' y2='64'/><line x1='120' y1='18' x2='120' y2='2'/><line x1='120' y1='110' x2='120' y2='126'/></g></g><g fill='%232ea8dc' fill-opacity='0.11'><circle cx='6' cy='64' r='4.6'/><circle cx='234' cy='64' r='4.6'/><circle cx='120' cy='2' r='4.6'/><circle cx='120' cy='126' r='4.6'/></g></svg>");
@@ -202,28 +203,23 @@ body[data-theme="shiroko"] .uptime-cell.lv-none {
body[data-theme="shiroko"] #refresh-btn .wheel { animation: wheel-spin 0.9s linear infinite; }
@keyframes wheel-spin { to { transform: rotate(360deg); } }
/* ---------- 角色立绘(settings.artwork,默认指向内置立绘) ---------- */
/* ---------- 简约风立绘(settings.artwork,默认指向内置形象) ---------- */
body[data-theme="shiroko"] .artwork {
position: fixed;
right: 8px;
right: 10px;
bottom: 0;
width: auto;
height: min(56vh, 520px);
height: min(44vh, 380px);
z-index: 0;
pointer-events: none;
user-select: none;
filter: drop-shadow(0 8px 24px rgb(23 60 100 / 18%));
mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 100%);
-webkit-mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 100%);
filter: drop-shadow(0 6px 18px rgb(23 60 100 / 15%));
}
@media (max-width: 900px) {
@media (max-width: 1100px) {
body[data-theme="shiroko"] .artwork { display: none; }
}
/* 宽屏时为立绘留出空间,避免遮住表格右侧的可用率列 */
@media (min-width: 1100px) {
body[data-theme="shiroko"] .grid,
body[data-theme="shiroko"] .footer { padding-right: 240px; }
}
/* 卡片视图行数多、卡片更靠右下,立绘再收一档,尽量让它落在卡片之外的角落 */
body[data-theme="shiroko"][data-view="cards"] .artwork { height: min(34vh, 300px); }
/* 内容层置于装饰之上 */
body[data-theme="shiroko"] .grid,