Spinbutton
Spinbutton is the ARIA name for a control that picks one value from a set range. People can usually type a value or raise and lower it. A numeric stepper is one way it may look.
A real example
A lab worker sets a temperature to 37.5°C. Arrow Up adds 0.5, Page Up adds 5, and the value stops at the checked maximum of 45°C. Pasting invalid text shows an error instead of quietly changing it.
Main parts
- 01Editable value
- 02Increment controls
- 03Bounds and step
Use it when
Use it when people often adjust a value by set steps and also need to type the value. The value must have clear limits.
Do not use it when
Plus and minus buttons alone do not make a spinbutton. Avoid it for values with no limits, very long choice lists, or tasks where a normal input is clearer.
Name used in code
input[type=number] or role=spinbutton with valuemin/valuemax/valuenow Before you ship
Give each field a label that code can read. Link hints and errors, and keep entered values. Check autofill, keyboard order, validation timing, submit states, failure recovery, zoom, and languages.
Outcome: Use Spinbutton to solve this user need without losing the current context. User context: A lab worker sets a temperature to 37.5°C. Arrow Up adds 0.5, Page Up adds 5, and the value stops at the checked maximum of 45°C. Pasting invalid text shows an error instead of quietly changing it. Recommended pattern: Spinbutton. Why it fits: Use it when people often adjust a value by set steps and also need to type the value. The value must have clear limits. Do not use it when: Plus and minus buttons alone do not make a spinbutton. Avoid it for values with no limits, very long choice lists, or tasks where a normal input is clearer. Product requirements: Define the default, loading, empty, error, success, and recovery states. Keep user input. Give clear feedback after every action. Accessibility and resilience: Use semantic HTML, full keyboard access, and visible focus. Make the layout work when zoomed and support reduced motion. Follow the project’s current rules. Do not add a new UI library unless the project already uses it. Acceptance criteria: The main task works with keyboard only and at 320px width. Focus and status changes are announced. Check loading, failure, retry, cancel, and reduced-motion paths. Evidence and limits (evidence boundary): The standard covers only the listed scope. It does not choose the visual style, product decision, or Vibulary example. Unknowns to confirm: Product wording, data source, analytics events, supported devices and languages, and platform limits.
Check this request
Review the current use of Spinbutton. Definition: Spinbutton is the ARIA name for a control that picks one value from a set range. People can usually type a value or raise and lower it. A numeric stepper is one way it may look. Release checks: Give each field a label that code can read. Link hints and errors, and keep entered values. Check autofill, keyboard order, validation timing, submit states, failure recovery, zoom, and languages. Before changing code, report the evidence you found, gaps, severity, and the smallest safe fix.