From bd538d7daffd6b1627975de2057be668c9129608 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 1 Aug 2026 11:04:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=94=A8=E6=88=B7/=E4=BD=9C=E8=80=85?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E5=A4=96=E5=B1=82=E5=8C=85=E8=A3=B9=E5=B1=82?= =?UTF-8?q?=E9=80=8F=E6=98=8E=E5=8C=96=E6=94=B9=E7=94=A8=20!important=20+?= =?UTF-8?q?=20:has()=20=E5=85=9C=E5=BA=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 上一版透明化规则无 !important,在暗色模式(html.dark .zib-widget 权重更高) 与首页/用户中心侧栏(homepage-fixed 后加载的同权重规则)中反被卡片绘制规则 覆盖,导致外层卡片重现。 - 透明化声明全部加 !important,确保胜过所有 .zib-widget 卡片绘制规则 - 新增 .zib-widget:has(.aksrt-user-card/.aksrt-author-card) 兜底, 无论包裹层类名/嵌套 .is-affix 与否都能命中 --- assets/css/frontend/widget-batch5.css | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/assets/css/frontend/widget-batch5.css b/assets/css/frontend/widget-batch5.css index a6e3a1ef..cdca0993 100644 --- a/assets/css/frontend/widget-batch5.css +++ b/assets/css/frontend/widget-batch5.css @@ -2,17 +2,23 @@ * Batch5: user card guest/login depth, main posts, term aggregation. */ -/* 用户卡/作者卡:外层 .zib-widget 包裹层不再画卡片,内层 .aksrt-*-card 是唯一卡片 */ +/* 用户卡/作者卡:外层 .zib-widget 包裹层永不作为卡片绘制, + 内层 .aksrt-user-card / .aksrt-author-card 是唯一卡片。 + - classname 钩子(.widget_aksrt_user_card / _author_card)命中侧栏 before_widget 包裹层; + - :has() 兜底:无论包裹层类名如何,只要它内部含一张 .aksrt-*-card 就透明化 + (用后代而非直接子选择器,因为开启吸顶时中间还隔着 .is-affix 包裹层); + - !important 确保胜过 widgets/part-1.css 的 `html.dark .zib-widget`(0-2-1)、 + homepage-fixed/base-3.css 的 `.aksrt-homepage__aside > .zib-widget` 等卡片绘制规则。 */ .zib-widget.widget_aksrt_user_card, .zib-widget.widget_aksrt_author_card, -.aksrt-homepage__aside > .zib-widget.widget_aksrt_user_card, -.aksrt-homepage__aside > .zib-widget.widget_aksrt_author_card { - background: none; - border: 0; - box-shadow: none; - padding: 0; +.zib-widget:has(.aksrt-user-card), +.zib-widget:has(.aksrt-author-card) { + background: none !important; + border: 0 !important; + box-shadow: none !important; + padding: 0 !important; + border-radius: 0 !important; margin-bottom: 20px; - border-radius: 0; } .aksrt-user-card {