Skip to content

fix(mobile): uniform contest tile height in horizontal scroll row - #14540

Open
dylanjeffers wants to merge 2 commits into
mainfrom
fix/contest-tile-uniform-height
Open

fix(mobile): uniform contest tile height in horizontal scroll row#14540
dylanjeffers wants to merge 2 commits into
mainfrom
fix/contest-tile-uniform-height

Conversation

@dylanjeffers

Copy link
Copy Markdown
Contributor

Contest cards in the Explore carousel were different heights when a title wrapped to two lines vs one line, making the row look uneven. Fix: wrap the grid-variant title Text in a View with minHeight 64 (2 x lineHeight-xl = 2 x 32px for heading/m). Single-line titles now reserve space for a second line. Hero variant left unconstrained. Pure layout change, no data or API logic touched.

Cards with a one-line title were shorter than cards with a two-line
title, making explore/home carousels look uneven.

Fix: wrap the grid-variant title Text in a View with minHeight: 64
(2 × lineHeight-xl = 2 × 32px for heading/m). Single-line titles
now reserve space for a second line, so all tiles in a row share
the same height. The hero variant (full-width) is left unconstrained
since it is never shown beside another card.
@changeset-bot

changeset-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: ed8cecf

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

…rousel

ContestCardSkeleton was passed style={{ width: contestCardWidth }}, the
full slot width. CardList wraps each horizontal item in a View with
paddingRight: spacing(3) to create the gap between cards. Real
ContestCards have no explicit width so they stretch to fill the content
area (slot width minus padding), making the gap visible. The explicit
width on the skeleton overrode that stretching and caused it to bleed
into the adjacent slot, erasing the gap entirely.

Fix: remove the explicit width from the LoadingCardComponent; the
skeleton now fills its container the same way a real card does.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant