An asterisk (*) in a cell indicates that the actual rules are more complicated than indicated in the table above.
† Categories in the "Parents" column refer to parents that list the given categories in their content model, not to elements that themselves are in those categories. For example, the a
element's "Parents" column says "phrasing", so any element whose content model contains the "phrasing" category could be a parent of an a
element. Since the "flow" category includes all the "phrasing" elements, that means the address
element could be a parent to an a
element.
Attribute | Element(s) | Description | Value |
---|---|---|---|
accept |
input |
Hint for expected file type in file upload controls | Set of comma-separated tokens* consisting of valid MIME types with no parameters or audio/* , video/* , or image/* |
accept-charset |
form |
Character encodings to use for form submission | Ordered set of unique space-separated tokens, ASCII case-insensitive, consisting of preferred MIME names of ASCII-compatible character encodings* |
accesskey |
HTML elements | Keyboard shortcut to activate or focus element | Ordered set of unique space-separated tokens, case-sensitive, consisting of one Unicode code point in length |
action |
form |
URL to use for form submission | Valid URL potentially surrounded by spaces |
alt |
area ; img ; input |
Replacement text for use when images are not available | Text* |
async |
script |
Execute script asynchronously | Boolean attribute |
autocomplete |
form ; input |
Prevent the user agent from providing autocompletions for the form control(s) | "on "; "off " |
autofocus |
button ; input ; keygen ; select ; textarea |
Automatically focus the form control when the page is loaded | Boolean attribute |
autoplay |
audio ; video |
Hint that the media resource can be started automatically when the page is loaded | Boolean attribute |
border |
border |
Explicit indication that the table element is not being used for layout purposes |
The empty string, or "1 " |
challenge |
keygen |
String to package with the generated and signed public key | Text |
charset |
meta |
Character encoding declaration | Preferred MIME name of an encoding* |
charset |
script |
Character encoding of the external script resource | Preferred MIME name of an encoding* |
checked |
command ; input |
Whether the command or control is checked | Boolean attribute |
cite |
blockquote ; del ; ins ; q |
Link to the source of the quotation or more information about the edit | Valid URL potentially surrounded by spaces |
class |
HTML elements | Classes to which the element belongs | Set of space-separated tokens |
cols |
textarea |
Maximum number of characters per line | Valid non-negative integer greater than zero |
colspan |
td ; th |
Number of columns that the cell is to span | Valid non-negative integer greater than zero |
content |
meta |
Value of the element | Text* |
contenteditable |
HTML elements | Whether the element is editable | "true "; "false " |
contextmenu |
HTML elements | The element's context menu | ID* |
controls |
audio ; video |
Show user agent controls | Boolean attribute |
coords |
area |
Coordinates for the shape to be created in an image map | Valid list of integers* |
data |
object |
Address of the resource | Valid non-empty URL potentially surrounded by spaces |
datetime |
del ; ins |
Date and (optionally) time of the change | Valid date string with optional time |
datetime |
time |
Value of the element | Valid date or time string* |
default |
track |
Enable the track if no other text track is more suitable. | Boolean attribute |
defer |
script |
Defer script execution | Boolean attribute |
dir |
HTML elements | The text directionality of the element | "ltr "; "rtl " |
dirname |
input ; textarea |
Name of form field to use for sending the element's directionality in form submission | Text* |
disabled |
button ; command ; fieldset ; input ; keygen ; optgroup ; option ; select ; textarea |
Whether the form control is disabled | Boolean attribute |
draggable |
HTML elements | Whether the element is draggable | "true "; "false " |
dropzone |
HTML elements | Accepted item types for drag-and-drop | Unordered set of unique space-separated tokens, ASCII case-insensitive, consisting of accepted types and drag feedback* |
enctype |
form |
Form data set encoding type to use for form submission | "application/x-www-form-urlencoded "; "multipart/form-data "; "text/plain " |
for |
label |
Associate the label with form control | ID* |
for |
output |
Specifies controls from which the output was calculated | Unordered set of unique space-separated tokens, case-sensitive, consisting of IDs* |
form |
button ; fieldset ; input ; keygen ; label ; meter ; object ; output ;
progress ; select ; textarea |
Associates the control with a form element |
ID* |
formaction |
button ; input |
URL to use for form submission | Valid URL potentially surrounded by spaces |
formenctype |
button ; input |
Form data set encoding type to use for form submission | "application/x-www-form-urlencoded "; "multipart/form-data "; "text/plain " |
formmethod |
button ; input |
HTTP method to use for form submission | "GET "; "POST " |
formnovalidate |
button ; input |
Bypass form control validation for form submission | Boolean attribute |
formtarget |
button ; input |
Browsing context for form submission | Valid browsing context name or keyword |
headers |
td ; th |
The header cells for this cell | Unordered set of unique space-separated tokens, case-sensitive, consisting of IDs* |
height |
canvas ; embed ; iframe ; img ; input ; object ; video |
Vertical dimension | Valid non-negative integer |
hidden |
Whether the element is relevant | Boolean attribute | |
high |
meter |
Low limit of high range | Valid floating point number* |
href |
a ; area |
Address of the hyperlink | Valid URL potentially surrounded by spaces |
href |
link |
Address of the hyperlink | Valid non-empty URL potentially surrounded by spaces |
href |
base |
Document base URL | Valid URL potentially surrounded by spaces |
hreflang |
a ; area ; link |
Language of the linked resource | Valid BCP 47 language tag |
http-equiv |
meta |
Pragma directive | Text* |
icon |
command |
Icon for the command | Valid non-empty URL potentially surrounded by spaces |
id |
HTML elements | The element's ID | Text* |
ismap |
img |
Whether the image is a server-side image map | Boolean attribute |
keytype |
keygen |
The type of cryptographic key to generate | Text* |
kind |
track |
The type of text track | "subtitles "; "captions "; "descriptions "; "chapters "; "metadata " |
label |
command ; menu ; optgroup ; option ; track |
User-visible label | Text |
lang |
HTML elements | Language of the element | Valid BCP 47 language tag or the empty string |
list |
input |
List of autocomplete options | ID* |
loop |
audio ; video |
Whether to loop the media resource | Boolean attribute |
low |
meter |
High limit of low range | Valid floating point number* |
manifest |
html |
Application cache manifest | Valid non-empty URL potentially surrounded by spaces |
max |
input |
Maximum value | varies* |
max |
meter ; progress |
Upper bound of range | Valid floating point number* |
maxlength |
input ; textarea |
Maximum length of value | Valid non-negative integer |
media |
a ; area ; link ; source ; style |
Applicable media | Valid media query |
mediagroup |
audio ; video |
Groups media elements together with an implicit MediaController |
Text |
method |
form |
HTTP method to use for form submission | "GET "; "POST " |
min |
input |
Minimum value | varies* |
min |
meter |
Lower bound of range | Valid floating point number* |
multiple |
input ; select |
Whether to allow multiple values | Boolean attribute |
name |
button ; fieldset ; input ; keygen ; output ; select ; textarea |
Name of form control to use for form submission and in the form.elements API |
Text* |
name |
form |
Name of form to use in the document.forms API |
Text* |
name |
iframe ; object |
Name of nested browsing context | Valid browsing context name or keyword |
name |
map |
Name of image map to reference from the usemap attribute |
Text* |
name |
meta |
Metadata name | Text* |
name |
param |
Name of parameter | Text |
novalidate |
form |
Bypass form control validation for form submission | Boolean attribute |
open |
details |
Whether the details are visible | Boolean attribute |
optimum |
meter |
Optimum value in gauge | Valid floating point number* |
pattern |
input |
Pattern to be matched by the form control's value | Regular expression matching the JavaScript Pattern production |
placeholder |
input ; textarea |
User-visible label to be placed within the form control | Text* |
poster |
video |
Poster frame to show prior to video playback | Valid non-empty URL potentially surrounded by spaces |
preload |
audio ; video |
Hints how much buffering the media resource will likely need | "none "; "metadata "; "auto " |
pubdate |
time |
Whether the element's value represents a publication time for the nearest article or body |
Boolean attribute |
radiogroup |
command |
Name of group of commands to treat as a radio button group | Text |
readonly |
input ; textarea |
Whether to allow the value to be edited by the user | Boolean attribute |
rel |
a ; area ; link |
Relationship between the document containing the hyperlink and the destination resource | Set of space-separated tokens* |
required |
input ; select ; textarea |
Whether the control is required for form submission | Boolean attribute |
reversed |
ol |
Number the list backwards | Boolean attribute |
rows |
textarea |
Number of lines to show | Valid non-negative integer greater than zero |
rowspan |
td ; th |
Number of rows that the cell is to span | Valid non-negative integer |
sandbox |
iframe |
Security rules for nested content | Unordered set of unique space-separated tokens, ASCII case-insensitive, consisting of "allow-same-origin ", "allow-forms ", and "allow-scripts " |
spellcheck |
HTML elements | Whether the element is to have its spelling and grammar checked | "true "; "false " |
scope |
th |
Specifies which cells the header cell applies to | "row "; "col "; "rowgroup "; "colgroup " |
scoped |
style |
Whether the styles apply to the entire document or just the parent subtree | Boolean attribute |
seamless |
iframe |
Whether to apply the document's styles to the nested content | Boolean attribute |
selected |
option |
Whether the option is selected by default | Boolean attribute |
shape |
area |
The kind of shape to be created in an image map | "circle "; "default "; "poly "; "rect " |
size |
input ; select |
Size of the control | Valid non-negative integer greater than zero |
sizes |
link |
Sizes of the icons (for rel ="icon ") |
Unordered set of unique space-separated tokens, ASCII case-insensitive, consisting of sizes* |
span |
col ; colgroup |
Number of columns spanned by the element | Valid non-negative integer greater than zero |
src |
audio ; embed ; iframe ; img ; input ; script ; source ; track ; video |
Address of the resource | Valid non-empty URL potentially surrounded by spaces |
srcdoc |
iframe |
A document to render in the iframe |
The source of an iframe srcdoc document* |
srclang |
track |
Language of the text track | Valid BCP 47 language tag |
start |
ol |
Ordinal value of the first item | Valid integer |
step |
input |
Granularity to be matched by the form control's value | Valid floating point number greater than zero, or "any " |
style |
HTML elements | Presentational and formatting instructions | CSS declarations* |
tabindex |
HTML elements | Whether the element is focusable, and the relative order of the element for the purposes of sequential focus navigation | Valid integer |
target |
a ; area |
Browsing context for hyperlink navigation | Valid browsing context name or keyword |
target |
base |
Default browsing context for hyperlink navigation and form submission | Valid browsing context name or keyword |
target |
form |
Browsing context for form submission | Valid browsing context name or keyword |
title |
HTML elements | Advisory information for the element | Text |
title |
abbr ; dfn |
Full term or expansion of abbreviation | Text |
title |
command |
Hint describing the command | Text |
title |
link |
Title of the link | Text |
title |
link ; style |
Alternative style sheet set name | Text |
type |
a ; area ; link |
Hint for the type of the referenced resource | Valid MIME type |
type |
button |
Type of button | "submit "; "reset "; "button " |
type |
button ; input |
Type of form control | input type keyword |
type |
command |
Type of command | "command "; "checkbox "; "radio " |
type |
embed ; object ; script ; source ; style |
Type of embedded resource | Valid MIME type |
type |
menu |
Type of menu | "context "; "toolbar " |
usemap |
img ; object |
Name of image map to use | Valid hash-name reference* |
value |
button ; option |
Value to be used for form submission | Text |
value |
input |
Value of the form control | varies* |
value |
li |
Ordinal value of the list item | Valid integer |
value |
meter ; progress |
Current value of the element | Valid floating point number |
value |
param |
Value of parameter | Text |
width |
canvas ; embed ; iframe ; img ; input ; object ; video |
Horizontal dimension | Valid non-negative integer |
wrap |
textarea |
How the value of the form control is to be wrapped for form submission | "soft "; "hard " |
An asterisk (*) in a cell indicates that the actual rules are more complicated than indicated in the table above.
Event | Interface | Description |
---|---|---|
DOMContentLoaded |
Event |
Fired at the Document once it and its scripts have loaded, without waiting for other subresources |
abort |
Event |
Fired at the Window when the download was aborted by the user |
afterprint |
Event |
Fired at the Window after printing |
beforeprint |
Event |
Fired at the Window before printing |
beforeunload |
BeforeUnloadEvent |
Fired at the Window when the page is about to be unloaded, in case the page would like to show a warning prompt |
blur |
Event |
Fired at nodes losing focus |
change |
Event |
Fired at controls when the user commits a value change |
click |
Event |
Fired at an element before its activation behavior is run |
contextmenu |
Event |
Fired at elements when the user requests their context menu |
error |
Event |
Fired at elements when network and script errors occur |
focus |
Event |
Fired at nodes gaining focus |
hashchange |
HashChangeEvent |
Fired at the Window when the fragment identifier part of the document's current address changes |
input |
Event |
Fired at controls when the user changes the value |
invalid |
Event |
Fired at controls during form validation if they do not satisfy their constraints |
load |
Event |
Fired at the Window when the document has finished loading; fired at an element containing a resource (e.g. img , embed ) when its resource has finished loading |
message |
MessageEvent |
Fired at an object when the object receives a message |
offline |
Event |
Fired at the Window when the network connections fails |
online |
Event |
Fired at the Window when the network connections returns |
pagehide |
PageTransitionEvent |
Fired at the Window when the page's entry in the session history stops being the current entry |
pageshow |
PageTransitionEvent |
Fired at the Window when the page's entry in the session history becomes the current entry |
popstate |
PopStateEvent |
Fired at the Window when the user navigates the session history |
readystatechange |
Event |
Fired at the Document when it finishes parsing and again when all its subresources have finished loading |
reset |
Event |
Fired at a form element when it is reset |
show |
Event |
Fired at a menu element when it is shown as a context menu |
submit |
Event |
Fired at a form element when it is submitted |
unload |
Event |
Fired at the Window object when the page is going away |
See also media element events, application cache events, and drag-and-drop events.