About this set
Four fields that are more than a line of text. Search is a pill-shaped type=search input with a magnifier drawn from two pseudo-elements, so no icon font or image is needed. Range is a restyled slider with a blue thumb on a slate track; an output element beside the label shows the current budget and the same text is set as aria-valuetext, so screen readers hear pounds rather than a bare number. File drop area stretches the real file input, made transparent, over a dashed panel, so clicking anywhere opens the file picker and files dropped on the panel land in the input natively; a short script lists the chosen file names and flags any over the 10MB hint. Number stepper pairs a type=number input with minus and plus buttons that call stepUp and stepDown, so min, max and step come from the input itself, and a polite live region announces the new seat count. The Bootstrap version uses .form-control, .form-range and an .input-group with two .btn elements; the drop panel is custom in all three versions because Bootstrap has no drop-zone component.
What’s included
- Search field with a CSS-drawn magnifier
- Range slider with a live value readout and aria-valuetext
- File drop panel that accepts both clicks and dropped files
- Number stepper that respects the input's min, max and step
- Bootstrap version uses .form-range and .input-group with .btn
Accessibility
Each field has a visible label. The range exposes its value in words through aria-valuetext, the file input's hint and chosen-file list are linked with aria-describedby, and the stepper buttons are labelled Remove a seat and Add a seat, with the result announced in a live region. The slider thumb shows a blue ring on keyboard focus, the drop panel a ring when its input is focused, and the stepper buttons a 2px outline. Transitions are removed under prefers-reduced-motion.
Customise it
In plain CSS change --f-focus (also the slider thumb), --f-track, --f-border and --f-radius on .f. In Bootstrap the same properties sit on .fx beside --bs-border-color, and the stepper buttons take --bs-btn-* variables; in Tailwind edit the bg-, border- and the [&::-webkit-slider-thumb] classes.






