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

Modern Input Components

8 components
Floating Label Trending

Modern floating placeholder label effect.

Search With Icon Popular

Search bar with integrated icon.

Password Toggle Essential

Password field with visibility icon.

Currency Input Popular

Used for pricing and checkout forms.

Tag Input Trending
HTML ✕ CSS ✕

Useful for skills, labels and categories.

Star Rating Popular

Collect product and service ratings.

Phone + Country Essential

International phone number entry.

Autocomplete Search Trending

Displays search suggestions while typing.

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">