HTML Element Reference
This complete HTML element list organizes elements by their purpose, making it easier to learn which elements are used for document structure, text, lists, tables, forms, media, and other types of webpage content. Use the search box to find an element by name or description, or switch to the alphabetical view when you already know the element you are looking for.
Each element links to its complete reference page with syntax, attributes, examples, browser support, related elements, and other useful information. Obsolete elements are included in a separate section for understanding and maintaining older HTML, but they should not be used when creating new webpages.
Search HTML Elements
Enter an element name or a word describing what the element does. The list will automatically display matching elements.
No HTML elements found.
Document & Metadata
These elements define the HTML document itself and provide information, resources, and settings used by the browser.
<!doctype>Declares the HTML document type and enables standards mode.<html>Represents the root element of an HTML document.<head>Contains document metadata and links to supporting resources.<title>Defines the title of the document shown in the browser tab or window.<base>Specifies a base URL or default target for relative links in the document.<link>Defines a relationship between the document and an external resource.<meta>Provides metadata that cannot be represented by other metadata elements.<style>Contains CSS rules used to style the document.<body>Contains the main content displayed as part of the webpage.Page Structure & Sections
These elements organize a webpage into meaningful sections and identify the purpose of major areas of content.
<header>Represents introductory content or navigational information for a page or section.<footer>Represents footer information for a page or section.<main>Represents the dominant content of the document.<nav>Represents a section containing major navigation links.<section>Represents a thematic section of a document.<article>Represents self-contained content that can stand independently.<aside>Represents content indirectly related to the surrounding content.<address>Provides contact information for a person or organization associated with the content.<h1>Represents a level-one section heading.<h2>Represents a level-two section heading.<h3>Represents a level-three section heading.<h4>Represents a level-four section heading.<h5>Represents a level-five section heading.<h6>Represents a level-six section heading.<hgroup>Groups a heading with related secondary content such as a subtitle or tagline.<search>Represents a section containing search or filtering controls.Text & Content
These elements organize paragraphs, generic content, quotations, preformatted text, figures, and other common document content.
<p>Represents a paragraph of text.<div>Represents a generic block-level container for content.<span>Represents a generic inline container for phrasing content.<br>Creates a line break within text.<hr>Represents a thematic break between paragraph-level topics.<pre>Represents preformatted text in which whitespace is preserved.<blockquote>Represents a section of content quoted from another source.<figure>Represents self-contained content such as an image, diagram, example, or illustration.<figcaption>Provides a caption or legend for a figure.Text Semantics
These elements give meaning to words, phrases, quotations, code, emphasis, dates, variables, and other inline content.
<a>Creates a hyperlink to another resource or location.<abbr>Represents an abbreviation or acronym.<b>Draws attention to text without conveying additional importance.<bdi>Isolates text whose writing direction may differ from surrounding content.<bdo>Overrides the normal text direction.<cite>Represents the title of a creative work.<code>Represents a fragment of computer code.<data>Associates human-readable content with a machine-readable value.<dfn>Identifies a term being defined.<em>Represents text with stress emphasis.<i>Represents text in an alternate voice, mood, or conventional style.<kbd>Represents user input such as keyboard commands.<mark>Represents text highlighted because of its relevance.<q>Represents a short inline quotation.<s>Represents content that is no longer accurate or relevant.<samp>Represents sample output from a computer or program.<small>Represents side comments or small-print information.<strong>Represents content of strong importance, seriousness, or urgency.<sub>Represents subscript text.<sup>Represents superscript text.<time>Represents a date, time, or duration.<u>Represents text with a non-textual annotation.<var>Represents a variable in mathematics or programming.<wbr>Identifies an optional line-breaking opportunity within text.<del>Represents content that has been deleted from a document.<ins>Represents content that has been added to a document.Lists
These elements create ordered, unordered, description, and command-style lists.
<ul>Represents an unordered list of items.<ol>Represents an ordered list of items.<li>Represents an item within a list.<dl>Represents a list of name-and-value groups.<dt>Represents a name or term in a description list.<dd>Represents a description or value associated with a term.<menu>Represents a list of commands or items.Images & Media
These elements add images, audio, video, image maps, and supporting media resources to webpages.
<img>Embeds an image in the document.<picture>Provides multiple image sources for responsive or format-dependent images.<source>Specifies alternative media resources for picture, audio, or video.<audio>Embeds sound or other audio content.<video>Embeds video content.<track>Provides timed text such as subtitles, captions, or descriptions for media.<map>Defines an image map containing clickable areas.<area>Defines a clickable region within an image map.Embedded Content
These elements embed external documents, resources, graphics, drawing surfaces, and mathematical content.
<iframe>Embeds another HTML document within the current page.<embed>Embeds external content provided by another resource.<object>Embeds an external resource that can be treated as an image or nested browsing content.<canvas>Provides a drawing surface that can be rendered with scripting.<svg>Embeds scalable vector graphics within an HTML document.<math>Embeds mathematical notation using MathML.Tables
These elements create tables and define their captions, columns, rows, headers, and data cells.
<table>Represents tabular data arranged in rows and columns.<caption>Provides a title or caption for a table.<colgroup>Groups one or more columns within a table.<col>Represents one or more columns within a table column group.<thead>Groups the header rows of a table.<tbody>Groups the main body rows of a table.<tfoot>Groups the footer rows of a table.<tr>Represents a row of cells within a table.<th>Represents a header cell within a table.<td>Represents a data cell within a table.Forms & User Input
These elements create forms, input controls, selections, labels, groups, measurements, and form results.
<form>Represents a collection of controls for submitting user information.<label>Provides a caption for a form control.<input>Creates an interactive form control for entering or selecting data.<button>Represents a clickable button.<select>Provides a control for choosing from a list of options.<option>Represents an available choice within a selection control.<optgroup>Groups related options within a select element.<datalist>Provides suggested values for an input control.<textarea>Creates a multi-line text input control.<output>Represents the result of a calculation or user action.<progress>Displays the completion progress of a task.<meter>Represents a scalar measurement within a known range.<fieldset>Groups related controls within a form.<legend>Provides a caption for a fieldset.Interactive Elements
These elements create expandable content and dialog interfaces that users can interact with.
Ruby Annotations
These elements provide pronunciation and other annotations for East Asian text.
Scripting & Templates
These elements support scripting, reusable markup templates, and component content.
<script>Embeds or references executable script or data.<noscript>Provides alternate content when scripting is unavailable or disabled.<template>Stores HTML fragments that are not rendered until used by scripting.<slot>Defines a placeholder inside a web component for supplied content.Obsolete Elements
These elements appear in older HTML but are obsolete and must not be used when creating new webpages. They are included here to help you understand, maintain, and update legacy HTML.
<acronym>Obsolete — historically identified an acronym. Use <abbr> instead.<applet>Obsolete — historically embedded Java applets.<basefont>Obsolete — historically set default font properties. Use CSS instead.<bgsound>Obsolete — historically played background audio in Internet Explorer. Use <audio> instead.<big>Obsolete — historically displayed text in a larger font. Use CSS instead.<blink>Obsolete — historically caused text to blink on and off.<center>Obsolete — historically centered content horizontally. Use CSS instead.<dir>Obsolete — historically represented a directory list. Use <ul> instead.<font>Obsolete — historically controlled font face, size, and color. Use CSS instead.<frame>Obsolete — historically defined an individual frame within a frameset.<frameset>Obsolete — historically divided the browser window into separate frames.<isindex>Obsolete — historically created a single-line search or text-entry field. Use a form and input instead.<keygen>Obsolete — historically generated cryptographic key pairs for form submission.<listing>Obsolete — historically displayed preformatted text. Use <pre> instead.<marquee>Obsolete — historically scrolled text or other content across the page. Use CSS animation when appropriate.<menuitem>Obsolete — historically represented commands within menus.<multicol>Obsolete — historically created multi-column layouts in Netscape. Use CSS columns instead.<nextid>Obsolete — historically supplied identifier information to early HTML authoring tools.<nobr>Obsolete — historically prevented text from automatically wrapping. Use CSS instead.<noembed>Obsolete — historically provided fallback content for unsupported embedded content.<noframes>Obsolete — historically provided fallback content when frames were unavailable.<param>Obsolete — historically supplied parameters to embedded objects.<plaintext>Obsolete — historically caused the remainder of a document to be displayed as plain text.<rb>Obsolete — historically identified base text within a ruby annotation.<rtc>Obsolete — historically grouped additional ruby annotation text.<spacer>Obsolete — historically inserted empty space into webpage layouts. Use CSS instead.<strike>Obsolete — historically displayed text with a line through it. Use <s>, <del>, or CSS instead.<tt>Obsolete — historically displayed text in a monospace font. Use semantic HTML or CSS instead.<xmp>Obsolete — historically displayed markup as preformatted text. Use <pre> and <code> instead.HTML Elements A–Z
All HTML elements are shown alphabetically below. Obsolete elements remain clearly identified.
