0% found this document useful (0 votes)
75 views

Midterm Notes

CSS is used to style and lay out HTML elements. There are three ways to add CSS - inline with the style attribute, internally with the <style> tag, or externally with a .css file. CSS can control things like colors, fonts, layout, and allows consistent styling across multiple pages by changing one CSS file.

Uploaded by

Neil Basabe
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views

Midterm Notes

CSS is used to style and lay out HTML elements. There are three ways to add CSS - inline with the style attribute, internally with the <style> tag, or externally with a .css file. CSS can control things like colors, fonts, layout, and allows consistent styling across multiple pages by changing one CSS file.

Uploaded by

Neil Basabe
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 51

Styling HTML with CSS

CSS stands for Cascading Style Sheets.

CSS describes how HTML elements are to be displayed on screen, paper, or in other


media.

CSS saves a lot of work. It can control the layout of multiple web pages all at once.

CSS can be added to HTML elements in 3 ways:

 Inline - by using the style attribute in HTML elements


 Internal - by using a <style> element in the <head> section
 External - by using an external CSS file

Inline CSS
An inline CSS is used to apply a unique style to a single HTML element.

An inline CSS uses the style attribute of an HTML element.

Example
<h1 style="color:blue;">This is a Blue Heading</h1>

Internal CSS
An internal CSS is used to define a style for a single HTML page.

An internal CSS is defined in the <head> section of an HTML page, within


a <style> element:

Example
<!DOCTYPE html>
<html>
<head>
<style>
body {background-color: powderblue;}
h1   {color: blue;}
p    {color: red;}
</style>
</head>
<body>
<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

External CSS
An external style sheet is used to define the style for many HTML pages.

With an external style sheet, you can change the look of an entire
web site, by changing one file!

To use an external style sheet, add a link to it in the <head> section of the HTML page:

Example

<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="styles.css">
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

Here is how the "styles.css" looks:


body {
    background-color: powderblue;
}
h1 {
    color: blue;
}
p {
    color: red;
}

CSS Fonts
The CSS color property defines the text color to be used.

The CSS font-family property defines the font to be used.

The CSS font-size property defines the text size to be used.

Example

<!DOCTYPE html>
<html>
<head>
<style>
h1 {
    color: blue;
    font-family: verdana;
    font-size: 300%;
}
p  {
    color: red;
    font-family: courier;
    font-size: 160%;
}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>

Ordered HTML List - The Type Attribute

The type attribute of the <ol> tag, defines the type of the list item marker:

Type Description

type="1" The list items will be numbered with numbers (default)


type="A" The list items will be numbered with uppercase letters

type="a" The list items will be numbered with lowercase letters

type="I" The list items will be numbered with uppercase roman numbers

type="i" The list items will be numbered with lowercase roman numbers

HTML Description Lists


HTML also supports description lists.

A description list is a list of terms, with a description of each term.

The <dl> tag defines the description list, the <dt> tag defines the term (name), and
the <dd> tag describes each term:

Example:

<dl>
  <dt>Coffee</dt>
  <dd>- black hot drink</dd>
  <dt>Milk</dt>
  <dd>- white cold drink</dd>
</dl>
Try it Yourself »

Control List Counting


By default, an ordered list will start counting from 1. If you want to start counting from a
specified number, you can use the start attribute:

<ol start="50">
  <li>Coffee</li>
  <li>Tea</li>
  <li>Milk</li>
</ol>

Horizontal List with CSS


<!DOCTYPE html>
<html>
<head>
<style>
ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333333;
}

li {
    float: left;
}

li a {
    display: block;
    color: white;
    text-align: center;
    padding: 16px;
    text-decoration: none;
}

li a:hover {
    background-color: #111111;
}
</style>
</head>
<body>

<ul>
  <li><a href="#home">Home</a></li>
  <li><a href="#news">News</a></li>
  <li><a href="#contact">Contact</a></li>
  <li><a href="#about">About</a></li>
</ul>

</body>
</html>

Block-level Elements
A block-level element always starts on a new line and takes up the full width
available (stretches out to the left and right as far as it can).
<address> <dl> <h1>-<h6> <ol>
<article> <dt> <header> <output>
<aside> <fieldset> <hr> <p>
<blockquote> <figcaption> <li> <pre>
<canvas> <figure> <main> <section>
<dd> <footer> <nav> <table>
<div> <form> <noscript> <tfoot>
<ul> <video>

Inline Elements
An inline element does not start on a new line and only takes up as much width as
necessary.

<a> <cite> <label> <span>


<abbr> <code> <map> <strong>
<acronym> <dfn> <object> <sub>
<b> <em> <q> <sup>
<bdo> <i> <samp> <textarea>
<big> <img> <script> <time>
<br> <input> <select> <tt>
<button> <kbd> <small> <var>

The <div> Element


The <div> element is often used as a container for other HTML elements.

The <div> element has no required attributes, but style, class and id are common.

When used together with CSS, the <div> element can be used to style blocks of content:

Example:

<div style="background-color:black;color:white;padding:20px;">
  <h2>London</h2>
  <p>London is the capital city of England. It is the most populous city in
the United Kingdom, with a metropolitan area of over 13 million
inhabitants.</p>
</div>
The <span> Element
The <span> element is often used as a container for some text.

The <span> element has no required attributes, but style, class and id are common.

When used together with CSS, the <span> element can be used to style parts of the text:

<h1>My <span style="color:red">Important</span> Heading</h1>

Using the class Attribute


The class attribute specifies one or more class names for an HTML element.

The class name can be used by CSS and JavaScript to perform certain tasks for elements
with the specified class name.

In CSS, to select elements with a specific class, write a period (.) character, followed by the
name of the class:

Example:
<style>
.city {
    background-color: tomato;
    color: white;
    padding: 10px;

</style>

<h2 class="city">London</h2>
<p>London is the capital of England.</p>

<h2 class="city">Paris</h2>
<p>Paris is the capital of France.</p>

<h2 class="city">Tokyo</h2>
<p>Tokyo is the capital of Japan.</p>

Multiple Classes
HTML elements can have more than one class name, each class name must be separated by
a space.
Example
Style elements with the class name "city", also style elements with the class name "main":

<h2 class="city main">London</h2>
<h2 class="city">Paris</h2>
<h2 class="city">Tokyo</h2>

Using he id Attribute
The id attribute specifies a unique id for an HTML element (the value must be unique within
the HTML document).

The id value can be used by CSS and JavaScript to perform certain tasks for a unique
element with the specified id value.

In CSS, to select an element with a specific id, write a hash (#) character, followed by the
id of the element:

Example
Use CSS to style an element with the id "myHeader":

<style>
#myHeader {
    background-color: lightblue;
    color: black;
    padding: 40px;
    text-align: center;

</style>

<h1 id="myHeader">My Header</h1>

Difference Between Class and ID


An HTML element can only have one unique id that belongs to that single element, while a
class name can be used by multiple elements:

HTML Entities
Some characters are reserved in HTML.
If you use the less than (<) or greater than (>) signs in your text, the browser might mix
them with tags.

Character entities are used to display reserved characters in HTML.

A character entity looks like this:

&entity_name;

OR

&#entity_number;

Non-breaking Space
A common character entity used in HTML is the non-breaking space: &nbsp;

A non-breaking space is a space that will not break into a new line.

Two words separated by a non-breaking space will stick together (not break into a new
line). This is handy when breaking the words might be disruptive.

Examples:

 § 10
 10 km/h
 10 PM

 Another common use of the non-breaking space is to prevent browsers from


truncating spaces in HTML pages.

 If you write 10 spaces in your text, the browser will remove 9 of them. To add real
spaces to your text, you can use the &nbsp; character entity.
Combining Diacritical Marks
A diacritical mark is a "glyph" added to a letter.

Some diacritical marks, like grave (  ̀) and acute (  ́) are called accents.

Diacritical marks can appear both above and below a letter, inside a letter, and between two
letters.

Diacritical marks can be used in combination with alphanumeric characters to produce a


character that is not present in the character set (encoding) used in the page.

Here are some examples:


HTML Symbol Entities
HTML entities were described in the previous chapter.

Many mathematical, technical, and currency symbols, are not present on a normal
keyboard.

To add such symbols to an HTML page, you can use an HTML entity name.

If no entity name exists, you can use an entity number, a decimal, or hexadecimal
reference.
HTML5 Video
To show a video in HTML, use the <video> element:

<video width="320" height="240" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>

How it Works
The controls attribute adds video controls, like play, pause, and volume.

It is a good idea to always include width and height attributes. If height and


width are not set, the page might flicker while the video loads.

The <source> element allows you to specify alternative video files which the


browser may choose from. The browser will use the first recognized format.

The text between the <video> and </video> tags will only be displayed in


browsers that do not support the <video> element.

How it Works
The controls attribute adds video controls, like play, pause, and volume.

It is a good idea to always include width and height attributes. If height and


width are not set, the page might flicker while the video loads.

The <source> element allows you to specify alternative video files which the


browser may choose from. The browser will use the first recognized format.

The text between the <video> and </video> tags will only be displayed in


browsers that do not support the <video> element.
HTML Video - Browser Support
In HTML5, there are 3 supported video formats: MP4, WebM, and Ogg.

The browser support for the different formats is:


HTML Forms
The <form> Element
The HTML <form> element defines a form that is used to collect user input:

An HTML form contains form elements.

Form elements are different types of input elements, like text fields,
checkboxes, radio buttons, submit buttons, and more.

The <input> Element


The <input> element is the most important form element.

The <input> element can be displayed in several ways, depending on


the type attribute.

Here are some examples:

Text Input
<input type="text"> defines a one-line input field for text input:
Example

<form>
  First name:<br>
  <input type="text" name="firstname"><br>
  Last name:<br>
  <input type="text" name="lastname">
</form>

Radio Button Input


<input type="radio"> defines a radio button.

Radio buttons let a user select ONE of a limited number of choices:

Example

<form>
  <input type="radio" name="gender" value="male" checked> Male<br>
  <input type="radio" name="gender" value="female"> Female<br>
  <input type="radio" name="gender" value="other"> Other
</form>
The Submit Button
<input type="submit"> defines a button for submitting the form data to
a form-handler.

The form-handler is typically a server page with a script for processing input
data.

The form-handler is specified in the form's action attribute:

Example

<form action="/action_page.php">
  First name:<br>
  <input type="text" name="firstname" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
</form>

The Action Attribute


The action attribute defines the action to be performed when the form is
submitted.

Normally, the form data is sent to a web page on the server when the user
clicks on the submit button.
In the example above, the form data is sent to a page on the server called
"/action_page.php". This page contains a server-side script that handles the
form data:

<form action="/action_page.php">

If the action attribute is omitted, the action is set to the current page.

The Target Attribute


The target attribute specifies if the submitted result will open in a new browser
tab, a frame, or in the current window.

The default value is "_self" which means the form will be submitted in the
current window.

To make the form result open in a new browser tab, use the value "_blank":

Example

<form action="/action_page.php" target="_blank">

The Method Attribute


The method attribute specifies the HTTP method (GET or POST) to be used
when submitting the form data:

Example

<form action="/action_page.php" method="get">

Example

<form action="/action_page.php" method="post">
When to Use GET?
The default method when submitting form data is GET.

However, when GET is used, the submitted form data will be visible in the
page address field:

/action_page.php?firstname=Mickey&lastname=Mouse

Notes on GET:

 Appends form-data into the URL in name/value pairs


 The length of a URL is limited (about 3000 characters)
 Never use GET to send sensitive data! (will be visible in the URL)
 Useful for form submissions where a user wants to bookmark the result
 GET is better for non-secure data, like query strings in Google

When to Use POST?


Always use POST if the form data contains sensitive or personal information.
The POST method does not display the submitted form data in the page address
field.

Notes on POST:

 POST has no size limitations, and can be used to send large amounts of
data.
 Form submissions with POST cannot be bookmarked

The Name Attribute


Each input field must have a name attribute to be submitted.

If the name attribute is omitted, the data of that input field will not be sent at
all.

This example will only submit the "Last name" input field:
Example

<form action="/action_page.php">
  First name:<br>
  <input type="text" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
</form>

Grouping Form Data with <fieldset>


The <fieldset> element is used to group related data in a form.

The <legend> element defines a caption for the <fieldset> element.

Example

<form action="/action_page.php">
  <fieldset>
    <legend>Personal information:</legend>
    First name:<br>
    <input type="text" name="firstname" value="Mickey"><br>
    Last name:<br>
    <input type="text" name="lastname" value="Mouse"><br><br>
    <input type="submit" value="Submit">
  </fieldset>
</form>
HTML Form Elements
The <input> Element
The most important form element is the <input> element.

The <input> element can be displayed in several ways, depending on


the type attribute.
Example

<input name="firstname" type="text">

The <select> Element


The <select> element defines a drop-down list:

Example

<select name="cars">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="fiat">Fiat</option>
  <option value="audi">Audi</option>
</select>

The <option> elements defines an option that can be selected.

By default, the first item in the drop-down list is selected.

To define a pre-selected option, add the selected attribute to the option:

Example

<option value="fiat" selected>Fiat</option>
Visible Values:
Use the size attribute to specify the number of visible values:

Example

<select name="cars" size="3">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="fiat">Fiat</option>
  <option value="audi">Audi</option>
</select>

Allow Multiple Selections:


Use the multiple attribute to allow the user to select more than one value:

Example

<select name="cars" size="4" multiple>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="fiat">Fiat</option>
  <option value="audi">Audi</option>
</select>

The <textarea> Element


The <textarea> element defines a multi-line input field (a text area):

Example

<textarea name="message" rows="10" cols="30">
The cat was playing in the garden.
</textarea>
The rows attribute specifies the visible number of lines in a text area.

The cols attribute specifies the visible width of a text area.

This is how the HTML code above will be displayed in a browser:

You can also define the size of the text area by using CSS:

Example

<textarea name="message" style="width:200px; height:600px">
The cat was playing in the garden.
</textarea>

The <button> Element


The <button> element defines a clickable button:

Example

<button type="button" onclick="alert('Hello World!')">Click Me!</button>


Note: Always specify the type attribute for the button element. Different
browsers may use different default types for the button element.

HTML5 Form Elements


HTML5 added the following form elements:

 <datalist>
 <output>

Note: Browsers do not display unknown elements. New elements that are not
supported in older browsers will not "destroy" your web page.

HTML5 <datalist> Element


The <datalist> element specifies a list of pre-defined options for
an <input> element.

Users will see a drop-down list of the pre-defined options as they input data.

The list attribute of the <input> element, must refer to the id attribute of


the <datalist> element.

Example

<form action="/action_page.php">
  <input list="browsers">
  <datalist id="browsers">
    <option value="Internet Explorer">
    <option value="Firefox">
    <option value="Chrome">
    <option value="Opera">
    <option value="Safari">
  </datalist> 
</form>

HTML5 <output> Element


The <output> element represents the result of a calculation (like one performed
by a script).

Example
Perform a calculation and show the result in an <output> element:

<form action="/action_page.php"
  oninput="x.value=parseInt(a.value)+parseInt(b.value)">
  0
  <input type="range"  id="a" name="a" value="50">
  100 +
  <input type="number" id="b" name="b" value="50">
  =
  <output name="x" for="a b"></output>
  <br><br>
  <input type="submit">
</form>
HTML Input Types
Input Type Password
<input type="password"> defines a password field:

Example

<form>
  User name:<br>
  <input type="text" name="username"><br>
  User password:<br>
  <input type="password" name="psw">
</form>

Input Type Submit


<input type="submit"> defines a button for submitting form data to a form-
handler.

The form-handler is typically a server page with a script for processing input
data.

The form-handler is specified in the form's action attribute:


Example

<form action="/action_page.php">
  First name:<br>
  <input type="text" name="firstname" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
</form>

Input Type Reset


<input type="reset"> defines a reset button that will reset all form values to
their default values:

Example

<form action="/action_page.php">
  First name:<br>
  <input type="text" name="firstname" value="Mickey"><br>
  Last name:<br>
  <input type="text" name="lastname" value="Mouse"><br><br>
  <input type="submit" value="Submit">
  <input type="reset">
</form>
Input Type Radio
<input type="radio"> defines a radio button.

Radio buttons let a user select ONLY ONE of a limited number of choices:

Example

<form>
  <input type="radio" name="gender" value="male" checked> Male<br>
  <input type="radio" name="gender" value="female"> Female<br>
  <input type="radio" name="gender" value="other"> Other
</form>

Input Type Checkbox


<input type="checkbox"> defines a checkbox.

Checkboxes let a user select ZERO or MORE options of a limited number of


choices.

Example

<form>
  <input type="checkbox" name="vehicle1" value="Bike"> I have a bike<br>
  <input type="checkbox" name="vehicle2" value="Car"> I have a car 
</form>

Input Type Button


<input type="button"> defines a button:
Example

<input type="button" onclick="alert('Hello World!')" value="Click Me!">

HTML5 Input Types


HTML5 added several new input types:

 color
 date
 datetime-local
 email
 month
 number
 range
 search
 tel
 time
 url
 week

New input types that are not supported by older web browsers, will behave
as <input type="text">.

Input Type Color


The <input type="color"> is used for input fields that should contain a color.

Depending on browser support, a color picker can show up in the input field.

Example

<form>
  Select your favorite color:
  <input type="color" name="favcolor">
</form>
Input Type Date
The <input type="date"> is used for input fields that should contain a date.

Depending on browser support, a date picker can show up in the input field.

Example

<form>
  Birthday:
  <input type="date" name="bday">
</form>
You can also use the min and max attributes to add restrictions to dates:

Example

<form>
  Enter a date before 1980-01-01:
  <input type="date" name="bday" max="1979-12-31"><br>
  Enter a date after 2000-01-01:
  <input type="date" name="bday" min="2000-01-02"><br>
</form>

Input Type Datetime-local


The <input type="datetime-local"> specifies a date and time input field, with
no time zone.

Depending on browser support, a date picker can show up in the input field.
Example

<form>
  Birthday (date and time):
  <input type="datetime-local" name="bdaytime">
</form>

Input Type Email


The <input type="email"> is used for input fields that should contain an e-
mail address.

Depending on browser support, the e-mail address can be automatically


validated when submitted.

Some smartphones recognize the email type, and adds ".com" to the keyboard
to match email input.

Example

<form>
  E-mail:
  <input type="email" name="email">
</form>

Input Type Email


The <input type="email"> is used for input fields that should contain an e-
mail address.

Depending on browser support, the e-mail address can be automatically


validated when submitted.

Some smartphones recognize the email type, and adds ".com" to the keyboard
to match email input.
Example

<form>
  E-mail:
  <input type="email" name="email">
</form>

Input Type Month


The <input type="month"> allows the user to select a month and year.

Depending on browser support, a date picker can show up in the input field.

Example

<form>
  Birthday (month and year):
  <input type="month" name="bdaymonth">
</form>

Input Type Number


The <input type="number"> defines a numeric input field.

You can also set restrictions on what numbers are accepted.

The following example displays a numeric input field, where you can enter a
value from 1 to 5:
Example

<form>
  Quantity (between 1 and 5):
  <input type="number" name="quantity" min="1" max="5">
</form>

The following example displays a numeric input field, where you can enter a
value from 0 to 100, in steps of 10. The default value is 30:

Example

<form>
  Quantity:
  <input type="number" name="points" min="0" max="100" step="10" value="30">
</form>

Input Type Range


The <input type="range"> defines a control for entering a number whose
exact value is not important (like a slider control). Default range is 0 to 100.
However, you can set restrictions on what numbers are accepted with
the min, max, and step attributes:

Example

<form>
  <input type="range" name="points" min="0" max="10">
</form>

Input Type Search


The <input type="search"> is used for search fields (a search field behaves
like a regular text field).

Example

<form>
  Search Google:
  <input type="search" name="googlesearch">
</form>

Input Type Tel


The <input type="tel"> is used for input fields that should contain a
telephone number.

Note: The tel type is currently only supported in Safari 8.


Example

<form>
  Telephone:
  <input type="tel" name="usrtel">
</form>

Input Type Time


The <input type="time"> allows the user to select a time (no time zone).

Depending on browser support, a time picker can show up in the input field.

Example

<form>
  Select a time:
  <input type="time" name="usr_time">
</form>

Input Type Url


The <input type="url"> is used for input fields that should contain a URL
address.

Depending on browser support, the url field can be automatically validated


when submitted.

Some smartphones recognize the url type, and adds ".com" to the keyboard to
match url input.

Example

<form>
  Add your homepage:
  <input type="url" name="homepage">
</form>
Input Type Week
The <input type="week"> allows the user to select a week and year.

Depending on browser support, a date picker can show up in the input field.

Example

<form>
  Select a week:
  <input type="week" name="week_year">
</form>

HTML Input Attributes
The value Attribute
The value attribute specifies the initial value for an input field:

Example

<form action="">
  First name:<br>
  <input type="text" name="firstname" value="John">
</form>

The readonly Attribute


The readonly attribute specifies that the input field is read only (cannot be
changed):

Example

<form action="">
  First name:<br>
  <input type="text" name="firstname" value="John" readonly>
</form>

The disabled Attribute


The disabled attribute specifies that the input field is disabled.

A disabled input field is unusable and un-clickable, and its value will not be sent
when submitting the form:

Example

<form action="">
  First name:<br>
  <input type="text" name="firstname" value="John" disabled>
</form>

The size Attribute


The size attribute specifies the size (in characters) for the input field:

Example

<form action="">
  First name:<br>
  <input type="text" name="firstname" value="John" size="40">
</form>

The maxlength Attribute


The maxlength attribute specifies the maximum allowed length for the input
field:
Example

<form action="">
  First name:<br>
  <input type="text" name="firstname" maxlength="10">
</form>

With a maxlength attribute, the input field will not accept more than the allowed
number of characters.

The maxlength attribute does not provide any feedback. If you want to alert the
user, you must write JavaScript code.

Note: Input restrictions are not foolproof, and JavaScript provides many ways
to add illegal input. To safely restrict input, it must be checked by the receiver
(the server) as well!

HTML5 Attributes
HTML5 added the following attributes for <input>:

 autocomplete
 autofocus
 form
 formaction
 formenctype
 formmethod
 formnovalidate
 formtarget
 height and width
 list
 min and max
 multiple
 pattern (regexp)
 placeholder
 required
 step

and the following attributes for <form>:

 autocomplete
 novalidate
The autocomplete Attribute
The autocomplete attribute specifies whether a form or input field should have
autocomplete on or off.

When autocomplete is on, the browser automatically completes the input values
based on values that the user has entered before.

Tip: It is possible to have autocomplete "on" for the form, and "off" for specific
input fields, or vice versa.

The autocomplete attribute works with <form> and the


following <input> types: text, search, url, tel, email, password, datepickers,
range, and color.

Example
An HTML form with autocomplete on (and off for one input field):

<form action="/action_page.php" autocomplete="on">
  First name:<input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  E-mail: <input type="email" name="email" autocomplete="off"><br>
  <input type="submit">
</form>

Tip: In some browsers you may need to activate the autocomplete function for
this to work.

The novalidate Attribute


The novalidate attribute is a <form> attribute.

When present, novalidate specifies that the form data should not be validated
when submitted.
Example
Indicates that the form is not to be validated on submit:

<form action="/action_page.php" novalidate>
  E-mail: <input type="email" name="user_email">
  <input type="submit">
</form>

The autofocus Attribute


The autofocus attribute specifies that the input field should automatically get
focus when the page loads.

Example
Let the "First name" input field automatically get focus when the page loads:

First name:<input type="text" name="fname" autofocus>

The form Attribute


The form attribute specifies one or more forms an <input> element belongs to.

Tip: To refer to more than one form, use a space-separated list of form ids.

Example
An input field located outside the HTML form (but still a part of the form):

<form action="/action_page.php" id="form1">
  First name: <input type="text" name="fname"><br>
  <input type="submit" value="Submit">
</form>

Last name: <input type="text" name="lname" form="form1">
The formaction Attribute
The formaction attribute specifies the URL of a file that will process the input
control when the form is submitted.

The formaction attribute overrides the action attribute of the <form> element.

The formaction attribute is used with type="submit" and type="image".

Example
An HTML form with two submit buttons, with different actions:

<form action="/action_page.php">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  <input type="submit" value="Submit"><br>
  <input type="submit" formaction="/action_page2.php"
  value="Submit as admin">
</form>

The formenctype Attribute


The formenctype attribute specifies how the form data should be encoded when
submitted (only for forms with method="post").

The formenctype attribute overrides the enctype attribute of


the <form> element.

The formenctype attribute is used with type="submit" and type="image".

Example
Send form-data that is default encoded (the first submit button), and encoded
as "multipart/form-data" (the second submit button):

<form action="/action_page_binary.asp" method="post">
  First name: <input type="text" name="fname"><br>
  <input type="submit" value="Submit">
  <input type="submit" formenctype="multipart/form-data"
  value="Submit as Multipart/form-data">
</form>

The formmethod Attribute


The formmethod attribute defines the HTTP method for sending form-data to the
action URL.

The formmethod attribute overrides the method attribute of


the <form> element.

The formmethod attribute can be used with type="submit" and type="image".

Example
The second submit button overrides the HTTP method of the form:

<form action="/action_page.php" method="get">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  <input type="submit" value="Submit">
  <input type="submit" formmethod="post" value="Submit using POST">
</form>

The formnovalidate Attribute


The formnovalidate attribute overrides the novalidate attribute of
the <form> element.

The formnovalidate attribute can be used with type="submit".

Example
A form with two submit buttons (with and without validation):

<form action="/action_page.php">
  E-mail: <input type="email" name="userid"><br>
  <input type="submit" value="Submit"><br>
  <input type="submit" formnovalidate value="Submit without validation">
</form>

The formtarget Attribute


The formtarget attribute specifies a name or a keyword that indicates where to
display the response that is received after submitting the form.

The formtarget attribute overrides the target attribute of the <form> element.

The formtarget attribute can be used with type="submit" and type="image".

Example
A form with two submit buttons, with different target windows:

<form action="/action_page.php">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  <input type="submit" value="Submit as normal">
  <input type="submit" formtarget="_blank"
  value="Submit to a new window">
</form>

The height and width Attributes


The height and width attributes specify the height and width of an <input
type="image"> element.

Always specify the size of images. If the browser does not know the size, the
page will flicker while images load.

Example
Define an image as the submit button, with height and width attributes:

<input type="image" src="img_submit.gif" alt="Submit" width="48" height="48">
The list Attribute
The list attribute refers to a <datalist> element that contains pre-defined
options for an <input> element.

Example
An <input> element with pre-defined values in a <datalist>:

<input list="browsers">

<datalist id="browsers">
  <option value="Internet Explorer">
  <option value="Firefox">
  <option value="Chrome">
  <option value="Opera">
  <option value="Safari">
</datalist>

The min and max Attributes


The min and max attributes specify the minimum and maximum values for
an <input> element.

The min and max attributes work with the following input types: number, range,


date, datetime-local, month, time and week.

Example
<input> elements with min and max values:

Enter a date before 1980-01-01:


<input type="date" name="bday" max="1979-12-31">

Enter a date after 2000-01-01:


<input type="date" name="bday" min="2000-01-02">

Quantity (between 1 and 5):


<input type="number" name="quantity" min="1" max="5">
The multiple Attribute
The multiple attribute specifies that the user is allowed to enter more than one
value in the <input> element.

The multiple attribute works with the following input types: email, and file.

Example
A file upload field that accepts multiple values:

Select images: <input type="file" name="img" multiple>

The pattern Attribute


The pattern attribute specifies a regular expression that the <input> element's
value is checked against.

The pattern attribute works with the following input types: text, search, url,
tel, email, and password.

Tip: Use the global title attribute to describe the pattern to help the user.

Tip: Learn more about regular expressions in our JavaScript tutorial.

Example
An input field that can contain only three letters (no numbers or special
characters):

Country code: <input type="text" name="country_code" pattern="[A-Za-z]
{3}" title="Three letter country code">

The placeholder Attribute


The placeholder attribute specifies a hint that describes the expected value of
an input field (a sample value or a short description of the format).
The hint is displayed in the input field before the user enters a value.

The placeholder attribute works with the following input types: text, search,


url, tel, email, and password.

Example
An input field with a placeholder text:

<input type="text" name="fname" placeholder="First name">

The required Attribute


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

The required attribute works with the following input types: text, search, url,
tel, email, password, date pickers, number, checkbox, radio, and file.

Example
A required input field:

Username: <input type="text" name="usrname" required>

The step Attribute


The step attribute specifies the legal number intervals for an <input> element.

Example: if step="3", legal numbers could be -3, 0, 3, 6, etc.

Tip: The step attribute can be used together with the max and min attributes to
create a range of legal values.

The step attribute works with the following input types: number, range, date,
datetime-local, month, time and week.
Example
An input field with a specified legal number intervals:

<input type="number" name="points" step="3">

You might also like