fix(ui): 页脚被内容链规则压成竖排 —— 排除 .navi-footer-host/.navi-footer

几何实测(v75):.navi-footer display=flex 但 flex-direction=column,
5 个子项竖排 y=694/715/736/757/778,每日一言 h=0 且落在视口外;
host overflow=hidden。
根因:那两条 body:has(.minimal-home) > div / > div > div 规则命中 .navi-footer,
使其成为 column + overflow:hidden 的容器。
v71 的 row 规则特异性 (0,4,2) 本可压过原规则 (0,2,4),
但 v74 为修「菜单被裁剪」给该规则加了 3 个 :not(),
特异性升到 (0,5,4),反而压过了页脚规则 —— 同一个 :not() 修好菜单、踩坏页脚。
修法:把 .navi-footer-host / .navi-footer 也加入 :not() 排除
(两者均为固定定位,本就不应参与该压缩链)。
This commit is contained in:
HomeDash Bot
2026-09-12 18:07:07 +08:00
parent c299a666f6
commit 38ba5584f0

View File

@ -733,8 +733,8 @@ html[data-theme] body:has(.minimal-home) {
导致"切换视图"菜单被裁剪:只露一条缝、中心点命中 #dashy、选项全都点不到
(实测证据:祖先链 overflow=hidden + 开关像素比对有变化 + elementFromPoint 命中 #dashy)。
故排除导航控件子树,其余保持原行为。 */
html[data-theme] body:has(.minimal-home) > div:not(.navi-dock):not(.navi-view-switch):not(.navi-view-menu),
html[data-theme] body:has(.minimal-home) > div > div:not(.navi-view-switch):not(.navi-view-menu):not(.navi-dock) {
html[data-theme] body:has(.minimal-home) > div:not(.navi-dock):not(.navi-view-switch):not(.navi-view-menu):not(.navi-footer-host),
html[data-theme] body:has(.minimal-home) > div > div:not(.navi-view-switch):not(.navi-view-menu):not(.navi-dock):not(.navi-footer) {
flex: 1 1 auto !important;
min-height: 0 !important;
max-height: 100% !important;
@ -2288,3 +2288,10 @@ html.navi-dark body .navi-search-toggle { color: #cbd5e1 !important; }
html.navi-dark body .navi-view-toggle:hover,
html.navi-dark body .navi-admin-entry:hover,
html.navi-dark body .navi-search-toggle:hover { background: rgba(148, 163, 184, 0.18) !important; border-radius: 50% !important; }
/* v76 备注:.navi-footer 之前一直被上面那条 `body > div > div` 命中,
被设成 flex-direction:column + overflow:hidden —— 于是页脚 5 个子项竖排
(y 694/715/736/757/778),一言被排到视口外。
v71 的 row 规则本可压过它(0,4,2 > 0,2,4),但 v74 为修菜单加的
3 个 :not() 把该规则抬到 (0,5,4),反过来压过了页脚规则。
故本版把页脚 host/footer 一并排除出该规则(它们本就是固定定位,不参与压缩链)。 */