HTML <input> Tag

Beginner’s Guide on Using the <input> Tag in HTML

You are going to need to collect some data from users if you will create a website to enhance interactivity. This is where <input> comes to play. A completely nice and easy way of creating input fields in your HTML. This tutorial will explain everything you need to know about <input>, starting from the very basics and delightful tips and tricks.


1. What the <input> Tag Is?

The <input> tag allows the creation of input fields on the webpage. It is a self-closing tag; that means it needs not to close with </input>. This is how simply it can be invoked:

<input type="text" name="username" placeholder="Enter your username">
  • type: This specifies the type of input field. It can be text, password, email, checkbox, radio, etc.
  • name: This is used to identify the input field when the form is submitted.
  • placeholder: It provides a hint or example text inside the input field.

2. Some Key Attributes of the <input> Tag

Along with a few other attributes, the <input> tag has some useful attributes that assist you in controlling the behavior of the input field. These include:

a. type – Input Type

This is the type of input field. It must not be empty; otherwise, the browser won’t know what kind of input to display!

Example:

<input type="text" name="username" placeholder="Enter your username">

b. name – Input Name

The name attribute is used to identify the input field when the form is submitted. It’s also used by JavaScript to access the input value.

Example:

<input type="text" name="username" placeholder="Enter your username">

c. placeholder – Input Hint

The placeholder attribute provides a hint or example text inside the input field. It’s also used by screen readers to describe the input field to visually impaired users.

Example:

<input type="text" name="username" placeholder="Enter your username">

d. value – Input Value

The value attribute specifies the initial value of the input field. It’s also used by JavaScript to access the input value.

Example:

<input type="text" name="username" placeholder="Enter your username" value="JohnDoe">

e. required – Input Required

The required attribute specifies that the input field must be filled out before submitting the form.

Example:

<input type="text" name="username" placeholder="Enter your username" required>

f. disabled – Input Disabled

The disabled attribute specifies that the input field is disabled and cannot be edited.

Example:

<input type="text" name="username" placeholder="Enter your username" disabled>

3. A Complete Example

Here’s how you might use the <input> tag in a real webpage:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>My Awesome Website</title>
</head>
<body>
    <h1>Welcome to My Website!</h1>
    <form>
        <label for="username">Username:</label>
        <input type="text" id="username" name="username" placeholder="Enter your username" required>
        <br>
        <label for="password">Password:</label>
        <input type="password" id="password" name="password" placeholder="Enter your password" required>
        <br>
        <input type="submit" value="Submit">
    </form>
</body>
</html>

4. Tips for Using the <input> Tag Like a Pro

  1. Always Add name Attribute: It’s not just good practice—it’s essential for form submission and JavaScript access.
  2. Use placeholder for Hints: It’s a nice way to provide extra information to the user.
  3. Specify type Attribute: This prevents the browser from displaying the wrong type of input field.
  4. Use required for Mandatory Fields: This ensures that the user fills out the required fields before submitting the form.
  5. Make Input Fields Accessible: Use label tags to describe the input fields for screen readers.

5. Common Mistakes to Avoid

  • Forgetting the name Attribute: This makes your form less accessible and can hurt your form submission.
  • Using Wrong type Attribute: Always specify the correct type of input field.
  • Not Setting placeholder: Without placeholder, the user might not know what to enter.
  • Using Inline Styles for Styling: Stick to CSS for styling instead.

6. Bonus: The <input> Tag for Advanced Scenarios

If you want to get fancy, you can use the <input> tag to create different types of input fields based on the user’s needs. This is called input types.

Example:

<input type="email" name="email" placeholder="Enter your email">
<input type="date" name="birthdate" placeholder="Enter your birthdate">
<input type="checkbox" name="subscribe" value="yes"> Subscribe to newsletter
<input type="radio" name="gender" value="male"> Male
<input type="radio" name="gender" value="female"> Female

7. Wrapping Up

The <input> tag is one of the easiest ways to create input fields on your website. By using its attributes wisely, you can make your site more interactive, accessible, and user-friendly. Whether you’re creating a simple form or a complex one, the <input> tag has got you covered.