Complete List of Standard HTML5 Tags

= New in HTML5

<!DOCTYPE> is not a tag, but rather a declaration.  All HTML documents must start with a <!DOCTYPE> declaration.  In HTML5, the declaration is <!DOCTYPE html>.

Structural Tags

Tag Description
<a> Defines a hyperlink or an anchor.
<article> Defines self contained content like a blog post or forum post.
<aside> Defines some content loosely/indirectly related to the content surrounding it.
<body> Defines the document’s body.
<br> Inserts a single line break.
<details> Automatically creates a dropdown containing additional information or controls.
<div> Specifies a division or a section in an HTML document.
<h1> to <h6> Defines HTML headings.
<head> A container for metadata that is placed between the <html> and <body> tags.
<header> Contains introductory content, nav links, h1-h6, logo, author info, etc.
<hr> Produces a horizontal line.
<html> Defines the root of an HTML document.
<footer> Defines a footer for the section and/or document. Documents can have multiple footers.
<nav> The major block of navigation links. Typically only one nav block per document.
<p> Defines a paragraph.
<section> Divides the document into different sections such as header, chapters, footer etc.
<span> Defines an inline styleless section in a document.
<summary> The visible heading for the <details> element.

Metadata Tags

Tag Description
<base> Defines the base URL for all linked objects on a page.
<link> Defines the relationship between the current document and an external resource.
<meta> Provides structured metadata about the document content.
<style> Inserts style information (commonly CSS) into the head of a document.
<title> Defines a title for the document.

Form Tags

Tag Description
<button> Creates a clickable button.
<datalist> Represents a set of pre-defined options for an <input> element. Think autocomplete.
<fieldset> Groups related elements in a form and draws a box around them.
<form> Defines an HTML form for user input.
<input> Defines an input field where the user can enter data.
<keygen> Generates a public-private key pair and sends the public key to the server on form submission.
<label> Defines a label for an <input> control.
<legend> Defines a caption for a <fieldset> element.
<meter> Represents a scalar measurement within a known range. Not to be confused with the <progress> tag.
<optgroup> Defines a group of related options in a selection list.
<option> Defines an option in a selection list.
<select> Defines a selection list within a form.
<textarea> Defines a multi-line text input control (text area).

Formatting Tags

Tag Description
<abbr> Defines an abbreviated form of a longer word or phrase.
<acronym> Defines an acronym.
<address> Specifies the author’s contact information.
<b> Displays text in a bold style.
<bdi> Represents text that is isolated from its surrounding for the purposes of bidirectional text formatting.
<bdo> Overrides the current text direction.
<big> displays text in a large size.
<blockquote> Defines a long quotation.
<cite> Indicates a citation or reference to another source.
<code> Specifies text as computer code.
<del> Specifies a block of deleted text.
<dfn> Specifies a definition.
<em> Specifies emphasized text.
<i> Displays text in an italic style.
<ins> Defines a block of text that has been inserted into a document.
<kbd> Specifies text as keyboard input.
<mark> Highlights text.
<output> Represents the result of a calculation like that of a script.
<pre> Defines a block of preformatted text.
<progress> Represents the completion progress of a task. Always use the <label> tag with <progress>.
<q> Defines a short inline quotation.
<rp> Provides fall-back parenthesis for browsers that that don’t support ruby annotations. Use with <rt> and <ruby>.
<rt> Defines the pronunciation of character presented in a ruby annotations. Use with <rp> and <ruby>.
<ruby> Represents a ruby annotation. Use with <rp> and <rt>.
<samp> Specifies text as sample output from a computer program.
<small> Displays text in a smaller size.
<strong> Indicate strongly emphasized text.
<sub> Defines subscripted text.
<sup> Defines superscripted text.
<tt> Displays text in a teletype style.
<var> Defines a variable.
<wbr> Represents a line break opportunity. Tells the browser it’s ok to add a line break here.

List Tags

Tag Description
<dd> Specifies a definition for a term in a definition list.
<dl> Defines a definition list.
<dt> Defines a term (an item) in a definition list.
<li> Defines a list item.
<ol> Defines an ordered list.
<menu> Represents a list of commands.
<ul> Defines an unordered list.

Table Tags

Tag Description
<caption> Defines the title of a table.
<col> Defines attribute values for one or more columns in a table.
<colgroup> Specifies attributes for multiple columns in a table.
<table> Defines a data table.
<tbody> Groups a set of rows defining the main body of the table data.
<td> Defines a cell in a table.
<tfoot> Groups a set of rows summarizing the columns of the table.
<thead> Groups a set of rows that describes the column labels of a table.
<th> Defines a header cell in a table.
<tr> Defines a row of cells in a table.

Scripting Tags

Tag Description
<noscript> Defines alternative content to display when the browser doesn’t support scripting.
<script> Places script in the document for client-side processing.

Embedded Content Tags

Tag Description
<area> Defines a specific area within an image map.
<audio> Embeds a sound, or an audio stream in an HTML document. Need 1 or more <source> tags.  HTML supports MP3, WAV and OGG.
<canvas> Defines a region in the document, which can be used to draw graphics on the fly via scripting (usually JavaScript). Need a script to draw the graphics.
<embed> Embeds external resource, typically multimedia content like audio, video or plug-ins.
<figcaption> Defines a caption or legend for a figure.
<figure> Represents a figure illustrated as part of the document.  Include <img> and <figcaption> within this tag.
<frame> Defines a single frame within a frameset.
<frameset> Defines a collection of frames or other frameset.
<iframe> Displays a URL in an inline frame.
<img> Displays an inline image.
<map> Defines a client-side image-map.
<noframes> Defines an alternate content that displays in browsers that do not support frames.
<object> Defines an embedded object.
<param> Defines a parameter for an object or applet element.
<source> Define multiple media resources for the media elements like <audio> or <video> and let the browser choose the source it supports.
<time> Represents a human readable date/time.
<video> Embeds video content in an HTML document. Need 1 or more <source> tags.  HTML supports MP4, WebM and Ogg.


Leave a Reply