fix: stop page flashing — revert overflow-x:clip, fix sticky properly

overflow-x:clip on html+body caused a browser layout loop → continuous
flashing. Correct fix: only set overflow-x:hidden on html (the real
scroll container). Leaving body without overflow-x means body won't
become a secondary scroll container, so position:sticky on the navbar
works correctly without the layout loop.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
k
2026-05-27 16:20:47 +08:00
parent 8ab7c55288
commit 37c67d4acb
+5 -3
View File
@@ -2762,9 +2762,11 @@ html[data-theme="dark"] .ai-reasoning-card {
}
/* Global safety: no page-level horizontal scroll.
Use `overflow-x: clip` (not `hidden`) — `hidden` turns body into a scroll
container, which silently breaks `position: sticky` on the navbar. */
html, body { max-width: 100%; overflow-x: clip; }
Only set overflow-x on html (the real viewport scroll container).
Setting it on body would make body a secondary scroll container and
silently break `position: sticky` on the navbar. */
html { max-width: 100%; overflow-x: hidden; }
body { max-width: 100%; }
/* Misc utilities */
.stack { display: flex; flex-direction: column; }