Home/Blocks/Row card

Row card

A tap-anywhere row that opens a detail sheet. The mobile counterpart to a data-table row — one card per record, name and sub on the left, primary number on the right.

Stable .b-row-card Tap → sheet

Default

Name, sub, and a primary number. Tap opens a bottom sheet with the full record.

3 branch rows.b-row-card

With meta row

When the record carries a couple of secondary numbers, add a meta row of label / value pairs beneath the headline. Cap at 3 pairs — past that the row no longer reads at a glance.

Row with 3 meta pairs

Parts

PropertyValueNotes
padding12 × 14 px
radius11 pxSits between primitive (8) and hero card (14)
min height~64 px (incl. value)Comfortable thumb-tap on any phone
gap between rows8 px margin-bottomTight enough to scan, loose enough to tap
name600 14 / 1.3--text-strong
sub12 / 1.3--text-muted
value700 18 / 1, tabular-numsMono in dense surfaces, sans elsewhere
hover / active--surface-muted bg, --border-strong borderFeedback for the whole card; never just the title

Do & don't

Do

Make the whole card the tap target. The user shouldn't have to aim for the chevron.

Don't

Show a chevron on the right. The card affords tap by virtue of being a card; a chevron is visual noise.

Do

Surface the most-asked secondary number (delta, status) right under the headline value. Reading down the column should answer the operator's first question.

Don't

Cram inline actions (Edit / Delete) into the card. Open the detail sheet; put actions there.

Accessibility

  • Use a <button> (or <a> if it routes by URL) for the whole card so it's reachable by tab and announces as a single control.
  • The accessible name is the record name + value: aria-label="Park Centre, $ 2,816, +12.4%". Sub and meta read on focus via the visible text.
  • Hover and active states must also be focus-visible states. Operators on a hardware keyboard should see the same lift.