redesign 05 — article page (TOC rail, cover plate, drop cap) #10
Loading…
Reference in a new issue
No description provided.
Delete branch "redesign/05-article-page"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Slice 5/9 of the selected redesign (base:
redesign/00-foundation, rebased just-in-time per the stack policy in #5). The article page — the reading experience.~/blog · 8 November 2024 · 5 min read(machine voice; 220 wpm), title as authored in Exo 2, mono tag row.rounded-xs, hairline, shadow). The full-width frontispiece was explicitly rejected (weak covers must not get big canvases).extract_headings()(the TOC contract: ids mirrorparse_markdownslugs exactly), IntersectionObserver scroll-spy,↑ topbutton on the rail. Renders only at 2xl+, right of the content in a reserved 30rem grid column — wide article images never slide under it (see layout fix below).print:hidden.prefers-reduced-motion(hidden + script skips),print:hidden.prefers-reduced-motion;scroll-margin-topon article headings;← ./blogfooter link.Preview: https://redesign-05-article-page.dev.michalvanko.dev — open any article; resize wide (≥1536px) for the TOC rail.
Fixes during review (2026-09-04)
<hr class="border-slate-300 my-5 md:my-8">separators between rows — same rhythm as the/and/bloglistings (rows previously merged into one visual block).redesign/00-foundation(includes the list-pages slice).Layout fix: article images vs the TOC rail (2026-09-04, review feedback)
Found by DOM measurement during review:
.article-body imgoverrode Tailwind preflight'smax-width:100%withlg:max-w-image(1120px) inside a 640px figure — pictures overflowed rightward only, sliding under the sticky TOC rail while scrolling, andmx-autocannot center an overflowing box, so they also sat off-center relative to their captions. The "rail can never overlap wide images" claim above did not hold in practice.Decisions:
max-w-image; the 2xl article grid became[gutter | 42rem content | 30rem rail]inside a 90rem container. The 256px gap between content column and rail absorbs the 224px overhang of a centered 1120px image — 44px clearance verified at both 1536px and 1720px viewports, no overlap at any 2xl width.figureis now a flex column withitems-center, so wide images overflow the text column symmetrically — centered on the content — and the figcaption sits centered under the picture.max-w-imageand clear the rail by the same geometry.max-w-imagecentered — same as before this fix.Verified during review (pixel + DOM): TOC id contract (extract_headings ↔ parse_markdown), reading time (220 wpm), overlap-ranked further reading, TOC rail at 2xl+ with scroll-spy, RM-gated progress hairline + smooth anchors, view-transition names preserved, drop cap + floated cover plate, image/rail clearance at 2xl–1720px with no horizontal scrollbar, layout unchanged below 2xl.
Review round 2: listing geometry unification (2026-09-07)
Live-reviewed against a local dev server, verified by DOM measurement at 1720px. One rule now holds everywhere a preview row appears (article header,
/blog, tag archives, further reading, homepage lead/featured/broadcasts): rows are content-width and centered; all text sits inside the 42rem reading measure.#tagsright on one baseline, big bold title below.post_date_/post_tags_view-transition names preserved.w-fit): thumbnail (180px) + gap + text capped atmax-w-read— 896px natural width instead of a stretched 1120px page-width row with dead space.max-w-read;#tagsend flush with the excerpt's right edge instead of flying to the container edge (mr-autoon the date keeps the left/right split inside the cap).w-fiton listing/further-readinguls —hrs go thumbnail-left-edge → text-right-edge, no full-bleed rules between articles.max-w-read; lead story, featured and broadcasts containers are content-width and centered (w-fit mx-auto) — featured/broadcast rows previously sat in a 42rem box that squeezed row text to ~448px; they now match/blogrows exactly.2xl:col-span-3instead of pinning to the content column — with the rail present, column-centering read as off-center).Also cleaned up a stray push to
redesign/04-list-pagesduring the session — branch restored, commit landed onredesign/05-article-pageonly.8c856f9c8f01fc6c719201fc6c7192ae1fb0a804ae1fb0a80499bccad1d999bccad1d97f4101bcd87f4101bcd8de77b53adbde77b53adbaaf4a4dd08WIP: redesign 05 — article page (TOC rail, cover plate, drop cap)to redesign 05 — article page (TOC rail, cover plate, drop cap)