Skip to content

fix: keep footer at the bottom of the viewport on short pages - #40

Open
nyg wants to merge 1 commit into
debba:mainfrom
nyg:fix/footer-bottom
Open

nyg wants to merge 1 commit into
debba:mainfrom
nyg:fix/footer-bottom

Conversation

@nyg

@nyg nyg commented Sep 11, 2026

Copy link
Copy Markdown

Problem

When a view has little content (for example the Issues tab with filters that match nothing), the footer sits right under the content and leaves an empty band below it instead of reaching the bottom of the window.

.app-footer already has margin-top: auto, but that only pushes an element down inside a flex container. Its parent, #root, was a plain block, so the rule had no effect.

Fix

Make #root a full-height flex column in src/styles/base.css:

#root { display: flex; flex-direction: column; min-height: 100vh; }

The footer's existing margin-top: auto now pushes it to the bottom of the viewport on short pages. Long pages scroll as before, with the footer after the content. The sticky top bar and sidebar, board focus mode, and the auth screen are unaffected.

Testing

  • Checked in the running app on the Issues tab with a search that matches nothing, at 1600×1000: before the change the footer's bottom edge was at 556px; after, it is at 1000px.
  • npm run build passes.

Screenshots

Before
image

After
image

The footer already used margin-top: auto, but #root was a block container so the rule had no effect and the footer floated under short content. Making #root a full-height flex column lets the footer sit at the bottom of the viewport.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant