target maintenance content independently of decorative icons

This commit is contained in:
cieanyau committed 2026-11-07 02:29:10 +08:00
1 parent 15a44b7314
commit 70dbd0daf6
3 files changed
+5 -5

No files matched your search

+1 -1
View File
@@ -41,7 +41,7 @@
background: var(--p-yellow-100); background: var(--p-yellow-100);
color: var(--p-yellow-900); color: var(--p-yellow-900);
} }
.deni-layout .maintenance-banner > span { .deni-layout .maintenance-message {
min-width: 0; min-width: 0;
overflow-wrap: anywhere; overflow-wrap: anywhere;
} }
+1 -1
View File
@@ -430,7 +430,7 @@ useHead(() => ({
class="maintenance-banner" class="maintenance-banner"
> >
<Icon name="lucide:triangle-alert" aria-hidden="true" /> <Icon name="lucide:triangle-alert" aria-hidden="true" />
<span>{{ <span class="maintenance-message">{{
site.config.value?.maintenance_mode_message || site.config.value?.maintenance_mode_message ||
"站点维护中,部分功能可能不可用。" "站点维护中,部分功能可能不可用。"
}}</span> }}</span>
+3 -3
View File
@@ -204,7 +204,7 @@ async function bannerGeometry(page) {
return page.locator(".maintenance-banner").evaluate((banner) => { return page.locator(".maintenance-banner").evaluate((banner) => {
const box = banner.getBoundingClientRect(), const box = banner.getBoundingClientRect(),
range = document.createRange(); range = document.createRange();
range.selectNodeContents(banner.querySelector("span")); range.selectNodeContents(banner.querySelector(".maintenance-message"));
const text = range.getBoundingClientRect(), const text = range.getBoundingClientRect(),
bar = document.querySelector(".topbar").getBoundingClientRect(); bar = document.querySelector(".topbar").getBoundingClientRect();
return { return {
@@ -250,7 +250,7 @@ test(
); );
sizes.push({ width, noticeFits: true, headerBelowNotice: true }); sizes.push({ width, noticeFits: true, headerBelowNotice: true });
} }
// 关闭控件按既有设计只在键盘焦点时显现,因此从键盘入口验证它不被维护条遮挡。 // 从键盘入口验证抽屉关闭控件不被维护条遮挡。
const open = page.getByRole("button", { name: "打开菜单", exact: true }); const open = page.getByRole("button", { name: "打开菜单", exact: true });
await open.focus(); await open.focus();
await page.keyboard.press("Enter"); await page.keyboard.press("Enter");
@@ -308,7 +308,7 @@ test(
const endReachable = await banner.evaluate((element) => { const endReachable = await banner.evaluate((element) => {
element.scrollTop = element.scrollHeight; element.scrollTop = element.scrollHeight;
const bounds = element.getBoundingClientRect(), const bounds = element.getBoundingClientRect(),
text = element.querySelector("span").firstChild, text = element.querySelector(".maintenance-message").firstChild,
end = document.createRange(); end = document.createRange();
end.setStart(text, text.length - 1); end.setStart(text, text.length - 1);
end.setEnd(text, text.length); end.setEnd(text, text.length);