fix(web): keep the navbar stuck to the top — drop the body height cap on the sticky range
This commit is contained in:
@@ -42,7 +42,12 @@
|
||||
|
||||
* { box-sizing: border-box; }
|
||||
|
||||
html, body { height: 100%; }
|
||||
/* Phase 60 (owner confirmation 2026-08-31, TODO L3): body must NOT carry a
|
||||
fixed height — a sticky element's travel range is capped by its
|
||||
containing block, and `body { height: 100% }` pinned the box to one
|
||||
viewport, so the navbar un-pinned after ~1 viewport of scroll.
|
||||
`min-height: 100dvh` on body (below) is what stretches short pages. */
|
||||
html { height: 100%; }
|
||||
|
||||
/* The visible page background lives on <html> (the canvas). <body> must
|
||||
stay transparent and must NOT create a stacking context, or the
|
||||
@@ -202,9 +207,11 @@ html::after {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: 20;
|
||||
/* Phase 12: body is a definite-height flex column; without this the
|
||||
header shrinks (flex-shrink:1) to its content minimum on any page
|
||||
whose content overflows the viewport (e.g. Sources at ≤640px). */
|
||||
/* Phase 12 (reworded phase 60): body is a flex column that stretches
|
||||
to at least one viewport (min-height: 100dvh) and grows with its
|
||||
content; without this the header shrinks (flex-shrink:1) to its
|
||||
content minimum on any page whose content overflows the viewport
|
||||
(e.g. Sources at ≤640px). */
|
||||
flex-shrink: 0;
|
||||
}
|
||||
/* 2px brand→cyan gradient hairline under the sticky header (phase 08;
|
||||
|
||||
Reference in New Issue
Block a user