Input Components

Every HTML input type you'll ever need — text, email, password, date, range, file, select, checkbox, radio and more. Click to copy.

23 Components Pure HTML No JS Required

Basic Inputs

3 components
Text Input Essential

The most basic input — accepts any text value.

<input type="text" placeholder="Enter text">
Email Input Essential

Validates email format on submission automatically.

<input type="email" placeholder="you@example.com">
Password Input Popular

Masks characters as the user types for secure entry.

<input type="password" placeholder="••••••••">

Date & Time

2 components
Date Input Essential

Opens a native date picker in supported browsers.

<input type="date">
Time Input Essential

Opens a native time picker for hour/minute selection.

<input type="time">

Advanced Inputs

4 components
File Input Popular

Lets users browse and select files from their device.

<input type="file">
Range / Slider Trending

A draggable slider for picking a numeric value within a range.

<input type="range" min="0" max="100" value="60">
Number with Step Essential

Numeric input with a step attribute — increments by 0.5.

<input type="number" placeholder="0.0" step="0.5">
Color Picker Trending
Pick a color

Opens a native color picker — great for theme customization.

<input type="color" value="#eb6835">

Selection Inputs

4 components
Checkbox Essential

Used for multi-select boolean options.

<label><input type="checkbox"> Accept terms</label>
<label><input type="checkbox"> Subscribe</label>
Radio Input Essential

Used for single-choice selection from a group.

<label><input type="radio" name="opt"> Option 1</label>
<label><input type="radio" name="opt"> Option 2</label>
Textarea Popular

Multi-line text input for longer content like messages.

<textarea rows="4" placeholder="Enter message"></textarea>
Select Dropdown Popular

Dropdown for selecting one option from a list.

<select>
  <option>Select</option>
  <option>Option 1</option>
  <option>Option 2</option>
</select>

Specialized Inputs

5 components
Search Input Essential

A search field with a native clear button in supported browsers.

<input type="search" placeholder="Search the catalog">
URL Input Popular

Validates web addresses and helps users enter full links safely.

<input type="url" placeholder="https://example.com">
Telephone Input Essential

Optimized for phone number entry and mobile keypad support.

<input type="tel" placeholder="(555) 123-4567">
Datalist Input Trending

Combines a text input with suggested values in a native dropdown.

<input list="browser-list" placeholder="Choose a browser">
<datalist id="browser-list">
  <option value="Chrome">
  <option value="Firefox">
  <option value="Safari">
  <option value="Edge">
</datalist>
OTP Code Input Popular

A split code entry pattern used for verification and login flows.

<div class="otp-input-group">
  <input type="text" maxlength="1" inputmode="numeric">
  <input type="text" maxlength="1" inputmode="numeric">
  <input type="text" maxlength="1" inputmode="numeric">
  <input type="text" maxlength="1" inputmode="numeric">
</div>

Attribute Examples

5 components
Disabled Essential

A disabled input — cannot be interacted with or submitted.

<input type="text" placeholder="Disabled" disabled>
Readonly Essential

Readonly — visible and selectable but not editable.

<input type="text" value="Readonly value" readonly>
Required Popular

Blocks form submission if this field is left empty.

<input type="email" placeholder="Email" required>
Min / Max Length Essential

Restricts the character count between a min and max value.

<input type="text" minlength="3" maxlength="10">
Pattern Essential

Validates input against a regex pattern on submit.

<input type="text" pattern="[A-Z]+" placeholder="Uppercase only">