<form>

Defines a form container that submits user input to a server.

Attribute Description
action Destination URL for form submission
method HTTP method: "get" (default) or "post"

<label>

Defines a text label for a form control, improves accessibility.

Attribute Description
for Binds to an input by id (optional if nested)
<label for="email">Email:</label>
<input type="email" id="email" name="email">

<input>

Single-line input field, type defined by type attribute.

type Purpose Example Code
text Single-line text (default) <input type="text" name="username" />
password Hidden characters <input type="password" name="pwd" />
email Email format validation <input type="email" name="email" />
number Numeric input <input type="number" name="age" />
checkbox Multiple selection <input type="checkbox" name="agree" />
radio Single choice per group <input type="radio" name="gender" value="M" />
file File upload <input type="file" name="avatar" />
date Date picker <input type="date" name="dob" />
range Slider control <input type="range" name="volume" />
submit Submit button <input type="submit" value="Submit" />
reset Reset all fields <input type="reset" value="Reset" />
hidden Hidden but submitted value <input type="hidden" name="token" value="abc123" />
tel Telephone number <input type="tel" name="phone" />

Common Attributes

<textarea>

Multi-line input field.

<textarea name="message" rows="4" cols="50" placeholder="Type here..."></textarea>
Attribute Description
rows, cols Size in lines/chars
placeholder Hint text

<button>

Clickable button, flexible alternative to <input type="submit">.

type Description
submit Submits the form (default)
reset Resets the form
button Custom behavior via JS