References

Beginner-friendly references for web development, with live, editable examples.

HTML Reference

A complete, modern HTML reference. Every element, global attribute, element-specific attribute and event links to a dedicated page with syntax, attributes, accessibility notes and live, editable examples. Deprecated features are flagged, not hidden.

HTML is the structure of every web page. Pair it with CSS for styling and JavaScript for behavior to build complete, modern websites.

Elements 118

Name Description
<!--> An HTML comment lets you add notes in the source that are not rendered.
<!DOCTYPE> The <!DOCTYPE> declaration tells the browser which version of HTML the document uses.
<a> The HTML <a> (anchor) element is used for creating hyperlinks to websites, files, or locations on a document.
<abbr> The HTML <abbr> element marks up an abbreviation or acronym.
<address> The HTML <address> element provides contact information for its nearest article or the document.
<area> The HTML <area> element defines a clickable region inside an image map.
<article> The HTML <article> element represents a self-contained, independently distributable piece of content.
<aside> The HTML <aside> element represents content tangentially related to the surrounding content.
<audio> The HTML <audio> element embeds sound content in the document.
<b> The HTML <b> element draws attention to text without conveying extra importance.
<base> The HTML <base> element sets the base URL and default target for relative links.
<bdi> The HTML <bdi> element isolates text that may have a different directionality.
<bdo> The HTML <bdo> element overrides the text directionality of its contents.
<blockquote> The HTML <blockquote> element represents a section quoted from another source.
<body> The HTML <body> element contains all the visible content of the document.
<br> The HTML <br> element produces a line break in text.
<button> The HTML <button> element represents a clickable button.
<canvas> The HTML <canvas> element provides a drawable region for graphics via JavaScript.
<caption> The HTML <caption> element provides a title or caption for a table.
<cite> The HTML <cite> element represents the title of a creative work.
<code> The HTML <code> element displays a fragment of computer code.
<col> The HTML <col> element defines a column within a colgroup for shared styling.
<colgroup> The HTML <colgroup> element groups one or more columns in a table for styling.
<data> The HTML <data> element links content with a machine-readable value.
<datalist> The HTML <datalist> element provides a list of suggested options for an input.
<dd> The HTML <dd> element provides the description for a term in a description list.
<del> The HTML <del> element marks text that has been deleted from the document.
<details> The HTML <details> element creates a disclosure widget that can be opened and closed.
<dfn> The HTML <dfn> element marks the defining instance of a term.
<dialog> The HTML <dialog> element represents a modal or non-modal dialog box.
<div> The HTML <div> element is a generic block-level container for grouping content, with no semantic meaning of its own.
<dl> The HTML <dl> element represents a description list of terms and their descriptions.
<dt> The HTML <dt> element specifies a term in a description list.
<em> The HTML <em> element marks text with stress emphasis.
<embed> The HTML <embed> element embeds external content at a specified point.
<fieldset> The HTML <fieldset> element groups related controls within a form.
<figcaption> The HTML <figcaption> element provides a caption for a figure.
<figure> The HTML <figure> element represents self-contained content, optionally with a caption.
<footer> The HTML <footer> element represents a footer for its nearest section or the page.
<form> The HTML <form> element groups interactive controls for submitting information.
<h1> The HTML <h1> element represents a level-1 section heading.
<h2> The HTML <h2> element represents a level-2 section heading.
<h3> The HTML <h3> element represents a level-3 section heading.
<h4> The HTML <h4> element represents a level-4 section heading.
<h5> The HTML <h5> element represents a level-5 section heading.
<h6> The HTML <h6> element represents a level-6 section heading.
<head> The HTML <head> element contains machine-readable metadata about the document.
<header> The HTML <header> element represents introductory content for its nearest section or the page.
<hgroup> The HTML <hgroup> element groups a heading with related secondary content such as a subtitle.
<hr> The HTML <hr> element represents a thematic break between paragraph-level content.
<html> The HTML <html> element is the root of an HTML document.
<i> The HTML <i> element marks text in an alternate voice or mood.
<iframe> The HTML <iframe> element embeds another HTML page within the current one.
<img> The HTML <img> element embeds an image into the document.
<input> The HTML <input> element creates an interactive form control for the user to enter data.
<ins> The HTML <ins> element marks text that has been inserted into the document.
<kbd> The HTML <kbd> element represents user keyboard input.
<label> The HTML <label> element provides a caption for a form control.
<legend> The HTML <legend> element provides a caption for a fieldset.
<li> The HTML <li> element represents an item in a list.
<link> The HTML <link> element links the document to external resources such as stylesheets and icons.
<main> The HTML <main> element represents the dominant, main content of the document.
<map> The HTML <map> element defines a client-side image map.
<mark> The HTML <mark> element marks text as highlighted for reference or relevance.
<math> The HTML <math> element is the root for MathML mathematical notation.
<menu> The HTML <menu> element represents a semantic list of commands or interactive items.
<meta> The HTML <meta> element represents document-level metadata that other elements cannot express.
<meter> The HTML <meter> element represents a scalar measurement within a known range.
<nav> The HTML <nav> element represents a section of major navigation links.
<noscript> The HTML <noscript> element provides fallback content when scripts are unavailable.
<object> The HTML <object> element embeds an external resource such as a PDF or media.
<ol> The HTML <ol> element represents an ordered list of items.
<optgroup> The HTML <optgroup> element groups related options within a select.
<option> The HTML <option> element defines an item in a select, optgroup or datalist.
<output> The HTML <output> element represents the result of a calculation or user action.
<p> The HTML <p> element represents a paragraph of text.
<param> The HTML <param> element defined parameters for an <object> (obsolete).
<picture> The HTML <picture> element provides multiple image sources for art direction and formats.
<pre> The HTML <pre> element displays preformatted text, preserving whitespace and line breaks.
<progress> The HTML <progress> element shows the completion progress of a task.
<q> The HTML <q> element represents a short inline quotation.
<rp> The HTML <rp> element provides fallback parentheses for browsers without ruby support.
<rt> The HTML <rt> element provides the annotation text for a ruby annotation.
<rtc> The HTML <rtc> element groups ruby text annotations for complex ruby.
<ruby> The HTML <ruby> element represents text annotated with pronunciation or meaning (ruby annotations).
<s> The HTML <s> element marks text that is no longer accurate or relevant.
<samp> The HTML <samp> element represents sample output from a program.
<script> The HTML <script> element embeds or references executable JavaScript.
<search> The HTML <search> element represents a section containing search or filtering controls.
<section> The HTML <section> element represents a standalone thematic section of content.
<select> The HTML <select> element creates a drop-down list of options.
<slot> The HTML <slot> element is a placeholder inside a web component for projected content.
<small> The HTML <small> element represents side comments and small print.
<source> The HTML <source> element specifies one media resource for picture, audio or video.
<span> The HTML <span> element is a generic inline container for phrasing content, with no semantic meaning of its own.
<strong> The HTML <strong> element marks text with strong importance, seriousness or urgency.
<style> The HTML <style> element embeds CSS styles directly in the document.
<sub> The HTML <sub> element renders text as subscript.
<summary> The HTML <summary> element provides the visible label for a details disclosure widget.
<sup> The HTML <sup> element renders text as superscript.
<svg> The HTML <svg> element embeds Scalable Vector Graphics inline in the document.
<table> The HTML <table> element displays data in rows and columns.
<tbody> The HTML <tbody> element groups the body (data) rows of a table.
<td> The HTML <td> element defines a data cell in a table.
<template> The HTML <template> element holds inert HTML fragments for cloning with JavaScript.
<textarea> The HTML <textarea> element creates a multi-line plain-text input control.
<tfoot> The HTML <tfoot> element groups the footer rows of a table.
<th> The HTML <th> element defines a header cell in a table.
<thead> The HTML <thead> element groups the header rows of a table.
<time> The HTML <time> element represents a date or time in a machine-readable format.
<title> The HTML <title> element sets the document title shown in the browser tab and search results.
<tr> The HTML <tr> element defines a row of cells in a table.
<track> The HTML <track> element adds text tracks (captions, subtitles) to media.
<u> The HTML <u> element marks text with an unarticulated, non-textual annotation.
<ul> The HTML <ul> element represents an unordered list of items.
<var> The HTML <var> element represents a variable in a mathematical or programming context.
<video> The HTML <video> element embeds a video player in the document.
<wbr> The HTML <wbr> element indicates an optional word-break opportunity.

Element Attributes 122

Name Description
abbr Gives a table header cell a short abbreviated label.
accept Filters the file types a file input accepts.
accept-charset Sets the character encodings a form accepts.
action Sets the URL a form submits to.
allow Sets a Permissions Policy for an iframe.
allowfullscreen Lets an iframe go fullscreen.
alt Provides alternative text for an image.
as Declares the type of a preloaded resource.
async Loads and runs a script asynchronously.
autocomplete Controls browser autofill for a field.
autoplay Starts media playback automatically.
blocking Marks a resource as render-blocking.
buffered Reports buffered media ranges (a JS property).
capture Requests media capture from a device camera/mic.
charset Declares the document character encoding.
checked Pre-checks a checkbox or radio button.
cite Cites the source URL of a quote or edit.
cols Sets the visible width of a textarea.
colspan Spans a table cell across columns.
command Declares a built-in button command (invoker commands).
commandfor Targets the element a button command controls.
content Holds the value of a meta declaration.
controls Shows native media playback controls.
coords Sets the coordinates of an image-map area.
crossorigin Sets the CORS mode for fetching the resource.
data Sets the URL of an embedded object.
datetime Gives a machine-readable date/time.
decoding Hints the image decoding strategy.
default Enables a media track by default.
defer Defers script execution until after parsing.
dir Sets the text direction of content.
dirname Submits a field's text direction with the form.
disabled Disables a form control.
download Prompts the browser to download the linked file.
enctype Sets the encoding of submitted form data.
fetchpriority Hints the fetch priority of the resource.
for Links a label to its form control by id.
form Associates a control with a form by id.
formaction Overrides the form action for one submit button.
formenctype Overrides the form encoding for one button.
formmethod Overrides the form method for one submit button.
formnovalidate Skips validation for one submit button.
formtarget Overrides the form target for one button.
headers Links data cells to header cells for accessibility.
height Sets the height of the element in pixels.
high Sets the high boundary of a meter.
href Specifies the URL a hyperlink points to.
hreflang States the language of the linked document.
http-equiv Defines an HTTP-header-like meta directive.
imagesizes Sets the sizes hint for a preloaded image.
imagesrcset Sets a responsive srcset for a preloaded image.
integrity Verifies a resource against a hash (SRI).
ismap Makes an image a server-side image map.
kind Sets the kind of a media text track.
label Labels an option group or option.
label Titles a media text track.
list Connects an input to a datalist of suggestions.
loading Controls eager vs lazy loading of the resource.
loop Replays media from the start when it ends.
low Sets the low boundary of a meter.
max Sets the maximum allowed value.
maxlength Limits the maximum character count.
media Applies the resource to matching media only.
method Sets the HTTP method for form submission.
min Sets the minimum allowed value.
minlength Sets the minimum character count.
multiple Allows multiple values or selections.
muted Mutes the media by default.
name Names a form control for submission.
name Names a metadata value on a meta tag.
nomodule Provides a fallback script for legacy browsers.
novalidate Skips native form validation on submit.
open Shows a details/dialog in its open state.
optimum Sets the optimum value of a meter.
pattern Validates input against a regular expression.
ping Pings URLs when the link is clicked.
placeholder Shows hint text in an empty field.
played Reports played media ranges (a JS property).
playsinline Plays a video inline instead of fullscreen.
popovertarget Makes a button toggle a popover.
popovertargetaction Sets whether a popover button shows, hides or toggles.
poster Sets a placeholder image for a video.
preload Hints how much media to preload.
readonly Makes a field read-only.
referrerpolicy Controls the Referer header sent for the request.
rel Defines the relationship to the linked resource.
required Marks a form control as mandatory.
reversed Counts an ordered list downwards.
rows Sets the visible line count of a textarea.
rowspan Spans a table cell across rows.
sandbox Sandboxes an iframe with opt-in permissions.
scope States what a table header cell labels.
selected Pre-selects a dropdown option.
selectionDirection Direction of the text selection (a JS property).
selectionEnd End of the text selection (a JS property).
selectionStart Start of the text selection (a JS property).
shadowrootclonable Makes a declarative shadow root clonable.
shadowrootdelegatesfocus Delegates focus into a declarative shadow root.
shadowrootmode Declares a declarative shadow root on a template.
shadowrootserializable Makes a declarative shadow root serializable.
shape Sets the shape of an image-map area.
size Sets the visible size of the control.
sizes Defines image display size for srcset selection.
span Spans a col/colgroup across columns.
src Specifies the URL of an embedded resource.
srcdoc Supplies inline HTML for an iframe.
srclang Sets the language of a media text track.
srcset Lists responsive image candidates.
start Sets the start number of an ordered list.
step Sets the value increment for numeric/date inputs.
target Specifies where to open a link or form result.
type Specifies the MIME type of a resource.
type Sets a button's behavior.
type Sets the type of an input control.
type Sets the marker style of an ordered list.
type Sets the MIME type of an embedded object.
usemap Links an image to a client-side image map.
value Sets a control's value.
volume Gets/sets media volume (a JS property).
width Sets the width of the element in pixels.
wrap Controls textarea line wrapping on submit.
xmlns Declares an XML namespace.

Global Attributes 33

Name Description
accesskey Specifies the shortcut key to focus elements in the document.
autocapitalize Controls how on-screen keyboards automatically capitalize text the user enters.
autocorrect Controls whether the browser automatically corrects spelling and punctuation as the user types.
autofocus Automatically moves keyboard focus to the element when the page loads.
class Specifies multiple classnames for an element, often used for styling the element with CSS.
contenteditable Specifies whether the element is editable or not.
data Specifies custom data for an element, you can use multiple data attributes.
dir Specifies the text direction of the elements content.
draggable Specifies whether the element is draggable or not.
enterkeyhint Hints which action label the virtual keyboard should show on its Enter key.
exportparts Forwards the shadow parts of a nested component up through the shadow boundary.
hidden Specifies whether the element is hidden or visible.
id Specifies the unique id for an element, all id's should be unique and not to be reused for multiple elements.
inert Makes an element and its subtree inert: non-interactive, unfocusable, and ignored by assistive tech.
inputmode Hints the type of virtual keyboard to display for an editable field.
is Lets a standard element behave as a registered customized built-in element.
itemid Specifies the unique item id.
itemprop Specifies the property for an item.
itemref Specifies the list of element id's with additional properties.
itemscope Specifies whether an element should be a new item or not.
itemtype Specifies the vocabulary to which the item relates to.
lang Specifies the language of the element.
nonce A single-use cryptographic token a Content-Security-Policy uses to allow a specific inline script or style.
part Exposes an element inside a shadow tree so it can be styled from outside with ::part().
popover Turns an element into a popover shown in the top layer, with built-in light-dismiss.
slot Assigns an element to a named slot in a web component's shadow DOM.
spellcheck Specifies if the elements value should have its spelling and grammar checked.
style Specifies the inline style for the element.
tabindex Specifies the position of the navigation tabbing in the document.
title Specifies a title for the element.
translate Specifies whether the element should be translated or not.
virtualkeyboardpolicy Controls whether the on-screen keyboard appears automatically for a contenteditable element.
writingsuggestions Controls whether the browser shows inline writing suggestions in editable fields.

ARIA 52

Name Description
aria-activedescendant Identifies the currently active descendant in a composite widget that manages focus.
aria-atomic Indicates whether a live region is announced as a whole or only the changed parts.
aria-autocomplete Indicates what kind of autocomplete a text input or combobox provides.
aria-braillelabel Provides a braille-specific accessible name, used only on refreshable braille displays.
aria-brailleroledescription Provides a braille-specific role description, used only on refreshable braille displays.
aria-busy Indicates that an element is being updated and not yet ready to be announced.
aria-checked Indicates the checked state of checkboxes, radios and switches.
aria-colcount Defines the total number of columns in a table, grid or treegrid.
aria-colindex Defines a cell or column's position within the total columns of a table or grid.
aria-colindextext A human-readable text alternative for aria-colindex (ARIA 1.3).
aria-colspan Defines the number of columns a cell spans in a table or grid.
aria-controls Identifies the element(s) whose contents or presence this element controls.
aria-current Marks the current item within a set of related elements, such as the current page in navigation.
aria-describedby Provides an accessible description by referencing the id of one or more elements.
aria-description Provides an accessible description from a string (ARIA 1.3).
aria-details References an element that provides extended, structured details about this element.
aria-disabled Indicates an element is perceivable but disabled, so it is not editable or operable.
aria-errormessage References the element that contains the validation error message for a field.
aria-expanded Indicates whether a collapsible element controlled by this one is expanded or collapsed.
aria-flowto Suggests an alternative reading order by pointing to the next element(s).
aria-haspopup Indicates that an element triggers a popup such as a menu, listbox or dialog.
aria-hidden Hides an element and its subtree from assistive technology (but not visually).
aria-invalid Indicates that the value of a field has failed validation.
aria-keyshortcuts Lists the keyboard shortcuts that activate or focus an element.
aria-label Provides an accessible name for an element using a string of text.
aria-labelledby Names an element by referencing the id of one or more other elements.
aria-level Defines the hierarchical level of an element within a structure.
aria-live Marks a region whose dynamic updates should be announced by assistive technology.
aria-modal Indicates that a dialog blocks interaction with the rest of the page.
aria-multiline Indicates whether a textbox accepts multiple lines of input.
aria-multiselectable Indicates that a widget allows more than one item to be selected.
aria-orientation Indicates whether a widget is oriented horizontally or vertically.
aria-owns Defines a parent/child relationship between elements that the DOM structure does not.
aria-placeholder A short hint shown in an empty input to help the user enter data.
aria-posinset Defines an item's position within a set when not all items are in the DOM.
aria-pressed Indicates the pressed state of a toggle button.
aria-readonly Indicates that the value of a widget is not editable but is otherwise operable.
aria-relevant Specifies which types of changes in a live region should be announced.
aria-required Indicates that user input is required on a widget before submission.
aria-roledescription Provides a human-readable, author-defined description of an element's role.
aria-rowcount Defines the total number of rows in a table, grid or treegrid.
aria-rowindex Defines a row's position within the total rows of a table or grid.
aria-rowindextext A human-readable text alternative for aria-rowindex (ARIA 1.3).
aria-rowspan Defines the number of rows a cell spans in a table or grid.
aria-selected Indicates the selected state of an item in a set such as tabs or options.
aria-setsize Defines the total number of items in a set when not all are in the DOM.
aria-sort Indicates whether a table column is sorted, and in which direction.
aria-valuemax The maximum allowed value of a range widget.
aria-valuemin The minimum allowed value of a range widget.
aria-valuenow The current value of a range widget such as a slider or progress bar.
aria-valuetext A human-readable text alternative for the current value of a range widget.
role Defines the semantic role of an element for assistive technology when no native element conveys it.

Events 113

Name Description
onabort Runs JavaScript when resource loading is aborted.
onafterprint Runs JavaScript after printing.
onanimationcancel Runs JavaScript when a CSS animation is canceled.
onanimationend Runs JavaScript when a CSS animation finishes.
onanimationiteration Runs JavaScript at the end of each CSS animation iteration.
onanimationstart Runs JavaScript when a CSS animation starts.
onauxclick Runs JavaScript when a non-primary mouse button is clicked.
onbeforeinput Runs JavaScript just before editable content changes.
onbeforematch Runs JavaScript before hidden-until-found content is revealed.
onbeforeprint Runs JavaScript before printing.
onbeforetoggle Runs JavaScript just before a popover or <details> toggles.
onbeforeunload Runs JavaScript before the page unloads, to warn about unsaved changes.
onblur Runs JavaScript when the element loses focus.
oncancel Runs JavaScript when a dialog is canceled.
oncanplay Runs JavaScript when media can begin playing.
oncanplaythrough Runs JavaScript when media can play through without stopping.
onchange Runs JavaScript when a control's value is committed.
onclick Runs JavaScript when the element is clicked.
onclose Runs JavaScript when a dialog is closed.
oncontextlost Runs JavaScript when a canvas context is lost.
oncontextmenu Runs JavaScript when the context menu is requested, e.g. on right-click.
oncontextrestored Runs JavaScript when a canvas context is restored.
oncopy Runs JavaScript when content is copied.
oncuechange Runs JavaScript when a media text track's cues change.
oncut Runs JavaScript when content is cut.
ondblclick Runs JavaScript when the element is double-clicked.
ondrag Runs JavaScript repeatedly while an element is dragged.
ondragend Runs JavaScript when a drag ends.
ondragenter Runs JavaScript when a dragged item enters a drop target.
ondragleave Runs JavaScript when a dragged item leaves a drop target.
ondragover Runs JavaScript while a dragged item is over a drop target.
ondragstart Runs JavaScript when a drag begins.
ondrop Runs JavaScript when an item is dropped on the element.
ondurationchange Runs JavaScript when media duration changes.
onemptied Runs JavaScript when media is emptied.
onended Runs JavaScript when media finishes playing.
onerror Runs JavaScript when a resource fails to load.
onfocus Runs JavaScript when the element gains focus.
onformdata Runs JavaScript when form data is being gathered.
ongotpointercapture Runs JavaScript when the element gains pointer capture.
onhashchange Runs JavaScript when the URL hash changes.
oninput Runs JavaScript every time an input value changes.
oninvalid Runs JavaScript when a form control fails validation.
onkeydown Runs JavaScript when a key is pressed down.
onkeypress Runs JavaScript when a character key is pressed (deprecated).
onkeyup Runs JavaScript when a key is released.
onlanguagechange Runs JavaScript when the preferred language changes.
onload Runs JavaScript when the element or page finishes loading.
onloadeddata Runs JavaScript when the first media frame is available.
onloadedmetadata Runs JavaScript when media metadata is available.
onloadstart Runs JavaScript when resource loading starts.
onlostpointercapture Runs JavaScript when the element loses pointer capture.
onmessage Runs JavaScript when a message is received.
onmessageerror Runs JavaScript when a received message fails to deserialize.
onmousedown Runs JavaScript when a mouse button is pressed on the element.
onmouseenter Runs JavaScript when the mouse enters the element (does not bubble).
onmouseleave Runs JavaScript when the mouse leaves the element (does not bubble).
onmousemove Runs JavaScript when the mouse moves over the element.
onmouseout Runs JavaScript when the mouse leaves the element.
onmouseover Runs JavaScript when the mouse enters the element.
onmouseup Runs JavaScript when a mouse button is released on the element.
onoffline Runs JavaScript when the browser goes offline.
ononline Runs JavaScript when the browser comes back online.
onpagehide Runs JavaScript when the page is hidden.
onpagereveal Runs JavaScript when a document is first revealed.
onpageshow Runs JavaScript when the page is shown.
onpageswap Runs JavaScript just before a cross-document navigation swaps the page.
onpaste Runs JavaScript when content is pasted.
onpause Runs JavaScript when media is paused.
onplay Runs JavaScript when media starts playing.
onplaying Runs JavaScript when media begins playing after a stall.
onpointercancel Runs JavaScript when a pointer interaction is canceled.
onpointerdown Runs JavaScript when a pointer is pressed on the element.
onpointerenter Runs JavaScript when a pointer enters the element (does not bubble).
onpointerleave Runs JavaScript when a pointer leaves the element (does not bubble).
onpointermove Runs JavaScript when a pointer moves over the element.
onpointerout Runs JavaScript when a pointer leaves the element.
onpointerover Runs JavaScript when a pointer enters the element.
onpointerup Runs JavaScript when a pointer is released on the element.
onpopstate Runs JavaScript on history navigation.
onprogress Runs JavaScript periodically while a resource loads.
onratechange Runs JavaScript when the playback speed changes.
onrejectionhandled Runs JavaScript when a late promise-rejection handler runs.
onreset Runs JavaScript when a form is reset.
onresize Runs JavaScript when the window is resized.
onscroll Runs JavaScript when the element is scrolled.
onscrollend Runs JavaScript when scrolling ends.
onsearch Runs JavaScript when a search input is submitted or cleared (non-standard).
onsecuritypolicyviolation Runs JavaScript when a CSP violation occurs.
onseeked Runs JavaScript when seeking finishes.
onseeking Runs JavaScript when seeking starts.
onselect Runs JavaScript when text is selected in a field.
onselectionchange Runs JavaScript when the selection changes.
onslotchange Runs JavaScript when a slot's assigned content changes.
onstalled Runs JavaScript when media data stalls.
onstorage Runs JavaScript when storage changes in another tab.
onsubmit Runs JavaScript when a form is submitted.
onsuspend Runs JavaScript when media loading is suspended.
ontimeupdate Runs JavaScript as the media playback position changes.
ontoggle Runs JavaScript when a <details> or popover toggles open/closed.
ontouchcancel Runs JavaScript when a touch is interrupted.
ontouchend Runs JavaScript when a touch ends on the element.
ontouchmove Runs JavaScript when a touch moves on the element.
ontouchstart Runs JavaScript when a touch begins on the element.
ontransitioncancel Runs JavaScript when a CSS transition is canceled.
ontransitionend Runs JavaScript when a CSS transition finishes.
ontransitionrun Runs JavaScript when a CSS transition is created.
ontransitionstart Runs JavaScript when a CSS transition starts.
onunhandledrejection Runs JavaScript when a promise rejection goes unhandled.
onunload Runs JavaScript while the page is unloading (deprecated/discouraged).
onvolumechange Runs JavaScript when volume changes.
onwaiting Runs JavaScript when media is buffering.
onwheel Runs JavaScript when the wheel is scrolled over the element.