HTML Tutorials

Overview

To expand on the basic HTML form, we can add text inputs, textarea inputs, checkboxes, and radio buttons to gather user information to be sent to a server for processing.

<form action="forms/processing.php">
    <!-- text and email inputs -->
    <label for="first_name">First name:</label>
    <input type="text" id="first_name" name="first_name">

    <label for="last_name">Last name:</label>
    <input type="text" id="last_name" name="last_name">

    <label for="email">Email:</label>
    <input type="email" id="email" name="email">


    <!-- radio inputs -->
    <input type="radio" id="html" name="languages" value="HTML">
    <label for="html">HTML</label>

    <input type="radio" id="css" name="languages" value="CSS">
    <label for="css">CSS</label>

    <input type="radio" id="javascript" name="languages" value="JavaScript">
    <label for="javascript">JavaScript</label>


    <!-- checkbox inputs-->
    <input type="checkbox" id="vehicle_1" name="vehicle_1" value="Bike">
    <label for="vehicle_1"> I have a Lamborghini</label>

    <input type="checkbox" id="vehicle_2" name="vehicle_2" value="Car">
    <label for="vehicle_2"> I have a Ferrari</label>

    <input type="checkbox" id="vehicle_3" name="vehicle_3" value="Boat">
    <label for="vehicle_3"> I have a Maserati</label>


    <!-- dropdown input -->
    <label for="cars">Choose a car:</label>
    <select id="cars" name="cars">
        <option value="lamborghini">Lamborghini</option>
        <option value="ferrari">Ferrari</option>
        <option value="maserati" selected>Maserati</option>
    </select>


    <!-- textarea input -->
    <textarea name="message" rows="10" cols="30"></textarea>


    <input type="submit" value="Submit">
</form>

The code above would give us the unformatted form below.

















After the text and email inputs we have a set of radio button inputs. Radio buttons only allow for one selection out of multiple choices. Just like the text and email inputs, each of the radio inputs has a corresponding label  that uses the name attribute to refer to the #id of the input it belongs to.

Additionally, each radio input has a value attribute with the information that is to be passed when the form is submitted.

<!-- radio inputs -->
<input type="radio" id="html" name="languages" value="HTML">
<label for="html">HTML</label>

<input type="radio" id="css" name="languages" value="CSS">
<label for="css">CSS</label>

<input type="radio" id="javascript" name="languages" value="JavaScript">
<label for="javascript">JavaScript</label>

Next we have a set of HTML checkboxes which allow the user to select zero or more options from a number of choices. Again, each checkbox input has a corresponding label, and like the radio button has a value that will be send with the rest of the form data.

<!-- checkbox inputs-->
<input type="checkbox" id="vehicle_1" name="vehicle_1" value="Bike">
<label for="vehicle_1"> I have a Lamborghini</label>

<input type="checkbox" id="vehicle_2" name="vehicle_2" value="Car">
<label for="vehicle_2"> I have a Ferrari</label>

<input type="checkbox" id="vehicle_3" name="vehicle_3" value="Boat">
<label for="vehicle_3"> I have a Maserati</label>

Next we have a dropdown list (select element) from which the user can make one or more selections. The label for the select applies to the entire dropdown. By default, the first item in the drop-down list is selected, but in the following we have the “Maserati” preselected for the user by using the selected attribute (it has no value; by just appearing it “selects” that option item).

Each option within the <select> element has a value attached which is what is sent when the form is submitted.

<!-- dropdown input -->
<label for="cars">Choose a car:</label>
<select id="cars" name="cars">
    <option value="lamborghini">Lamborghini</option>
    <option value="ferrari">Ferrari</option>
    <option value="maserati" selected>Maserati</option>
</select>

Finally, we have a textarea input which is a text box where the user can write a message to be sent when the form is submitted. The rows and cols attributes specify how big the form should appear on the page (ten rows in height and 30 columns in width).

<!-- textarea input -->
<textarea name="message" rows="10" cols="30"></textarea>

Attributes

The following attributes can be used within the <form> tag.

The following attributes can be used within the <input> tags.

The following attributes can be used within the <select> tag.

The following attributes can be used within the <textarea> tag.


HTML Notes:

  • In our HTML section the term “tag” and “element” are often used interchangeably to refer to both the tag used to create a page element and the element created by the tag (<p> tag = <p> element = paragraph on the page)
  • HTML5 is not case sensitive; so <P> is the same as <p>, <H1> is the same as <h1>
  • Global attributes can be used with all HTML tags and are therefore not mentioned on every tag page
  • To write clean, readable HTML code, it is best to use indentation whereas elements within elements are indented (tabbed or spaces) to create something that looks like a project outline
  • The browser will automatically remove any extra spaces and lines in your HTML code when the page is displayed
  • Double quotes or single quotes can be used around HTML attribute values, but when the attribute value itself contains one form of quote, it will be necessary to use the other around the attribute

We’d like to acknowledge that we learned a great deal of our coding from W3Schools and TutorialsPoint, borrowing heavily from their teaching process and excellent code examples. We highly recommend both sites to deepen your experience, and further your coding journey. We’re just hitting the basics here at 1SMARTchicken.

Buy Me A Coffee