<input>: The INPUT Element

Last updated: 2026-10-13

<input>The INPUT Element

The <input> element is the most common form control, creating various input fields. The type attribute switches between text, password, checkbox, radio, date pickers and more. It's a void element.

CategoryForms
Content ModelNone (void element)
Allowed ParentsAny element that accepts phrasing content, usually inside <form>
Content TagSelf-closing — no closing tag needed
StatusStandard

📝 Syntax

<input type="text" name="field-name" placeholder="placeholder text">

⚙️ Attributes

This element supports the global attributes plus the following:

AttributeValueDescription
typeKeywordThe type of the input, determines the control's form.
  • text — Single-line text field (default).
  • password — Password field, input masked.
  • checkbox — Checkbox, multiple selection.
  • radio — Radio button, one per group.
  • email — Email field with format validation.
  • number — Number field with stepper.
  • date — Date picker.
  • file — File picker.
  • submit — Submit button.
  • button — Plain button.
  • hidden — Hidden field, submitted with the form.
nameTextThe field name submitted with the form; groups radio buttons.
valueTextThe current or default value.
placeholderTextHint text shown when the field is empty.
requiredBooleanMarks the field as required.
disabledBooleanDisables the field; not submitted.
readonlyBooleanRead-only; visible but not editable.
maxlengthNumberMaximum number of characters.
checkedBooleanDefault checked state for checkbox/radio.

▶ Example

Edit the code below and see the live result in the playground:

🌐 Browser Support

Browser ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
<input> ✓ v1 ✓ v12 ✓ v1 ✓ v1 ✓ v1
Supported in all major browsers
Tip: Always set the name attribute, otherwise the field's value won't be submitted.

❓ FAQ

QWhat are the commonly used input types?
AText: text, password, email, url, tel, search; selection: checkbox, radio, file; numeric: number, range; date: date, time, datetime-local; plus hidden, color, submit, and more. Picking the right type brings the matching mobile keyboard and native validation.
QIs input a void element?
AYes — no end tag, no content; everything is configured through attributes (value, placeholder, required, etc.). This differs from <textarea>, which has an end tag and holds its initial value between the tags.
QCan a placeholder replace a label?
ANo. The placeholder disappears after typing and screen-reader support is spotty; relying on it as the only label harms accessibility. The <label> is the official input name; the placeholder only holds hint examples such as format samples.

📚 Related Tutorials

Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏