๐๏ธ๐งฉ Ethan's HTML Element Reference
Here's every HTML element (and also every SVG and MathML element). Or at least 99.5% of them, though naturally custom things aren't included. You get to sort and filter them and look them up by different characteristics. I tried to be as accurate as I could; this is the same dataset that the HTML Element Analyzer uses, and after I had built that, I figured why not make a place where all the information is visible at once, too? I hope you find it useful.
<a> Text
Creates a hyperlink or hyperlink target.
Creates a hyperlink to another URL, a location within the current page, an email address, a telephone number, or another addressable resource. When it has an href attribute, it is one of the main ways users move between documents and locations on the web.
<abbr> Text
Represents an abbreviation or acronym.
Marks up an abbreviation or shortened form of a word or phrase. A title attribute can supply the expanded form when that information is useful, although it should not be treated as a substitute for clear surrounding text.
<acronym> Text
Represents an acronym.
Was used to mark an acronym or abbreviation and could pair the shortened text with an expanded form in the title attribute. Modern markup uses abbr for both acronyms and other abbreviations instead of maintaining a separate element.
<address> Sectioning
Provides contact information for a person, people, or organization.
Contains contact information for the author or owner of the nearest article or body. It is meant for contact details related to the surrounding document or article, not for arbitrary postal addresses appearing in ordinary prose.
<altGlyph> Graphics
Selected alternate glyph representations for SVG text.
<altGlyphDef> Graphics
Defined alternate glyph substitutions for SVG text.
<altGlyphItem> Graphics
Grouped candidate glyph references for alternate SVG text rendering.
<animate> Graphics
Animates an SVG attribute or property over time.
Is an SVG animation element that changes an attribute or presentation value over time. It is used inside SVG graphics rather than ordinary HTML flow content.
<animateColor> Graphics
Animated color values; superseded by the general animate element.
<animateMotion> Graphics
Moves an SVG element along a motion path.
Animates an SVG element along a motion path. The path can be supplied directly or referenced through an mpath element.
<animateTransform> Graphics
Animates a transformation applied to an SVG element.
Animates an SVG transform such as translation, rotation, scaling, or skewing. It belongs inside SVG content and changes the element's transform over time.
<annotation> Math
Attaches non-XML annotation data to a mathematical expression.
Stores a non-rendered annotation associated with MathML semantics. It can hold alternate textual or machine-readable representations of the mathematical expression.
<annotation-xml> Math
Attaches annotation content expressed in XML.
Stores an XML-based annotation associated with MathML semantics. It was used for alternate representations expressed in another XML vocabulary and is not part of the minimal MathML Core set used by all modern browsers.
<applet> Embedded
Embeds a Java applet.
Embedded a Java applet in a web page. It belonged to the era when browsers could run small Java programs through plugin support, a model that disappeared from the modern web.
<area> Media
Defines a clickable or inactive region within an image map.
Defines a clickable region inside an image map. It is used as a child of map and normally supplies a shape, coordinates, and a destination URL.
<article> Sectioning
Represents a self-contained composition that can stand independently.
Represents a self-contained composition that could reasonably stand on its own or be reused elsewhere. Common examples include a news story, forum post, blog entry, product card, or user-submitted comment.
<aside> Sectioning
Represents content indirectly related to surrounding content.
Represents content that is related to the surrounding material but not part of its main flow. Sidebars, callout boxes, related links, and short digressions are common uses.
<audio> Media
Embeds sound content.
Embeds sound content in a document. It can point to one or more audio sources and can expose built-in playback controls, while fallback content may be placed between its tags.
<b> Text
Historically a typographic bold element; modern HTML uses it for text to which attention is drawn without implying extra importance.
Draws attention to text without assigning it extra importance or emphasis. It is appropriate for cases such as keywords, product names in a review, or other spans that conventionally need visual distinction but carry no stronger semantic meaning.
<base> Metadata
Specifies the base URL used for relative URLs in a document.
Sets the base URL used to resolve relative URLs in the document, and can also set a default browsing context for links and forms. Because it affects URL resolution across the page, a single base element can change the meaning of many otherwise ordinary relative links.
<basefont> Presentation
Sets a default font face, size, or color for document text.
Set a default font face, size, or color for text that followed it. It belongs to an older presentational style of HTML in which typography was controlled directly in markup rather than with CSS.
<bdi> Text
Isolates a span of text from surrounding bidirectional formatting.
Isolates a span of text from the bidirectional text direction of its surroundings. It is especially useful when inserting user-generated or otherwise unknown text whose writing direction might differ from the rest of the page.
<bdo> Text
Overrides the current directionality of text.
Overrides the normal bidirectional text algorithm and forces its contents to run in a specified direction. It is mainly used when the displayed direction of a text fragment must be deliberately controlled.
<bgsound> Media
Plays a sound file in the background of a page.
Was a non-standard element used primarily by Internet Explorer to play background audio automatically. It never became part of normal cross-browser HTML authoring and is a relic of early multimedia pages.
<big> Presentation
Renders text one font size larger than surrounding text.
Displayed its contents in a larger font size relative to surrounding text. It expressed presentation directly in markup, so modern documents use CSS or a meaningful text element instead.
<blink> Presentation
Causes enclosed text to blink on and off.
Was a non-standard element that made text blink on and off in browsers that supported it. It became notorious as an example of distracting early-web presentation and never had broad standards-based support.
<blockquote> Text
Represents an extended quotation.
Marks a section that is quoted from another source, generally as a block rather than inline text. The cite attribute can record the source URL, while visible attribution still belongs in ordinary page content.
<body> Document
Contains the visible and interactive content of an HTML document.
Contains the document content that is presented to the user, including text, images, controls, and most page structure. A normal HTML document has one body element beneath the root html element.
<br> Text
Produces a line break within text.
Forces a line break within text. It is useful where line breaks are part of the content itself, such as addresses or poetry, but should not be used as a general spacing tool.
<button> Form
Represents a clickable button control.
Creates an interactive button that can submit forms or trigger scripted actions. Its contents can include text and other phrasing content, making it more flexible than many button-like input controls.
<canvas> Graphics
Provides a bitmap drawing surface controlled through scripting.
Provides a bitmap drawing surface that scripts can paint into with JavaScript. It is commonly used for custom graphics, games, data visualizations, image processing, and other dynamically drawn content.
<caption> Table
Provides a title or caption for a table.
Supplies the title or caption for a table. It belongs directly inside table and gives readers a concise description of what the table represents.
<center> Presentation
Centers its contents horizontally.
Centered its contents horizontally. It was a presentational container from the era before CSS became the normal way to control layout and alignment.
<circle> Graphics
Draws a circle.
Draws a circle in SVG using a center point and radius. It is one of the basic SVG shape elements and can be styled with fill, stroke, and related presentation properties.
<cite> Text
Marks the title of a creative work.
Marks the title of a cited creative work, such as a book, film, article, song, painting, or research paper. It is for the work's title itself rather than the name of the person who created it.
<clipPath> Graphics
Defines a clipping path used to restrict the visible region of graphics.
Defines an SVG clipping region that can be applied to other graphics. Anything outside the clipping shape is not painted.
<code> Text
Represents a fragment of computer code.
Marks a fragment of computer code or other machine-readable notation within text. Browsers commonly display it in a monospace font, though its real purpose is semantic rather than visual.
<col> Table
Defines one or more columns within a table.
Represents one or more columns within a table so that shared properties can be applied to them. It is normally placed inside colgroup and does not itself contain table cells.
<colgroup> Table
Groups one or more table columns.
Groups one or more columns in a table. It can be used to associate styling or structural information with whole columns without repeating that information on every cell.
<command> Interactive
Obsolete HTML5-era element intended to represent an invokable command.
Was proposed as an element representing a command that a user could invoke, often in conjunction with menus. The menu-command model changed repeatedly and the element did not survive into modern HTML.
<content> Web Components
An obsolete Shadow DOM insertion point replaced by slot.
Was an insertion-point element from an early version of the Shadow DOM and Web Components model. It allowed distributed content to appear inside a shadow tree before that mechanism was replaced by slot.
<cursor> Graphics
Defined a custom cursor resource for SVG content.
<data> Text
Links visible content to a machine-readable value.
Associates visible content with a machine-readable value. It is useful when the human-facing text and the value used by software differ, such as displaying a product name while storing an internal product code.
<datalist> Form
Provides predefined options for an input control.
Provides a set of suggested values for another form control, most often an input linked to it through the list attribute. Users can usually choose one of the suggestions or enter a different value if the control allows it.
<dd> List
Provides the description or value for a term in a description list.
Provides the description, definition, or value associated with a term in a description list. It is used inside dl, generally following one or more dt elements.
<defs> Graphics
Stores reusable SVG objects that are not rendered directly.
Stores reusable SVG definitions that are not rendered directly where they are declared. Gradients, symbols, filters, masks, and reusable shapes are commonly placed inside it and referenced elsewhere.
<del> Edits
Represents content deleted from a document.
Marks content that has been removed from a document. It can optionally include information about when the deletion was made or where an explanation of the change can be found.
<desc> Metadata
Provides a long-text description of SVG content.
Provides a textual description of an SVG element or graphic. It is intended for descriptive metadata and can help explain graphics that are not obvious from their visual appearance alone.
<details> Interactive
Creates a disclosure widget whose contents can be shown or hidden.
Creates a disclosure widget whose additional content can be shown or hidden by the user. A summary element supplies the visible label or heading that controls the disclosure.
<dfn> Text
Represents the defining instance of a term.
Marks the defining occurrence of a term. The surrounding sentence or paragraph should actually provide the term's definition, rather than merely mentioning it.
<dialog> Interactive
Represents a dialog box or other interactive component such as a modal.
Represents a dialog box or other temporary interactive window within the page. It can be shown non-modally or as a modal dialog, with browser behavior that helps manage focus and interaction.
<dir> List
Represents a directory-style list of items.
Represented a directory-style list, historically intended for short file or folder names. In practice it overlapped heavily with ordinary unordered lists.
<div> Grouping
Generic block-level container for grouping content.
Provides a generic block-level container with no special meaning of its own. It is useful for grouping content when no more specific element matches the structure or purpose.
<dl> List
Represents a list of terms and descriptions.
Creates a description list made from terms and their corresponding descriptions, definitions, or values. It can also represent other name-value groupings where dt and dd relationships make sense.
<dt> List
Identifies a term in a description list.
Marks a term, name, or label within a description list. One or more following dd elements provide the corresponding description or value.
<element> Web Components
Obsolete Web Components proposal for declaratively defining custom elements.
Was an early experimental Web Components element used to define custom elements declaratively. The modern Custom Elements API uses JavaScript registration instead.
<ellipse> Graphics
Draws an ellipse.
Draws an ellipse in SVG using a center point plus separate horizontal and vertical radii. A circle is effectively the special case where the two radii are equal.
<em> Text
Marks text with stress emphasis.
Marks text with stress emphasis, changing the meaning or emphasis of the sentence rather than merely styling it. Nested em elements can indicate increasing levels of emphasis.
<embed> Embedded
Embeds external content, typically multimedia or plugin content.
Embeds external content handled by the browser or an available plugin-like content handler. It has historically been used for media and other external resources, although more specific elements are usually preferable when available.
<feBlend> Graphics
Blends two filter inputs.
Combines two inputs inside an SVG filter using a blend mode. Modes such as multiply, screen, darken, and lighten can be used to merge filtered graphics.
<feColorMatrix> Graphics
Transforms colors using a matrix of values.
Transforms color values inside an SVG filter using a matrix or one of several predefined operations. It can alter channels, saturation, hue, or alpha in a single filter stage.
<feComponentTransfer> Graphics
Performs component-wise remapping of color channels.
Applies per-channel transfer functions to filtered SVG content. Child feFuncR, feFuncG, feFuncB, and feFuncA elements define how each color or alpha channel is remapped.
<feComposite> Graphics
Combines two filter inputs using a compositing operation.
Combines two SVG filter inputs using compositing operations. It can perform operations such as over, in, out, atop, xor, and arithmetic combinations.
<feConvolveMatrix> Graphics
Applies a matrix convolution filter such as sharpening or edge detection.
Applies a convolution matrix to an SVG filter input. It can be used for effects such as sharpening, embossing, edge detection, and other neighborhood-based image processing.
<feDiffuseLighting> Graphics
Lights an image using a diffuse reflection model.
Creates a diffuse-lighting effect in an SVG filter using the source graphic as a height map. A child light-source element such as feDistantLight, fePointLight, or feSpotLight supplies the illumination.
<feDisplacementMap> Graphics
Displaces pixels using values from another image.
Distorts one SVG filter input using pixel values from another input as displacement data. It is useful for ripples, warping, turbulence-driven distortion, and similar effects.
<feDistantLight> Graphics
Defines a distant light source for SVG lighting filters.
Defines a distant directional light source for SVG lighting filters. Its direction is described with azimuth and elevation rather than a physical point in the graphic.
<feDropShadow> Graphics
Creates a drop-shadow effect from an input image.
Creates a drop shadow inside an SVG filter. It combines offset, blur, and flood-style shadow coloring in one filter primitive.
<feFlood> Graphics
Fills a filter region with a color and opacity.
Creates a rectangular image filled with a single color and opacity inside an SVG filter. That generated image is usually combined with other filter inputs later in the chain.
<feFuncA> Graphics
Defines the transfer function for the alpha channel.
Defines the transfer function for the alpha channel inside feComponentTransfer. It can apply identity, table, discrete, linear, or gamma transformations.
<feFuncB> Graphics
Defines the transfer function for the blue channel.
Defines the transfer function for the blue channel inside feComponentTransfer. Its settings remap incoming blue values before later filter stages use them.
<feFuncG> Graphics
Defines the transfer function for the green channel.
Defines the transfer function for the green channel inside feComponentTransfer. It is one of four channel-specific function elements used by that filter primitive.
<feFuncR> Graphics
Defines the transfer function for the red channel.
Defines the transfer function for the red channel inside feComponentTransfer. It allows precise remapping of red-channel values in an SVG filter.
<feGaussianBlur> Graphics
Applies a Gaussian blur filter.
Applies a Gaussian blur to an SVG filter input. Horizontal and vertical blur strength can be controlled together or independently.
<feImage> Graphics
Uses an external image or SVG fragment as filter input.
Loads an external image or referenced SVG fragment as an input to an SVG filter. The resulting image can then be combined with other filter primitives.
<feMerge> Graphics
Combines multiple filter-result layers.
Combines several SVG filter inputs into one output by layering them together. Its children are feMergeNode elements that specify the inputs to merge.
<feMergeNode> Graphics
Identifies one input layer within a filter merge.
Specifies one input to an feMerge filter primitive. Multiple nodes are stacked in order to build the merged result.
<feMorphology> Graphics
Erodes or dilates an input image.
Expands or contracts opaque regions in an SVG filter input. The dilate operation grows shapes, while erode shrinks them.
<fencedframe> Embedded
Embeds a privacy-restricted nested browsing context; experimental and pending removal.
<feOffset> Graphics
Offsets an input image by a specified amount.
Shifts an SVG filter input horizontally and vertically. It is commonly used as one stage in building shadows and layered effects.
<fePointLight> Graphics
Defines a point light source for SVG lighting filters.
Defines a point light source at a specific x, y, and z position for SVG lighting filters. Light radiates outward from that point.
<feSpecularLighting> Graphics
Lights an image using a specular reflection model.
Creates specular highlights in an SVG filter, producing shinier light reflections than diffuse lighting. It uses the source graphic as a height map and requires a child light-source element.
<feSpotLight> Graphics
Defines a spotlight source for SVG lighting filters.
Defines a spotlight for SVG lighting filters. It has a position, a target point, and controls for the cone and concentration of the light.
<feTile> Graphics
Tiles an input image to fill a filter region.
Repeats an SVG filter input to fill the filter region. It is useful for building tiled textures or repeating smaller filtered images.
<feTurbulence> Graphics
Generates procedural noise for use in filter effects.
Generates procedural noise inside an SVG filter. The noise can be used directly as texture or fed into displacement and other filter operations.
<fieldset> Form
Groups related controls and labels within a form.
Groups related controls within a form. A legend element can label the group, which is especially useful for sets of choices that need a shared question or heading.
<figcaption> Grouping
Provides a caption for a figure.
Provides a caption or legend for the contents of a figure element. It helps connect explanatory text directly with the image, diagram, code sample, or other self-contained material in that figure.
<figure> Grouping
Represents self-contained content, optionally with a caption.
Groups self-contained content that is referenced from the surrounding document but can usually stand apart from the main prose. Images, diagrams, charts, code examples, and quotations are common contents, often paired with figcaption.
<filter> Graphics
Defines a set of graphical filter operations.
Defines a reusable SVG filter effect made from one or more filter primitives. Other SVG elements reference it to apply blurs, shadows, color changes, distortions, lighting, or compound effects.
<font> Presentation
Controls the face, size, and color of text.
Set font face, size, and color directly in HTML. It became one of the classic examples of presentational markup that CSS was designed to replace.
<font-face> Graphics
Described the characteristics of an SVG font face.
<font-face-format> Graphics
Specified a font format within an SVG font source.
<font-face-name> Graphics
Specified a locally installed font name for an SVG font source.
<font-face-src> Graphics
Contained font-source information for an SVG font face.
<font-face-uri> Graphics
Referenced an external font resource for an SVG font face.
<footer> Sectioning
Represents footer information for a section or page.
Represents footer information for its nearest sectioning content or sectioning root. It commonly contains authorship, copyright, related links, or navigation associated with that section.
<foreignObject> Graphics
Embeds content from another XML namespace, commonly HTML, inside SVG.
Embeds content from another XML namespace inside SVG, most notably HTML. It makes it possible to place normal HTML text and layout inside an SVG coordinate system.
<form> Form
Represents a section containing interactive controls for submitting information.
Groups controls used to collect and submit user input. Its attributes define where submitted data goes, how it is encoded, and which HTTP method is used.
<frame> Embedded
Defines a frame within a frameset document.
Defined one rectangular browsing area inside a frameset. A page built from frames could load separate HTML documents into different regions of the browser window.
<frameset> Document
Defines a set of frames replacing the normal document body.
Replaced body in old framed documents and divided the browser viewport into multiple frame regions. Each region could load a separate document, producing layouts that were difficult to link to, navigate, print, and maintain.
<g> Graphics
Groups SVG elements so they can be transformed or styled together.
Groups SVG elements so transforms, presentation properties, and other operations can be applied to them together. It is the general-purpose structural container of SVG graphics.
<geolocation> Interactive
Creates an experimental browser-defined control for sharing location data with a page.
<glyph> Graphics
Defined an individual glyph in an SVG font.
<glyphRef> Graphics
Referenced a glyph for alternate glyph substitution.
<h1> Heading
Represents a top-level section heading.
Represents a first-level heading. It normally identifies the highest-level heading for a page or section and should describe the content that follows it.
<h2> Heading
Represents a second-level section heading.
Represents a second-level heading. It is typically used for major subsections beneath an h1-level topic.
<h3> Heading
Represents a third-level section heading.
Represents a third-level heading. It is commonly used for subsections nested beneath h2-level sections.
<h4> Heading
Represents a fourth-level section heading.
Represents a fourth-level heading. It continues the document's heading hierarchy beneath h3-level sections.
<h5> Heading
Represents a fifth-level section heading.
Represents a fifth-level heading. It is available for deeply nested document structures where another heading level is genuinely needed.
<h6> Heading
Represents a sixth-level section heading.
Represents a sixth-level heading, the lowest numbered heading level in HTML. It is generally reserved for deeply nested subsections.
<head> Metadata
Contains document metadata and machine-readable information.
Contains document metadata and resources that are not part of the visible page body. Typical contents include title, meta, link, style, script, and base elements.
<header> Sectioning
Represents introductory or navigational content for a section or page.
Represents introductory content for a page or section. It often contains a heading, logo, introductory text, navigation, or other material that establishes what the section is about.
<hgroup> Heading
Groups a heading with secondary heading content.
Groups a heading with related secondary material such as a subtitle or tagline. It is useful when several lines belong to one heading unit rather than forming separate sections.
<hkern> Graphics
Defined horizontal kerning pairs in an SVG font.
<hr> Text
Historically presented as a horizontal rule; modern HTML defines it semantically as a thematic break between sections or topics.
Represents a thematic break between paragraphs or sections of content. Browsers often draw it as a horizontal line, but the element's meaning is a change in topic or scene rather than decorative rule-making.
<html> Document
Represents the root element of an HTML document.
Is the root element of an HTML document and contains the head and body. Its lang attribute is also the usual place to declare the primary language of the page.
<i> Text
Historically a typographic italic element; modern HTML uses it for text in an alternate voice, mood, idiom, technical term, or similar offset.
Marks text set apart from the surrounding prose for some alternate voice or convention, such as a technical term, taxonomic designation, idiomatic phrase, or thought. It should not be used merely because italic styling is desired.
<iframe> Embedded
Embeds another HTML page in the current document.
Embeds another browsing context inside the current page, usually displaying another HTML document. Its permissions and behavior can be restricted with attributes such as sandbox and allow.
<ilayer> Presentation
Defines an inline positioned layer in Netscape browsers.
Was a Netscape-specific inline layer element used for positioned or overlapping content. It belonged to the browser-specific layout systems that predated standardized CSS positioning.
<image> Media
An early precursor or alias to the img element in some browsers.
Was an early experimental precursor or alias related to image embedding. The standardized img element became the lasting form, while image remains a historical oddity rather than normal HTML markup.
<img> Media
Embeds an image in a document.
Embeds an image into the document. The src attribute identifies the image resource, while alt supplies a text alternative when the image cannot or should not be presented visually.
<input> Form
Creates an interactive form control.
Creates a form control whose behavior depends heavily on its type attribute. The same element can represent text fields, checkboxes, radio buttons, date pickers, file selectors, submit buttons, and many other input mechanisms.
<ins> Edits
Represents content inserted into a document.
Marks content that has been inserted into a document. It can optionally carry information about when the insertion occurred or where an explanation of the edit can be found.
<isindex> Form
Creates a primitive single-line query input associated with the document.
Created a single-line text prompt that allowed the user to submit a simple query, usually to a server. It predates modern HTML forms and effectively bundled a tiny search form into one element.
<kbd> Text
Represents user input, typically from a keyboard.
Marks user input, typically something entered with a keyboard but not limited to keyboards. It is commonly used for key names, commands, and short examples of what the user should type.
<keygen> Form
Generated a cryptographic key pair and submitted the public key with a form.
Generated a public-private key pair through a form and submitted the public key to a server. It was associated with browser-based certificate enrollment, a workflow later removed from mainstream HTML and browsers.
<label> Form
Represents a caption for a form control.
Associates readable text with a form control. Clicking a properly connected label usually focuses or activates its control, and the association gives assistive technology a usable name for the control.
<layer> Presentation
Defines a positioned layer of content in Netscape browsers.
Was a Netscape-specific element for creating independently positioned page layers. CSS positioning and stacking replaced this browser-specific layout mechanism.
<legend> Form
Provides a caption for a fieldset.
Provides a caption for the contents of a fieldset. It normally states the question, category, or purpose shared by the controls inside that group.
<li> List
Represents an item in an ordered, unordered, or menu list.
Represents a single item in an ordered, unordered, or menu list. Its meaning depends on the parent list, while its contents can contain ordinary flow content.
<line> Graphics
Draws a straight line between two points.
Draws a straight line segment in SVG between two coordinate pairs. Its visible appearance normally comes from stroke properties rather than fill.
<linearGradient> Graphics
Defines a linear color gradient paint server.
Defines a linear color gradient for SVG fills or strokes. Child stop elements specify the colors and positions along the gradient line.
<link> Metadata
Specifies a relationship between the document and an external resource.
Declares a relationship between the current document and an external resource. It is used for stylesheets, icons, preload hints, canonical relationships, alternate versions, and several other document-level connections.
<listing> Presentation
Displays preformatted text in a monospaced style.
Displayed a block of text in a preformatted style and treated much of its contents as literal text. It was an early cousin of pre and xmp and disappeared as HTML's text-formatting model became more consistent.
<maction> Math
Associates an action or interactive behavior with mathematical subexpressions.
Represents an interactive MathML action that can switch or otherwise respond to user interaction. It belongs to older, broader MathML functionality and is not part of the streamlined MathML Core implemented consistently by modern browsers.
<main> Sectioning
Represents the dominant content of the document body.
Identifies the dominant content of the document body. It should exclude material repeated across pages, such as site-wide navigation, sidebars, and standard footers.
<map> Media
Defines an image map containing clickable areas.
Defines an image map that contains clickable regions described by area elements. An img or object can refer to the map so different parts of the same image lead to different destinations.
<mark> Text
Represents text highlighted for reference or relevance.
Marks text that is relevant or noteworthy in the current context, often because it matches a search term or has been called out for reference. Its meaning is closer to a highlighter mark than to strong importance.
<marker> Graphics
Defines graphics used as markers on paths, lines, polylines, or polygons.
Defines reusable graphics that can be placed at the start, middle vertices, or end of SVG paths and lines. Arrowheads are the most familiar use.
<marquee> Presentation
Creates scrolling or moving text and content.
Creates a scrolling or bouncing region of text or other content in browsers that still support it. It is strongly associated with 1990s web design and remains recognizable precisely because its animated behavior is so conspicuous.
<mask> Graphics
Defines an alpha or luminance mask for SVG content.
Defines an SVG mask that controls the transparency of another graphic. Bright or opaque regions reveal more of the target, while dark or transparent regions hide more of it depending on mask mode.
<math> Math
Wraps a MathML mathematical expression and can be embedded directly in HTML.
Is the top-level container for MathML embedded directly in an HTML document. It wraps mathematical notation so browsers and assistive technologies can treat the expression as structured mathematics rather than an image or improvised text.
<menclose> Math
Renders mathematical content with an enclosing notation.
Draws one or more notations around MathML content, such as a box, circle, strike, or radical-like enclosure. The notation attribute selects the surrounding marks.
<menu> List
An early list/menu element, deprecated in HTML 4 and later redefined for modern menu/list semantics.
Represents an unordered list of commands or items. In modern HTML it behaves much like ul, although its name reflects an intended use for toolbars and command-oriented lists.
<menuitem> Interactive
Represented a command that could be invoked from a menu.
Represented a command that could appear in a menu, including context-menu experiments in some browsers. The surrounding menu system never achieved lasting interoperable support, and the element fell out of use.
<merror> Math
Displays content as a syntax or authoring error.
Marks MathML content as an error message or error representation. Browsers can render it in a way that distinguishes malformed or otherwise problematic mathematical content.
<meta> Metadata
Represents metadata that cannot be expressed by other metadata elements.
Supplies document metadata that cannot be expressed by elements such as title, base, or link. Common uses include character encoding, viewport configuration, document descriptions, and other name-value metadata.
<metadata> Metadata
Contains structured metadata about SVG content.
Stores metadata inside an SVG document or fragment. Its contents are not rendered as part of the graphic.
<meter> Form
Represents a scalar measurement within a known range.
Displays a scalar measurement within a known range, such as disk usage, a score, or a gauge reading. It is not meant to represent task completion; progress is the appropriate element for that.
<mfenced> Math
Legacy shorthand for surrounding an expression with fences and separators.
Was a convenience MathML element for automatically placing opening and closing fences around content. Explicit mo elements are now preferred because they give authors clearer control over delimiters and separators.
<mfrac> Math
Displays a numerator over a denominator as a fraction.
Displays a MathML fraction with a numerator and denominator. By changing the fraction-line thickness it can also represent structures such as binomial coefficients.
<mi> Math
Represents an identifier such as a variable name.
Marks a MathML identifier such as a variable, function name, or symbolic constant. Single-character identifiers are commonly rendered in an italic mathematical style by default.
<missing-glyph> Graphics
Defined the fallback glyph for characters absent from an SVG font.
<mmultiscripts> Math
Attaches multiple prescripts and postscripts to a base expression.
Attaches multiple prescripts and postscripts to a MathML base. It is used for notation that needs more than the ordinary single subscript and superscript pair.
<mn> Math
Represents a numeric literal.
Marks numeric content in MathML. It is used for integers, decimals, and other sequences that should be treated as numbers rather than identifiers or operators.
<mo> Math
Represents an operator, fence, separator, or other operator-like symbol.
Marks a MathML operator, relation, delimiter, or similar symbol. It carries much of MathML's spacing and stretching behavior for symbols such as +, =, parentheses, and summation signs.
<mover> Math
Places an accent or expression over a base expression.
Places one MathML expression over another. It is used for accents, bars, arrows, and other notation that sits above a base expression.
<mpadded> Math
Adjusts the dimensions or positioning of its mathematical content.
Adjusts the dimensions or position of MathML content without changing the mathematical structure itself. It is useful for fine control over spacing and visual alignment.
<mpath> Graphics
References a path used by an animateMotion element.
References an SVG path for use by animateMotion. It lets a motion animation reuse an existing path instead of repeating the path data.
<mphantom> Math
Reserves space for content while rendering it invisibly.
Makes MathML content invisible while preserving the space it would have occupied. It can be used to align expressions by reserving matching dimensions.
<mprescripts> Math
Marks the start of prescripts within a multiscripts expression.
Marks the point inside mmultiscripts where prescripts begin. Script pairs before and after it are interpreted on different sides of the base expression.
<mroot> Math
Displays a base expression with an explicit root index.
Displays a MathML radical with an explicit index. Its first child is the radicand and its second child supplies the index, such as the 3 in a cube root.
<mrow> Math
Groups mathematical subexpressions into a horizontal row.
Groups MathML expressions into a single horizontal unit. It is one of the basic structural containers used when several tokens need to behave as one expression.
<ms> Math
Represents a string literal in mathematical notation.
Marks a string literal in MathML. Browsers can add quotation marks around its contents, with optional attributes to choose the opening and closing quote characters.
<mspace> Math
Creates explicit spacing within a mathematical expression.
Inserts a specified amount of space into MathML. It can control width, height, and depth and is intended for deliberate spacing within mathematical layout.
<msqrt> Math
Displays content under a square-root radical.
Displays a square root around its MathML contents. Unlike mroot, it does not require a separate index child.
<mstyle> Math
Groups mathematical content for shared styling or legacy presentation attributes.
Groups MathML content so shared mathematical styling can be applied to the descendants. It comes from the broader MathML vocabulary and is less central to MathML Core authoring.
<msub> Math
Attaches a subscript to a base expression.
Attaches a subscript to a MathML base expression. It takes two children: the base and the subscript.
<msubsup> Math
Attaches both a subscript and superscript to a base expression.
Attaches both a subscript and a superscript to the same MathML base. The children appear in base, subscript, superscript order.
<msup> Math
Attaches a superscript to a base expression.
Attaches a superscript to a MathML base expression. It is used for exponents and other notation written above and to the side of a base.
<mtable> Math
Displays mathematical content in rows and columns.
Creates a MathML table or matrix. Its rows are mtr elements and its cells are mtd elements, making it useful for matrices, aligned expressions, and tabular mathematical layouts.
<mtd> Math
Represents a cell within a MathML table row.
Represents one cell inside a MathML table row. It is roughly analogous to HTML td, but participates in MathML's mathematical layout rules.
<mtext> Math
Represents ordinary text within a mathematical expression.
Marks ordinary text embedded inside a MathML expression. It is used for words or phrases that should be read as text rather than as mathematical identifiers or operators.
<mtr> Math
Represents a row within a MathML table.
Represents one row inside a MathML table. Its child cells are mtd elements.
<multicol> Presentation
Flows content into multiple columns in Netscape browsers.
Was a non-standard Netscape-era element for laying content out in multiple columns. CSS multi-column layout eventually provided a standards-based solution without requiring a special HTML tag.
<munder> Math
Places an accent or expression under a base expression.
Places one MathML expression underneath another. It is commonly used for under-accents and limits that appear below large operators.
<munderover> Math
Places expressions both under and over a base expression.
Places one expression below and another above the same MathML base. It is especially useful for lower and upper limits on operators such as sums and integrals.
<nav> Sectioning
Represents a section containing navigation links.
Represents a section whose main purpose is navigation. It is typically used for major groups of links such as site navigation, section menus, tables of contents, or pagination.
<nextid> Metadata
Early HTML element used to suggest the next identifier value for authoring tools.
Was an extremely early HTML element used by authoring tools to record the next available identifier for generated anchors. It was metadata for document editing rather than content intended for readers.
<nobr> Presentation
Prevents enclosed text from wrapping automatically.
Prevented its contents from wrapping onto a new line. Modern pages achieve the same visual behavior with CSS when keeping a particular text run unbroken is actually necessary.
<noembed> Embedded
Provides fallback content for browsers that cannot render embedded content.
Provided fallback content for browsers that could not display content embedded with embed. It came from an older plugin-oriented web and was largely superseded by other embedding and fallback patterns.
<noframes> Document
Provides fallback content for browsers that do not support frames.
Provided fallback content for user agents that could not display frame-based pages. It was normally used inside frameset documents to give non-frame browsers some usable alternative content.
<noindex> Metadata
Non-standard crawler directive element historically used to exclude enclosed content from some search indexes.
<nolayer> Presentation
Netscape-specific fallback content for browsers that did not support the layer element.
Provided fallback content for browsers that did not support Netscape's layer element. It is a fossil from the period when major browsers exposed incompatible proprietary layout systems.
<noscript> Scripting
Provides fallback content when scripting is unavailable or disabled.
Provides content for situations where scripting is unavailable or disabled. Its exact parsing rules depend on whether it appears in head or body, so it is more specialized than a generic fallback container.
<object> Embedded
Embeds an external resource that may be treated as an image, document, or plugin.
Embeds an external resource that may be treated as an image, document, or other type of object. It can contain fallback HTML for cases where the external resource cannot be displayed.
<ol> List
Represents an ordered list of items.
Creates an ordered list in which item sequence matters. Browsers normally number the child li elements, while attributes can control numbering direction and starting value.
<optgroup> Form
Groups related options within a select control.
Groups related option elements inside a select control. Its label gives the group a visible name, helping organize longer lists of choices.
<option> Form
Represents an option in a select control or data list.
Defines a selectable choice inside select, optgroup, or datalist. Its displayed text and submitted value can differ when the value attribute is provided.
<output> Form
Represents the result of a calculation or user action.
Represents the result of a calculation or other user action. It is often used with forms and scripts to display a value derived from one or more controls.
<p> Text
Represents a paragraph of text.
Represents a paragraph of text or other phrasing content. Browsers treat it as a block, and its end tag may be implied when another block-like element begins.
<param> Embedded
Defines parameters for an object element.
Passed named parameters to an object element, commonly to configure plugin content. As browser plugins disappeared and object usage narrowed, the separate parameter mechanism became unnecessary.
<path> Graphics
Draws a shape using a sequence of path commands.
Draws an arbitrary SVG path from a compact sequence of move, line, curve, arc, and close commands. It is one of the most flexible and widely used SVG drawing elements.
<pattern> Graphics
Defines a reusable graphical pattern used to fill or stroke shapes.
Defines a reusable SVG pattern that can paint fills or strokes. The pattern contains its own graphics and repeats them across the target area.
<picture> Media
Provides multiple image sources for responsive or art-directed images.
Provides multiple image-source options for a single rendered image. It is commonly used for responsive images, art direction, and choosing newer image formats while retaining a fallback img element.
<plaintext> Text
Treats the remainder of the document as raw plain text.
Caused the rest of the document to be treated as plain text rather than parsed as HTML. Because everything after its start tag becomes text, it effectively consumes the remainder of the page instead of behaving like an ordinary container.
<polygon> Graphics
Draws a closed shape made from connected straight-line segments.
Draws a closed SVG shape from a series of coordinate points. The final point is automatically connected back to the first.
<polyline> Graphics
Draws an open shape made from connected straight-line segments.
Draws a connected series of straight SVG line segments from a list of points. Unlike polygon, it does not automatically close the shape.
<portal> Embedded
Experimental Chromium/WICG element for embedding a page that could later be activated as the top-level page.
<pre> Text
Represents preformatted text in which whitespace is preserved.
Represents preformatted text whose whitespace and line breaks are significant. It is commonly used for code blocks, ASCII art, terminal output, and other text that depends on fixed spacing.
<progress> Form
Displays progress toward completion of a task.
Displays the completion status of a task. It can represent either a known fraction of completion or an indeterminate operation whose endpoint is not yet known.
<q> Text
Represents a short inline quotation.
Marks a short inline quotation. User agents may add quotation marks automatically, so literal quote characters usually do not need to be typed around its contents.
<radialGradient> Graphics
Defines a radial color gradient paint server.
Defines an SVG gradient that radiates outward from a focal region. Child stop elements describe how the colors change from the center toward the outer radius.
<rb> Text
Explicitly marked the base text component of a ruby annotation.
Explicitly wrapped the base text being annotated inside ruby markup. Ruby can now express the same structure without requiring this separate wrapper in ordinary HTML authoring.
<rbc> Text
Grouped ruby base components in the 2001 W3C Ruby Annotation model.
<rect> Graphics
Draws a rectangle, optionally with rounded corners.
Draws a rectangle in SVG and can optionally round its corners. It is commonly used for boxes, backgrounds, bars, and other rectangular geometry.
<rp> Text
Provides fallback parentheses for ruby annotations.
Provides fallback parentheses or similar text around ruby annotations for browsers that cannot display ruby formatting properly. It appears inside ruby alongside rt content.
<rt> Text
Provides pronunciation or annotation text for ruby content.
Contains the annotation text used in ruby markup, often pronunciation or reading information for East Asian characters. It appears inside a ruby element next to the text being annotated.
<rtc> Text
Grouped semantic annotations for ruby text.
Grouped certain ruby annotations, especially secondary or semantic annotations associated with ruby base text. It represented a more elaborate ruby model than the simpler patterns commonly used today.
<ruby> Text
Represents ruby annotations used for pronunciation or explanatory text.
Marks text with small annotations that are typically shown above or beside the base text. It is widely used for pronunciation guides and readings in East Asian typography.
<s> Text
Historically a presentational strikethrough element; deprecated in HTML 4, then restored with the modern meaning of content that is no longer accurate or relevant.
Marks content that is no longer accurate or relevant, while still leaving it visible. It differs from del, which specifically represents a documented deletion or edit.
<samp> Text
Represents sample output from a computer program or system.
Marks sample output from a computer program or system. It is often used in documentation to distinguish what the machine displays from commands the user enters.
<script> Scripting
Embeds or references executable script or data.
Embeds or references executable script data, most commonly JavaScript. It is also used for certain non-executable data blocks when an appropriate type is supplied.
<search> Sectioning
Represents a section containing controls or content for searching or filtering.
Groups content used for searching or filtering. It can contain a search form, filter controls, or other interface elements whose purpose is to help the user find a subset of information.
<section> Sectioning
Represents a generic standalone section of a document.
Represents a thematically grouped section of a document, usually with its own heading. It is appropriate when the content forms a meaningful part of the document outline rather than serving only as a styling wrapper.
<select> Form
Provides a control for choosing among a set of options.
Creates a control for choosing from a set of options. Depending on its attributes, it can allow one selection or multiple selections and can be rendered as a drop-down or list box.
<selectedcontent> Form
Displays a clone of the currently selected option inside a customizable select control.
Mirrors the contents of the currently selected option inside a customizable select control. It is used within the button portion of that control so the closed select can display the chosen option's content.
<semantics> Math
Associates a mathematical expression with semantic annotations.
Groups a MathML expression with alternate representations or annotations. The first child is normally the presentation shown to the user, while following annotation elements can carry additional forms.
<server> Scripting
Netscape server-side JavaScript element evaluated on the server rather than rendered as page content.
Was a Netscape server-side element whose contents could contain server-executed JavaScript in particular server products. It was never a general client-side HTML feature.
<set> Graphics
Sets an SVG attribute or property to a value for a specified interval.
Sets an SVG attribute or property to a specific value for a defined interval in SMIL animation. Unlike animate, it does not interpolate between values.
<shadow> Web Components
An obsolete Shadow DOM v0 insertion point.
Was an early Web Components insertion point used with older versions of Shadow DOM. The modern shadow tree and slot model replaced this experimental element.
<slot> Web Components
Defines a placeholder inside a web component that can receive assigned content.
Defines a named or unnamed insertion point inside a web component's shadow tree. Content supplied by the component's user can be assigned to that slot and rendered in the component's composed output.
<small> Text
Historically rendered text in a smaller font; modern HTML represents side comments and small print.
Represents side comments or fine-print material, such as legal notes, disclaimers, copyright text, or attribution. Its semantic use is tied to secondary text, even though browsers usually display it smaller.
<source> Media
Specifies alternative media resources for picture, audio, or video.
Specifies an alternative media or image resource for picture, audio, or video. Multiple source elements let the browser choose a file based on format support, media conditions, or other criteria.
<spacer> Presentation
Inserts blank space of a specified size.
Was a non-standard element used to insert blank space into a page, especially in early Netscape layouts. Modern layout and spacing belong in CSS rather than empty structural markup.
<span> Grouping
Generic inline container for phrasing content.
Provides a generic inline container with no special meaning of its own. It is useful for styling, scripting, or grouping a short run of phrasing content when no more specific element fits.
<stop> Graphics
Defines a color stop within a linear or radial gradient.
Defines one color stop inside an SVG linear or radial gradient. Its offset determines the position and its color and opacity determine the paint at that point.
<strike> Presentation
Displays text with a line through it.
Displayed text with a line through it. Modern HTML separates the possible meanings more clearly, using s for content that is no longer accurate or relevant and del for content removed as an edit.
<strong> Text
Marks content of strong importance, seriousness, or urgency.
Marks content of strong importance, seriousness, or urgency. Nested strong elements can indicate a greater degree of importance within already important text.
<style> Metadata
Contains CSS style rules for a document.
Contains CSS rules that apply to the document. It normally appears in head, although scoped placement rules have changed over HTML's history and ordinary authoring still generally keeps page-level styles in the document head.
<sub> Text
Represents subscript text.
Marks text that should be presented as a subscript because of typographic convention, such as chemical formulas or mathematical notation. It should not be used merely to make text smaller or lower.
<summary> Interactive
Provides the visible summary or label for a details disclosure widget.
Provides the visible label or heading for a details disclosure widget. Activating it toggles the open state of its parent details element.
<sup> Text
Represents superscript text.
Marks text that should be presented as a superscript because of typographic convention, such as exponents or ordinal indicators. It should not be used only for visual positioning.
<svg> Graphics
Defines an SVG coordinate system and viewport and can embed an SVG fragment in HTML.
Is the top-level container for Scalable Vector Graphics embedded directly in an HTML document. It establishes an SVG drawing region in which shapes, paths, text, filters, and other SVG elements can be defined.
<switch> Graphics
Renders the first child whose conditional processing requirements are satisfied.
Chooses one child from a set of SVG alternatives according to conditional processing rules. It was designed for cases where different content should be used depending on language or feature support.
<symbol> Graphics
Defines reusable graphical content that is normally instantiated with use.
Defines reusable SVG graphics that are not rendered directly where declared. A use element can instantiate the symbol elsewhere, often with its own size and position.
<table> Table
Represents tabular data.
Represents tabular data arranged into rows and columns. Its child elements can provide captions, column information, row groups, rows, and individual header or data cells.
<tbody> Table
Groups the body rows of a table.
Groups the main body rows of a table. A table can contain more than one tbody when separate groups of data rows need to be distinguished.
<td> Table
Represents a data cell in a table.
Represents a regular data cell within a table row. It can span multiple rows or columns and can be associated with header cells for more complex tables.
<template> Scripting
Stores HTML fragments that are not rendered until instantiated.
Holds HTML that is parsed but not rendered as part of the page when it first loads. Scripts can clone or instantiate its contents later, making it useful for reusable chunks of DOM structure and web components.
<text> Text
Draws text within SVG.
Draws text inside an SVG coordinate system. It supports SVG-specific positioning, path-following, and typographic controls beyond ordinary HTML text flow.
<textarea> Form
Provides a multiline text-entry control.
Creates a multi-line plain-text input control. Its initial value is written between the opening and closing tags rather than supplied through a value attribute.
<textPath> Text
Renders text along the shape of a path.
Places SVG text along the shape of a path. It is commonly used for curved labels, circular text, and other text that follows geometry.
<tfoot> Table
Groups footer rows in a table.
Groups footer rows in a table. It is commonly used for totals, summaries, or other information that belongs after the table's main body rows.
<th> Table
Represents a header cell in a table.
Represents a header cell in a table. It can identify a row, column, or group of cells, and attributes such as scope can make those relationships clearer to browsers and assistive technology.
<thead> Table
Groups header rows in a table.
Groups header rows in a table. It is usually used for column labels or other introductory rows that describe the data in the table body.
<time> Text
Represents a specific time, date, or duration.
Marks a date, time, duration, or related temporal value. Its datetime attribute can provide a standardized machine-readable form when the visible text uses a human-friendly format.
<title> Metadata
Defines the document title shown in browser tabs and related contexts.
Sets the document title used by browser tabs, bookmarks, history entries, and many external systems. It belongs in head and should identify the page rather than act as visible page content.
<tr> Table
Represents a row of table cells.
Represents a row of cells in a table. Its children are th and td elements, and it normally appears inside thead, tbody, tfoot, or directly inside table where permitted.
<track> Media
Specifies timed text tracks such as subtitles or captions for media.
Adds timed text data to audio or video, such as captions, subtitles, chapter titles, or metadata cues. The track file is usually written in WebVTT format.
<tref> Text
Referenced text content from elsewhere in an SVG document.
<tspan> Text
Defines a subrange of SVG text with independent positioning or styling.
Defines a subrange of text inside an SVG text element with its own positioning or presentation. It is useful for line-like segments, emphasis, or changes in coordinates within one text object.
<tt> Presentation
Displays text in a monospace or teletype-style font.
Displayed text in a monospace or teletype-style font. Its visual effect is now handled with CSS, while semantic elements such as code, kbd, samp, and var cover many of the meanings it was once used for.
<u> Text
Historically a presentational underline element; deprecated in HTML 4 and later given the modern meaning of a non-textual annotation such as a spelling mark.
Marks text with a non-textual annotation, such as a misspelling indicator or another convention that is typically shown with an underline. It should not be used simply because underlined styling is desired, especially where users might mistake the text for a link.
<ul> List
Represents an unordered list of items.
Creates an unordered list in which the sequence of items is not inherently important. Its direct list items are represented by li elements.
<use> Graphics
Instantiates a reusable copy of another SVG element.
Creates an instance of an SVG element or symbol referenced elsewhere. It is a compact way to reuse the same graphic multiple times without duplicating the original markup.
<var> Text
Represents the name of a variable in mathematics or programming.
Marks the name of a variable or placeholder in mathematical, programming, or technical prose. It is commonly rendered in italics by default, although the semantic meaning is the important part.
<video> Media
Embeds video content.
Embeds video content and can also carry an audio track. It supports multiple candidate sources, captions and subtitles through track, poster images, and built-in playback controls.
<view> Graphics
Defines a named or predefined view of an SVG document.
Defines a named view of an SVG document with its own viewBox and aspect-ratio settings. A URL fragment can reference the view so the same SVG resource opens or embeds at a particular framing.
<vkern> Graphics
Defined vertical kerning pairs in an SVG font.
<wbr> Text
Marks a location where the browser may optionally break a line.
Marks a position where the browser may break a line if needed. Unlike br, it does not force a line break when there is enough room to keep the text together.
<xmp> Presentation
Displays text as preformatted literal markup.
Displayed its contents as preformatted text while suppressing normal HTML parsing inside the element. It was once useful for showing markup examples, but its parsing behavior was awkward and later HTML uses pre with escaped markup instead.