Skip to content

fix(layout): group floating controls and clear the footer - #85

Merged
hakula139 merged 7 commits into
mainfrom
fix/compact-floating-controls
Sep 30, 2026
Merged

hakula139 merged 7 commits into
mainfrom
fix/compact-floating-controls

Conversation

@hakula139

@hakula139 hakula139 commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Render both page actions as native fragment links from one shared partial. The comments shortcut is available in one tap from the top of an article. Back-to-top appears after scrolling 100px on screens at least 640px wide and stays hidden on narrower screens.
  • Place the compact 40px phone / 44px larger-screen controls in a CSS sticky rail bounded by the main content, keeping them above the footer without scroll-driven position changes.
  • Fade controls in and out over 300ms using opacity and visibility while reserving their layout slots, so neither shifts when the other appears. Hidden controls become inert immediately, and reduced-motion preferences suppress the animation.
  • Use Tailwind named breakpoint variants consistently in authored CSS and keep shared control states before the back-to-top-specific rule.

Verification

  • pnpm build, pnpm format, pnpm lint, pnpm spellcheck, nix flake check, and git diff --check passed. Repeated stylesheet builds produced identical output.
  • The consuming site's build rendered 75 pages. Chromium checks at 390px, 640px, and 1440px confirmed unchanged control coordinates throughout hiding and reappearance, opacity fades, blocked focus and pointer interaction while inert, and narrow-screen back-to-top hiding.

Related PR

@hakula139 hakula139 added the bug Something isn't working label Sep 29, 2026
@hakula139 hakula139 self-assigned this Sep 29, 2026
@hakula139
hakula139 force-pushed the fix/compact-floating-controls branch from 2f1f4e9 to 769b74e Compare September 29, 2026 18:20
@hakula139
hakula139 force-pushed the fix/compact-floating-controls branch from 769b74e to 0d02a61 Compare September 29, 2026 21:21
@hakula139
hakula139 merged commit 790ee79 into main Sep 30, 2026
1 check passed
@hakula139
hakula139 deleted the fix/compact-floating-controls branch September 30, 2026 17:14
hakula139 added a commit to hakula139/hakula.xyz-kiln that referenced this pull request Sep 30, 2026
## Summary

- Pin merged IgnIt main `790ee79` and regenerate the site stylesheet for
the shared floating controls. The comments shortcut remains available on
phones, while back-to-top is hidden below 640px.
- Use native fragment links for both actions, restore entry and exit
fades, exclude hiding controls from keyboard interaction, and reserve
their layout slots so visibility changes do not shift either control.
CSS keeps the stack above the footer.
- Align the score table with Tailwind's `max-md` breakpoint while
retaining its screen-only scope. The desktop rule now starts at 768px.

## Verification

- `pnpm build`, `pnpm format`, `pnpm lint`, `pnpm spellcheck`, `nix
flake check`, and `git diff --check` passed. Repeated stylesheet builds
produced identical output.
- The site build rendered 75 pages. Chromium checks at 390px, 640px, and
1440px confirmed unchanged control coordinates throughout hiding and
reappearance, opacity fades, blocked focus and pointer interaction while
inert, and narrow-screen back-to-top hiding.

## Related PR

- [Theme implementation](hakula139/IgnIt#85)
hakula139 added a commit that referenced this pull request Sep 30, 2026
)

## Summary

- Keep article heading text aligned with body text. Below 1280px, the
heading is a section link that turns blue on hover or keyboard focus. At
desktop widths, it keeps its normal color and reveals the original `#`
marker on hover or focus.
- Use one native section link with a desktop-only CSS marker. Remove
heading link underlines, preserve the h2 divider, and wrap long
headings. Preserve inline formatting and existing authored links, and
leave callout and blockquote headings unchanged.
- Retain merged floating controls from #85 and native callouts from #86.

## Verification

- `pnpm build`, `pnpm format`, `pnpm lint`, `pnpm spellcheck`, `nix
flake check`, commit hooks, `git diff --check`, and CSS sync passed for
the theme. The consuming site passed the same checks and its minified
build rendered and indexed 75 pages after CSS generation.
- Managed headless Chromium checked the generated LR2 / BMS and FFT
articles at 320px, 390px, 768px, 1279px, 1280px, and 1440px in light and
dark themes. Heading text aligned with body text, section links stayed
inside the cards, and pages had no horizontal overflow. Default
typography, responsive hover / focus colors, no link underlines, desktop
marker visibility and containment, focus outlines, and Enter fragment
navigation passed.
- Long Chinese and unbroken Latin heading probes wrapped within the
card. Inline emphasis and code were preserved, authored links remained
intact without nested anchors, and repeated initialization did not
duplicate heading links.
- Browser checks used generated assets with external resources excluded.
Local Nix validation covered aarch64-darwin. Other browser engines and
Nix systems were not tested locally.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant