Data table — Inline editable record rows

Names and counts can be edited directly in a table with a save action for each row. Use for small datasets where opening a separate editor would slow the task.

1440 × 900

Open in new tab

Pattern notes

When to use
Use for a handful of short editable values. Choose a separate form for long text, several fields or destructive actions. Variations: swap count for a status select, add a total row, or make names read-only.
Hierarchy
The h1 leads to Name, Count and row actions. Each input and Save has a record-specific accessible label. Display names fit 20 characters and counts three digits. Heading up to 5 words, lede 14 and note 12.
Responsive
The table stays three columns down to 320px, with min-w-0 inputs filling their allotted cells. Count inputs use 4px horizontal padding below 640px and 12px above it so all three digits remain visible; actions use 8px horizontal padding. Heading grows at sm.
Layout
White section with a 1152px max-w-6xl container, 24px side gutters and 64px vertical padding, increasing to 96px at 640px. A fixed table starts 32px below the title. Name receives half the width, Count and Action one quarter each. Editable cells use 8px padding, 40px fields and a 44px outlined row action. A 24px-separated save note follows.
States
Inputs support native keyboard editing and numeric constraints. Row actions and fields have 2px keyboard-focus outlines. Each Save submits the chosen record value; persistence and row feedback need application integration.
Desktop wireframe
┌──────────────────────────────────────────────────────────────┐
│Edit record values                                            │
│Name                              Count        Action         │
│[Item label                    ]  [24       ]  [Save]         │
│[Entry label                   ]  [18       ]  [Save]         │
│[Record label                  ]  [12       ]  [Save]         │
│Row saving hint                                               │
└──────────────────────────────────────────────────────────────┘