File an issue about the selected text
Table
of
contents
-
1
Introduction
-
2
Common
infrastructure
-
3
Semantics,
structure,
and
APIs
of
HTML
documents
-
4
The
elements
of
HTML
-
5
Microdata
-
6
User
interaction
-
7
Loading
Web
pages
-
8
Web
application
APIs
-
9
Communication
-
10
Web
workers
-
11
Web
storage
-
12
The
HTML
syntax
-
13
The
XML
syntax
-
14
Rendering
-
15
Obsolete
features
-
16
IANA
considerations
-
Index
-
References
-
Acknowledgments
Full
table
of
contents
-
1
Introduction
-
1.1
Where
does
this
specification
fit?
-
1.2
Is
this
HTML5?
-
1.3
Background
-
1.4
Audience
-
1.5
Scope
-
1.6
History
-
1.7
Design
notes
-
1.7.1
Serializability
of
script
execution
-
1.7.2
Compliance
with
other
specifications
-
1.7.3
Extensibility
-
1.8
HTML
vs
XML
syntax
-
1.9
Structure
of
this
specification
-
1.9.1
How
to
read
this
specification
-
1.9.2
Typographic
conventions
-
1.10
A
quick
introduction
to
HTML
-
1.10.1
Writing
secure
applications
with
HTML
-
1.10.2
Common
pitfalls
to
avoid
when
using
the
scripting
APIs
-
1.10.3
How
to
catch
mistakes
when
writing
HTML:
validators
and
conformance
checkers
-
1.11
Conformance
requirements
for
authors
-
1.11.1
Presentational
markup
-
1.11.2
Syntax
errors
-
1.11.3
Restrictions
on
content
models
and
on
attribute
values
-
1.12
Suggested
reading
-
2
Common
infrastructure
-
2.1
Terminology
-
2.1.1
Parallelism
-
2.1.2
Resources
-
2.1.3
XML
compatibility
-
2.1.4
DOM
trees
-
2.1.5
Scripting
-
2.1.6
Plugins
-
2.1.7
Character
encodings
-
2.1.8
Conformance
classes
-
2.1.9
Dependencies
-
2.1.10
Extensibility
-
2.1.11
Interactions
with
XPath
and
XSLT
-
2.2
Case-sensitivity
and
string
comparison
-
2.3
Policy-controlled
features
-
2.4
Common
microsyntaxes
-
2.4.1
Common
parser
idioms
-
2.4.2
Boolean
attributes
-
2.4.3
Keywords
and
enumerated
attributes
-
2.4.4
Numbers
-
2.4.4.1
Signed
integers
-
2.4.4.2
Non-negative
integers
-
2.4.4.3
Floating-point
numbers
-
2.4.4.4
Percentages
and
lengths
-
2.4.4.5
Non-zero
percentages
and
lengths
-
2.4.4.6
Lists
of
floating-point
numbers
-
2.4.4.7
Lists
of
dimensions
-
2.4.5
Dates
and
times
-
2.4.5.1
Months
-
2.4.5.2
Dates
-
2.4.5.3
Yearless
dates
-
2.4.5.4
Times
-
2.4.5.5
Local
dates
and
times
-
2.4.5.6
Time
zones
-
2.4.5.7
Global
dates
and
times
-
2.4.5.8
Weeks
-
2.4.5.9
Durations
-
2.4.5.10
Vaguer
moments
in
time
-
2.4.6
Colors
-
2.4.7
Space-separated
tokens
-
2.4.8
Comma-separated
tokens
-
2.4.9
References
-
2.4.10
Media
queries
-
2.5
URLs
-
2.5.1
Terminology
-
2.5.2
Parsing
URLs
-
2.5.3
Dynamic
changes
to
base
URLs
-
2.6
Fetching
resources
-
2.6.1
Terminology
-
2.6.2
Determining
the
type
of
a
resource
-
2.6.3
Extracting
character
encodings
from
meta
elements
-
2.6.4
CORS
settings
attributes
-
2.6.5
Referrer
policy
attributes
-
2.6.6
Nonce
attributes
-
2.6.7
Lazy
loading
attributes
-
2.7
Common
DOM
interfaces
-
2.7.1
Reflecting
content
attributes
in
IDL
attributes
-
2.7.2
Collections
-
2.7.2.1
The
HTMLAllCollection
interface
-
2.7.2.1.1
[[Call]]
(
thisArgument
,
argumentsList
)
-
2.7.2.2
The
HTMLFormControlsCollection
interface
-
2.7.2.3
The
HTMLOptionsCollection
interface
-
2.7.3
The
DOMStringList
interface
-
2.8
Safe
passing
of
structured
data
-
2.8.1
Serializable
objects
-
2.8.2
Transferable
objects
-
2.8.3
StructuredSerializeInternal
(
value
,
forStorage
[
,
memory
]
)
-
2.8.4
StructuredSerialize
(
value
)
-
2.8.5
StructuredSerializeForStorage
(
value
)
-
2.8.6
StructuredDeserialize
(
serialized
,
targetRealm
[
,
memory
]
)
-
2.8.7
StructuredSerializeWithTransfer
(
value
,
transferList
)
-
2.8.8
StructuredDeserializeWithTransfer
(
serializeWithTransferResult
,
targetRealm
)
-
2.8.9
Performing
serialization
and
transferring
from
other
specifications
-
3
Semantics,
structure,
and
APIs
of
HTML
documents
-
3.1
Documents
-
3.1.1
The
Document
object
-
3.1.2
The
DocumentOrShadowRoot
interface
-
3.1.3
Resource
metadata
management
-
3.1.4
DOM
tree
accessors
-
3.2
Elements
-
3.2.1
Semantics
-
3.2.2
Elements
in
the
DOM
-
3.2.3
HTML
element
constructors
-
3.2.4
Element
definitions
-
3.2.4.1
Attributes
-
3.2.5
Content
models
-
3.2.5.1
The
"nothing"
content
model
-
3.2.5.2
Kinds
of
content
-
3.2.5.2.1
Metadata
content
-
3.2.5.2.2
Flow
content
-
3.2.5.2.3
Sectioning
content
-
3.2.5.2.4
Heading
content
-
3.2.5.2.5
Phrasing
content
-
3.2.5.2.6
Embedded
content
-
3.2.5.2.7
Interactive
content
-
3.2.5.2.8
Palpable
content
-
3.2.5.2.9
Script-supporting
elements
-
3.2.5.3
Transparent
content
models
-
3.2.5.4
Paragraphs
-
3.2.6
Global
attributes
-
3.2.6.1
The
title
attribute
-
3.2.6.2
The
lang
and
xml:lang
attributes
-
3.2.6.3
The
translate
attribute
-
3.2.6.4
The
dir
attribute
-
3.2.6.5
The
style
attribute
-
3.2.6.6
Embedding
custom
non-visible
data
with
the
data-*
attributes
-
3.2.7
The
innerText
IDL
attribute
-
3.2.8
Requirements
relating
to
the
bidirectional
algorithm
-
3.2.8.1
Authoring
conformance
criteria
for
bidirectional-algorithm
formatting
characters
-
3.2.8.2
User
agent
conformance
criteria
-
3.2.9
Requirements
related
to
ARIA
and
to
platform
accessibility
APIs
-
4
The
elements
of
HTML
-
4.1
The
document
element
-
4.1.1
The
html
element
-
4.2
Document
metadata
-
4.2.1
The
head
element
-
4.2.2
The
title
element
-
4.2.3
The
base
element
-
4.2.4
The
link
element
-
4.2.4.1
Processing
the
media
attribute
-
4.2.4.2
Processing
the
type
attribute
-
4.2.4.3
Fetching
and
processing
a
resource
from
a
link
element
-
4.2.4.4
Processing
`
Link
`
headers
-
4.2.4.5
Providing
users
with
a
means
to
follow
hyperlinks
created
using
the
link
element
-
4.2.5
The
meta
element
-
4.2.5.1
Standard
metadata
names
-
4.2.5.2
Other
metadata
names
-
4.2.5.3
Pragma
directives
-
4.2.5.4
Specifying
the
document's
character
encoding
-
4.2.6
The
style
element
-
4.2.7
Interactions
of
styling
and
scripting
-
4.3
Sections
-
4.3.1
The
body
element
-
4.3.2
The
article
element
-
4.3.3
The
section
element
-
4.3.4
The
nav
element
-
4.3.5
The
aside
element
-
4.3.6
The
h1
,
h2
,
h3
,
h4
,
h5
,
and
h6
elements
-
4.3.7
The
hgroup
element
-
4.3.8
The
header
element
-
4.3.9
The
footer
element
-
4.3.10
The
address
element
-
4.3.11
Headings
and
sections
-
4.3.11.1
Creating
an
outline
-
4.3.11.2
Sample
outlines
-
4.3.11.3
Exposing
outlines
to
users
-
4.3.12
Usage
summary
-
4.3.12.1
Article
or
section?
-
4.4
Grouping
content
-
4.4.1
The
p
element
-
4.4.2
The
hr
element
-
4.4.3
The
pre
element
-
4.4.4
The
blockquote
element
-
4.4.5
The
ol
element
-
4.4.6
The
ul
element
-
4.4.7
The
menu
element
-
4.4.8
The
li
element
-
4.4.9
The
dl
element
-
4.4.10
The
dt
element
-
4.4.11
The
dd
element
-
4.4.12
The
figure
element
-
4.4.13
The
figcaption
element
-
4.4.14
The
main
element
-
4.4.15
The
div
element
-
4.5
Text-level
semantics
-
4.5.1
The
a
element
-
4.5.2
The
em
element
-
4.5.3
The
strong
element
-
4.5.4
The
small
element
-
4.5.5
The
s
element
-
4.5.6
The
cite
element
-
4.5.7
The
q
element
-
4.5.8
The
dfn
element
-
4.5.9
The
abbr
element
-
4.5.10
The
ruby
element
-
4.5.11
The
rt
element
-
4.5.12
The
rp
element
-
4.5.13
The
data
element
-
4.5.14
The
time
element
-
4.5.15
The
code
element
-
4.5.16
The
var
element
-
4.5.17
The
samp
element
-
4.5.18
The
kbd
element
-
4.5.19
The
sub
and
sup
elements
-
4.5.20
The
i
element
-
4.5.21
The
b
element
-
4.5.22
The
u
element
-
4.5.23
The
mark
element
-
4.5.24
The
bdi
element
-
4.5.25
The
bdo
element
-
4.5.26
The
span
element
-
4.5.27
The
br
element
-
4.5.28
The
wbr
element
-
4.5.29
Usage
summary
-
4.6
Links
-
4.6.1
Introduction
-
4.6.2
Links
created
by
a
and
area
elements
-
4.6.3
API
for
a
and
area
elements
-
4.6.4
Following
hyperlinks
-
4.6.5
Downloading
resources
-
4.6.5.1
Hyperlink
auditing
-
4.6.6
Link
types
-
4.6.6.1
Link
type
"
alternate
"
-
4.6.6.2
Link
type
"
author
"
-
4.6.6.3
Link
type
"
bookmark
"
-
4.6.6.4
Link
type
"
canonical
"
-
4.6.6.5
Link
type
"
dns-prefetch
"
-
4.6.6.6
Link
type
"
external
"
-
4.6.6.7
Link
type
"
help
"
-
4.6.6.8
Link
type
"
icon
"
-
4.6.6.9
Link
type
"
license
"
-
4.6.6.10
Link
type
"
modulepreload
"
-
4.6.6.11
Link
type
"
nofollow
"
-
4.6.6.12
Link
type
"
noopener
"
-
4.6.6.13
Link
type
"
noreferrer
"
-
4.6.6.14
Link
type
"
opener
"
-
4.6.6.15
Link
type
"
pingback
"
-
4.6.6.16
Link
type
"
preconnect
"
-
4.6.6.17
Link
type
"
prefetch
"
-
4.6.6.18
Link
type
"
preload
"
-
4.6.6.19
Link
type
"
prerender
"
-
4.6.6.20
Link
type
"
search
"
-
4.6.6.21
Link
type
"
stylesheet
"
-
4.6.6.22
Link
type
"
tag
"
-
4.6.6.23
Sequential
link
types
-
4.6.6.23.1
Link
type
"
next
"
-
4.6.6.23.2
Link
type
"
prev
"
-
4.6.6.24
Other
link
types
-
4.7
Edits
-
4.7.1
The
ins
element
-
4.7.2
The
del
element
-
4.7.3
Attributes
common
to
ins
and
del
elements
-
4.7.4
Edits
and
paragraphs
-
4.7.5
Edits
and
lists
-
4.7.6
Edits
and
tables
-
4.8
Embedded
content
-
4.8.1
The
picture
element
-
4.8.2
The
source
element
-
4.8.3
The
img
element
-
4.8.4
Images
-
4.8.4.1
Introduction
-
4.8.4.1.1
Adaptive
images
-
4.8.4.2
Attributes
common
to
source
,
img
,
and
link
elements
-
4.8.4.2.1
Srcset
attributes
-
4.8.4.2.2
Sizes
attributes
-
4.8.4.3
Processing
model
-
4.8.4.3.1
When
to
obtain
images
-
4.8.4.3.2
Reacting
to
DOM
mutations
-
4.8.4.3.3
The
list
of
available
images
-
4.8.4.3.4
Decoding
images
-
4.8.4.3.5
Updating
the
image
data
-
4.8.4.3.6
Selecting
an
image
source
-
4.8.4.3.7
Updating
the
source
set
-
4.8.4.3.8
Parsing
a
srcset
attribute
-
4.8.4.3.9
Parsing
a
sizes
attribute
-
4.8.4.3.10
Normalizing
the
source
densities
-
4.8.4.3.11
Reacting
to
environment
changes
-
4.8.4.4
Requirements
for
providing
text
to
act
as
an
alternative
for
images
-
4.8.4.4.1
General
guidelines
-
4.8.4.4.2
A
link
or
button
containing
nothing
but
the
image
-
4.8.4.4.3
A
phrase
or
paragraph
with
an
alternative
graphical
representation:
charts,
diagrams,
graphs,
maps,
illustrations
-
4.8.4.4.4
A
short
phrase
or
label
with
an
alternative
graphical
representation:
icons,
logos
-
4.8.4.4.5
Text
that
has
been
rendered
to
a
graphic
for
typographical
effect
-
4.8.4.4.6
A
graphical
representation
of
some
of
the
surrounding
text
-
4.8.4.4.7
Ancillary
images
-
4.8.4.4.8
A
purely
decorative
image
that
doesn't
add
any
information
-
4.8.4.4.9
A
group
of
images
that
form
a
single
larger
picture
with
no
links
-
4.8.4.4.10
A
group
of
images
that
form
a
single
larger
picture
with
links
-
4.8.4.4.11
A
key
part
of
the
content
-
4.8.4.4.12
An
image
not
intended
for
the
user
-
4.8.4.4.13
An
image
in
an
e-mail
or
private
document
intended
for
a
specific
person
who
is
known
to
be
able
to
view
images
-
4.8.4.4.14
Guidance
for
markup
generators
-
4.8.4.4.15
Guidance
for
conformance
checkers
-
4.8.5
The
iframe
element
-
4.8.6
The
embed
element
-
4.8.7
The
object
element
-
4.8.8
The
param
element
-
4.8.9
The
video
element
-
4.8.10
The
audio
element
-
4.8.11
The
track
element
-
4.8.12
Media
elements
-
4.8.12.1
Error
codes
-
4.8.12.2
Location
of
the
media
resource
-
4.8.12.3
MIME
types
-
4.8.12.4
Network
states
-
4.8.12.5
Loading
the
media
resource
-
4.8.12.6
Offsets
into
the
media
resource
-
4.8.12.7
Ready
states
-
4.8.12.8
Playing
the
media
resource
-
4.8.12.9
Seeking
-
4.8.12.10
Media
resources
with
multiple
media
tracks
-
4.8.12.10.1
AudioTrackList
and
VideoTrackList
objects
-
4.8.12.10.2
Selecting
specific
audio
and
video
tracks
declaratively
-
4.8.12.11
Timed
text
tracks
-
4.8.12.11.1
Text
track
model
-
4.8.12.11.2
Sourcing
in-band
text
tracks
-
4.8.12.11.3
Sourcing
out-of-band
text
tracks
-
4.8.12.11.4
Guidelines
for
exposing
cues
in
various
formats
as
text
track
cues
-
4.8.12.11.5
Text
track
API
-
4.8.12.11.6
Event
handlers
for
objects
of
the
text
track
APIs
-
4.8.12.11.7
Best
practices
for
metadata
text
tracks
-
4.8.12.12
Identifying
a
track
kind
through
a
URL
-
4.8.12.13
User
interface
-
4.8.12.14
Time
ranges
-
4.8.12.15
The
TrackEvent
interface
-
4.8.12.16
Events
summary
-
4.8.12.17
Security
and
privacy
considerations
-
4.8.12.18
Best
practices
for
authors
using
media
elements
-
4.8.12.19
Best
practices
for
implementers
of
media
elements
-
4.8.13
The
map
element
-
4.8.14
The
area
element
-
4.8.15
Image
maps
-
4.8.15.1
Authoring
-
4.8.15.2
Processing
model
-
4.8.16
MathML
-
4.8.17
SVG
-
4.8.18
Dimension
attributes
-
4.9
Tabular
data
-
4.9.1
The
table
element
-
4.9.1.1
Techniques
for
describing
tables
-
4.9.1.2
Techniques
for
table
design
-
4.9.2
The
caption
element
-
4.9.3
The
colgroup
element
-
4.9.4
The
col
element
-
4.9.5
The
tbody
element
-
4.9.6
The
thead
element
-
4.9.7
The
tfoot
element
-
4.9.8
The
tr
element
-
4.9.9
The
td
element
-
4.9.10
The
th
element
-
4.9.11
Attributes
common
to
td
and
th
elements
-
4.9.12
Processing
model
-
4.9.12.1
Forming
a
table
-
4.9.12.2
Forming
relationships
between
data
cells
and
header
cells
-
4.9.13
Examples
-
4.10
Forms
-
4.10.1
Introduction
-
4.10.1.1
Writing
a
form's
user
interface
-
4.10.1.2
Implementing
the
server-side
processing
for
a
form
-
4.10.1.3
Configuring
a
form
to
communicate
with
a
server
-
4.10.1.4
Client-side
form
validation
-
4.10.1.5
Enabling
client-side
automatic
filling
of
form
controls
-
4.10.1.6
Improving
the
user
experience
on
mobile
devices
-
4.10.1.7
The
difference
between
the
field
type,
the
autofill
field
name,
and
the
input
modality
-
4.10.1.8
Date,
time,
and
number
formats
-
4.10.2
Categories
-
4.10.3
The
form
element
-
4.10.4
The
label
element
-
4.10.5
The
input
element
-
4.10.5.1
States
of
the
type
attribute
-
4.10.5.1.1
Hidden
state
(
type=hidden
)
-
4.10.5.1.2
Text
(
type=text
)
state
and
Search
state
(
type=search
)
-
4.10.5.1.3
Telephone
state
(
type=tel
)
-
4.10.5.1.4
URL
state
(
type=url
)
-
4.10.5.1.5
E-mail
state
(
type=email
)
-
4.10.5.1.6
Password
state
(
type=password
)
-
4.10.5.1.7
Date
state
(
type=date
)
-
4.10.5.1.8
Month
state
(
type=month
)
-
4.10.5.1.9
Week
state
(
type=week
)
-
4.10.5.1.10
Time
state
(
type=time
)
-
4.10.5.1.11
Local
Date
and
Time
state
(
type=datetime-local
)
-
4.10.5.1.12
Number
state
(
type=number
)
-
4.10.5.1.13
Range
state
(
type=range
)
-
4.10.5.1.14
Color
state
(
type=color
)
-
4.10.5.1.15
Checkbox
state
(
type=checkbox
)
-
4.10.5.1.16
Radio
Button
state
(
type=radio
)
-
4.10.5.1.17
File
Upload
state
(
type=file
)
-
4.10.5.1.18
Submit
Button
state
(
type=submit
)
-
4.10.5.1.19
Image
Button
state
(
type=image
)
-
4.10.5.1.20
Reset
Button
state
(
type=reset
)
-
4.10.5.1.21
Button
state
(
type=button
)
-
4.10.5.2
Implementation
notes
regarding
localization
of
form
controls
-
4.10.5.3
Common
input
element
attributes
-
4.10.5.3.1
The
maxlength
and
minlength
attributes
-
4.10.5.3.2
The
size
attribute
-
4.10.5.3.3
The
readonly
attribute
-
4.10.5.3.4
The
required
attribute
-
4.10.5.3.5
The
multiple
attribute
-
4.10.5.3.6
The
pattern
attribute
-
4.10.5.3.7
The
min
and
max
attributes
-
4.10.5.3.8
The
step
attribute
-
4.10.5.3.9
The
list
attribute
-
4.10.5.3.10
The
placeholder
attribute
-
4.10.5.4
Common
input
element
APIs
-
4.10.5.5
Common
event
behaviors
-
4.10.6
The
button
element
-
4.10.7
The
select
element
-
4.10.8
The
datalist
element
-
4.10.9
The
optgroup
element
-
4.10.10
The
option
element
-
4.10.11
The
textarea
element
-
4.10.12
The
output
element
-
4.10.13
The
progress
element
-
4.10.14
The
meter
element
-
4.10.15
The
fieldset
element
-
4.10.16
The
legend
element
-
4.10.17
Form
control
infrastructure
-
4.10.17.1
A
form
control's
value
-
4.10.17.2
Mutability
-
4.10.17.3
Association
of
controls
and
forms
-
4.10.18
Attributes
common
to
form
controls
-
4.10.18.1
Naming
form
controls:
the
name
attribute
-
4.10.18.2
Submitting
element
directionality:
the
dirname
attribute
-
4.10.18.3
Limiting
user
input
length:
the
maxlength
attribute
-
4.10.18.4
Setting
minimum
input
length
requirements:
the
minlength
attribute
-
4.10.18.5
Enabling
and
disabling
form
controls:
the
disabled
attribute
-
4.10.18.6
Form
submission
-
4.10.18.7
Autofill
-
4.10.18.7.1
Autofilling
form
controls:
the
autocomplete
attribute
-
4.10.18.7.2
Processing
model
-
4.10.19
APIs
for
the
text
control
selections
-
4.10.20
Constraints
-
4.10.20.1
Definitions
-
4.10.20.2
Constraint
validation
-
4.10.20.3
The
constraint
validation
API
-
4.10.20.4
Security
-
4.10.21
Form
submission
-
4.10.21.1
Introduction
-
4.10.21.2
Implicit
submission
-
4.10.21.3
Form
submission
algorithm
-
4.10.21.4
Constructing
the
entry
list
-
4.10.21.5
Selecting
a
form
submission
encoding
-
4.10.21.6
URL-encoded
form
data
-
4.10.21.7
Multipart
form
data
-
4.10.21.8
Plain
text
form
data
-
4.10.21.9
The
SubmitEvent
interface
-
4.10.21.10
The
FormDataEvent
interface
-
4.10.22
Resetting
a
form
-
4.11
Interactive
elements
-
4.11.1
The
details
element
-
4.11.2
The
summary
element
-
4.11.3
Commands
-
4.11.3.1
Facets
-
4.11.3.2
Using
the
a
element
to
define
a
command
-
4.11.3.3
Using
the
button
element
to
define
a
command
-
4.11.3.4
Using
the
input
element
to
define
a
command
-
4.11.3.5
Using
the
option
element
to
define
a
command
-
4.11.3.6
Using
the
accesskey
attribute
on
a
legend
element
to
define
a
command
-
4.11.3.7
Using
the
accesskey
attribute
to
define
a
command
on
other
elements
-
4.11.4
The
dialog
element
-
4.12
Scripting
-
4.12.1
The
script
element
-
4.12.1.1
Processing
model
-
4.12.1.2
Scripting
languages
-
4.12.1.3
Restrictions
for
contents
of
script
elements
-
4.12.1.4
Inline
documentation
for
external
scripts
-
4.12.1.5
Interaction
of
script
elements
and
XSLT
-
4.12.2
The
noscript
element
-
4.12.3
The
template
element
-
4.12.3.1
Interaction
of
template
elements
with
XSLT
and
XPath
-
4.12.4
The
slot
element
-
4.12.5
The
canvas
element
-
4.12.5.1
The
2D
rendering
context
-
4.12.5.1.1
Implementation
notes
-
4.12.5.1.2
The
canvas
state
-
4.12.5.1.3
Line
styles
-
4.12.5.1.4
Text
styles
-
4.12.5.1.5
Building
paths
-
4.12.5.1.6
Path2D
objects
-
4.12.5.1.7
Transformations
-
4.12.5.1.8
Image
sources
for
2D
rendering
contexts
-
4.12.5.1.9
Fill
and
stroke
styles
-
4.12.5.1.10
Drawing
rectangles
to
the
bitmap
-
4.12.5.1.11
Drawing
text
to
the
bitmap
-
4.12.5.1.12
Drawing
paths
to
the
canvas
-
4.12.5.1.13
Drawing
focus
rings
and
scrolling
paths
into
view
-
4.12.5.1.14
Drawing
images
-
4.12.5.1.15
Pixel
manipulation
-
4.12.5.1.16
Compositing
-
4.12.5.1.17
Image
smoothing
-
4.12.5.1.18
Shadows
-
4.12.5.1.19
Filters
-
4.12.5.1.20
Working
with
externally-defined
SVG
filters
-
4.12.5.1.21
Drawing
model
-
4.12.5.1.22
Best
practices
-
4.12.5.1.23
Examples
-
4.12.5.2
The
ImageBitmap
rendering
context
-
4.12.5.2.1
Introduction
-
4.12.5.2.2
The
ImageBitmapRenderingContext
interface
-
4.12.5.3
The
OffscreenCanvas
interface
-
4.12.5.3.1
The
offscreen
2D
rendering
context
-
4.12.5.4
Color
spaces
and
color
correction
-
4.12.5.5
Serializing
bitmaps
to
a
file
-
4.12.5.6
Security
with
canvas
elements
-
4.13
Custom
elements
-
4.13.1
Introduction
-
4.13.1.1
Creating
an
autonomous
custom
element
-
4.13.1.2
Creating
a
form-associated
custom
element
-
4.13.1.3
Creating
a
customized
built-in
element
-
4.13.1.4
Drawbacks
of
autonomous
custom
elements
-
4.13.1.5
Upgrading
elements
after
their
creation
-
4.13.2
Requirements
for
custom
element
constructors
and
reactions
-
4.13.3
Core
concepts
-
4.13.4
The
CustomElementRegistry
interface
-
4.13.5
Upgrades
-
4.13.6
Custom
element
reactions
-
4.13.7
The
ElementInternals
interface
-
4.14
Common
idioms
without
dedicated
elements
-
4.14.1
Bread
crumb
navigation
-
4.14.2
Tag
clouds
-
4.14.3
Conversations
-
4.14.4
Footnotes
-
4.15
Disabled
elements
-
4.16
Matching
HTML
elements
using
selectors
and
CSS
-
4.16.1
Case-sensitivity
of
the
CSS
'attr()'
function
-
4.16.2
Case-sensitivity
of
selectors
-
4.16.3
Pseudo-classes
-
5
Microdata
-
5.1
Introduction
-
5.1.1
Overview
-
5.1.2
The
basic
syntax
-
5.1.3
Typed
items
-
5.1.4
Global
identifiers
for
items
-
5.1.5
Selecting
names
when
defining
vocabularies
-
5.2
Encoding
microdata
-
5.2.1
The
microdata
model
-
5.2.2
Items
-
5.2.3
Names:
the
itemprop
attribute
-
5.2.4
Values
-
5.2.5
Associating
names
with
items
-
5.2.6
Microdata
and
other
namespaces
-
5.3
Sample
microdata
vocabularies
-
5.3.1
vCard
-
5.3.1.1
Conversion
to
vCard
-
5.3.1.2
Examples
-
5.3.2
vEvent
-
5.3.2.1
Conversion
to
iCalendar
-
5.3.2.2
Examples
-
5.3.3
Licensing
works
-
5.3.3.1
Examples
-
5.4
Converting
HTML
to
other
formats
-
5.4.1
JSON
-
6
User
interaction
-
6.1
The
hidden
attribute
-
6.2
Inert
subtrees
-
6.3
Tracking
user
activation
-
6.3.1
Data
model
-
6.3.2
Processing
model
-
6.3.3
APIs
gated
by
user
activation
-
6.4
Activation
behavior
of
elements
-
6.5
Focus
-
6.5.1
Introduction
-
6.5.2
Data
model
-
6.5.3
The
tabindex
attribute
-
6.5.4
Processing
model
-
6.5.5
Sequential
focus
navigation
-
6.5.6
Focus
management
APIs
-
6.5.7
The
autofocus
attribute
-
6.6
Assigning
keyboard
shortcuts
-
6.6.1
Introduction
-
6.6.2
The
accesskey
attribute
-
6.6.3
Processing
model
-
6.7
Editing
-
6.7.1
Making
document
regions
editable:
The
contenteditable
content
attribute
-
6.7.2
Making
entire
documents
editable:
the
designMode
IDL
attribute
-
6.7.3
Best
practices
for
in-page
editors
-
6.7.4
Editing
APIs
-
6.7.5
Spelling
and
grammar
checking
-
6.7.6
Autocapitalization
-
6.7.7
Input
modalities:
the
inputmode
attribute
-
6.7.8
Input
modalities:
the
enterkeyhint
attribute
-
6.8
Drag
and
drop
-
6.8.1
Introduction
-
6.8.2
The
drag
data
store
-
6.8.3
The
DataTransfer
interface
-
6.8.3.1
The
DataTransferItemList
interface
-
6.8.3.2
The
DataTransferItem
interface
-
6.8.4
The
DragEvent
interface
-
6.8.5
Processing
model
-
6.8.6
Events
summary
-
6.8.7
The
draggable
attribute
-
6.8.8
Security
risks
in
the
drag-and-drop
model
-
7
Loading
Web
pages
-
7.1
Browsing
contexts
-
7.1.1
Creating
browsing
contexts
-
7.1.2
Related
browsing
contexts
-
7.1.2.1
Navigating
related
browsing
contexts
in
the
DOM
-
7.1.3
Security
-
7.1.4
Groupings
of
browsing
contexts
-
7.1.5
Browsing
context
names
-
7.2
Security
infrastructure
for
Window
,
WindowProxy
,
and
Location
objects
-
7.2.1
Integration
with
IDL
-
7.2.2
Shared
internal
slot:
[[CrossOriginPropertyDescriptorMap]]
-
7.2.3
Shared
abstract
operations
-
7.2.3.1
CrossOriginProperties
(
O
)
-
7.2.3.2
CrossOriginPropertyFallback
(
P
)
-
7.2.3.3
IsPlatformObjectSameOrigin
(
O
)
-
7.2.3.4
CrossOriginGetOwnPropertyHelper
(
O
,
P
)
-
7.2.3.5
CrossOriginGet
(
O
,
P
,
Receiver
)
-
7.2.3.6
CrossOriginSet
(
O
,
P
,
V
,
Receiver
)
-
7.2.3.7
CrossOriginOwnPropertyKeys
(
O
)
-
7.3
The
Window
object
-
7.3.1
APIs
for
creating
and
navigating
browsing
contexts
by
name
-
7.3.2
Accessing
other
browsing
contexts
-
7.3.3
Named
access
on
the
Window
object
-
7.3.4
Discarding
browsing
contexts
-
7.3.5
Closing
browsing
contexts
-
7.3.6
Browser
interface
elements
-
7.3.7
Script
settings
for
Window
objects
-
7.4
The
WindowProxy
exotic
object
-
7.4.1
[[GetPrototypeOf]]
(
)
-
7.4.2
[[SetPrototypeOf]]
(
V
)
-
7.4.3
[[IsExtensible]]
(
)
-
7.4.4
[[PreventExtensions]]
(
)
-
7.4.5
[[GetOwnProperty]]
(
P
)
-
7.4.6
[[DefineOwnProperty]]
(
P
,
Desc
)
-
7.4.7
[[Get]]
(
P
,
Receiver
)
-
7.4.8
[[Set]]
(
P
,
V
,
Receiver
)
-
7.4.9
[[Delete]]
(
P
)
-
7.4.10
[[OwnPropertyKeys]]
(
)
-
7.5
Origin
-
7.5.1
Sites
-
7.5.2
Relaxing
the
same-origin
restriction
-
7.6
Sandboxing
-
7.7
Session
history
and
navigation
-
7.7.1
The
session
history
of
browsing
contexts
-
7.7.2
The
History
interface
-
7.7.3
Implementation
notes
for
session
history
-
7.7.4
The
Location
interface
-
7.7.4.1
[[GetPrototypeOf]]
(
)
-
7.7.4.2
[[SetPrototypeOf]]
(
V
)
-
7.7.4.3
[[IsExtensible]]
(
)
-
7.7.4.4
[[PreventExtensions]]
(
)
-
7.7.4.5
[[GetOwnProperty]]
(
P
)
-
7.7.4.6
[[DefineOwnProperty]]
(
P
,
Desc
)
-
7.7.4.7
[[Get]]
(
P
,
Receiver
)
-
7.7.4.8
[[Set]]
(
P
,
V
,
Receiver
)
-
7.7.4.9
[[Delete]]
(
P
)
-
7.7.4.10
[[OwnPropertyKeys]]
(
)
-
7.8
Browsing
the
Web
-
7.8.1
Navigating
across
documents
-
7.8.2
Page
load
processing
model
for
HTML
files
-
7.8.3
Page
load
processing
model
for
XML
files
-
7.8.4
Page
load
processing
model
for
text
files
-
7.8.5
Page
load
processing
model
for
multipart/x-mixed-replace
resources
-
7.8.6
Page
load
processing
model
for
media
-
7.8.7
Page
load
processing
model
for
content
that
uses
plugins
-
7.8.8
Page
load
processing
model
for
inline
content
that
doesn't
have
a
DOM
-
7.8.9
Navigating
to
a
fragment
-
7.8.10
History
traversal
-
7.8.10.1
Persisted
user
state
restoration
-
7.8.10.2
The
PopStateEvent
interface
-
7.8.10.3
The
HashChangeEvent
interface
-
7.8.10.4
The
PageTransitionEvent
interface
-
7.8.11
Unloading
documents
-
7.8.11.1
The
BeforeUnloadEvent
interface
-
7.8.12
Aborting
a
document
load
-
7.9
Offline
Web
applications
-
7.9.1
Introduction
-
7.9.1.1
Supporting
offline
caching
for
legacy
applications
-
7.9.1.2
Events
summary
-
7.9.2
Application
caches
-
7.9.3
The
cache
manifest
syntax
-
7.9.3.1
Some
sample
manifests
-
7.9.3.2
Writing
cache
manifests
-
7.9.3.3
Parsing
cache
manifests
-
7.9.4
Downloading
or
updating
an
application
cache
-
7.9.5
The
application
cache
selection
algorithm
-
7.9.6
Changes
to
the
networking
model
-
7.9.7
Expiring
application
caches
-
7.9.8
Disk
space
-
7.9.9
Security
concerns
with
offline
applications
caches
-
7.9.10
Application
cache
API
-
7.9.11
Browser
state
-
8
Web
application
APIs
-
8.1
Scripting
-
8.1.1
Introduction
-
8.1.2
Enabling
and
disabling
scripting
-
8.1.3
Processing
model
-
8.1.3.1
Definitions
-
8.1.3.2
Fetching
scripts
-
8.1.3.3
Creating
scripts
-
8.1.3.4
Calling
scripts
-
8.1.3.5
Realms,
settings
objects,
and
global
objects
-
8.1.3.5.1
Entry
-
8.1.3.5.2
Incumbent
-
8.1.3.5.3
Current
-
8.1.3.5.4
Relevant
-
8.1.3.6
Killing
scripts
-
8.1.3.7
HostEnqueuePromiseJob(
job
,
realm
)
-
8.1.3.8
Integration
with
the
JavaScript
module
system
-
8.1.3.8.1
HostResolveImportedModule(
referencingScriptOrModule
,
specifier
)
-
8.1.3.8.2
HostImportModuleDynamically(
referencingScriptOrModule
,
specifier
,
promiseCapability
)
-
8.1.3.8.3
HostGetImportMetaProperties(
moduleRecord
)
-
8.1.3.9
Integration
with
the
JavaScript
agent
formalism
-
8.1.3.10
Integration
with
the
JavaScript
agent
cluster
formalism
-
8.1.3.11
Runtime
script
errors
-
8.1.3.11.1
Runtime
script
errors
in
documents
-
8.1.3.11.2
The
ErrorEvent
interface
-
8.1.3.12
Unhandled
promise
rejections
-
8.1.3.12.1
HostPromiseRejectionTracker(
promise
,
operation
)
-
8.1.3.12.2
The
PromiseRejectionEvent
interface
-
8.1.3.13
HostEnsureCanCompileStrings(
callerRealm
,
calleeRealm
)
-
8.1.4
Event
loops
-
8.1.4.1
Definitions
-
8.1.4.2
Queuing
tasks
-
8.1.4.3
Processing
model
-
8.1.4.4
Generic
task
sources
-
8.1.4.5
Dealing
with
the
event
loop
from
other
specifications
-
8.1.5
Events
-
8.1.5.1
Event
handlers
-
8.1.5.2
Event
handlers
on
elements,
Document
objects,
and
Window
objects
-
8.1.5.2.1
IDL
definitions
-
8.1.5.3
Event
firing
-
8.2
The
WindowOrWorkerGlobalScope
mixin
-
8.3
Base64
utility
methods
-
8.4
Dynamic
markup
insertion
-
8.4.1
Opening
the
input
stream
-
8.4.2
Closing
the
input
stream
-
8.4.3
document.write()
-
8.4.4
document.writeln()
-
8.5
DOM
parsing
-
8.6
Timers
-
8.7
Microtask
queuing
-
8.8
User
prompts
-
8.8.1
Simple
dialogs
-
8.8.2
Printing
-
8.9
System
state
and
capabilities
-
8.9.1
The
Navigator
object
-
8.9.1.1
Client
identification
-
8.9.1.2
Language
preferences
-
8.9.1.3
Custom
scheme
handlers:
the
registerProtocolHandler()
method
-
8.9.1.3.1
Security
and
privacy
-
8.9.1.4
Cookies
-
8.9.1.5
Plugins
-
8.10
Images
-
8.11
Animation
frames
-
9
Communication
-
9.1
The
MessageEvent
interface
-
9.2
Server-sent
events
-
9.2.1
Introduction
-
9.2.2
The
EventSource
interface
-
9.2.3
Processing
model
-
9.2.4
Parsing
an
event
stream
-
9.2.5
Interpreting
an
event
stream
-
9.2.6
Authoring
notes
-
9.2.7
Connectionless
push
and
other
features
-
9.2.8
Garbage
collection
-
9.2.9
Implementation
advice
-
9.3
Web
sockets
-
9.3.1
Introduction
-
9.3.2
The
WebSocket
interface
-
9.3.3
Feedback
from
the
protocol
-
9.3.4
Ping
and
Pong
frames
-
9.3.5
The
CloseEvent
interface
-
9.3.6
Garbage
collection
-
9.4
Cross-document
messaging
-
9.4.1
Introduction
-
9.4.2
Security
-
9.4.2.1
Authors
-
9.4.2.2
User
agents
-
9.4.3
Posting
messages
-
9.5
Channel
messaging
-
9.5.1
Introduction
-
9.5.1.1
Examples
-
9.5.1.2
Ports
as
the
basis
of
an
object-capability
model
on
the
Web
-
9.5.1.3
Ports
as
the
basis
of
abstracting
out
service
implementations
-
9.5.2
Message
channels
-
9.5.3
Message
ports
-
9.5.4
Broadcasting
to
many
ports
-
9.5.5
Ports
and
garbage
collection
-
9.6
Broadcasting
to
other
browsing
contexts
-
10
Web
workers
-
10.1
Introduction
-
10.1.1
Scope
-
10.1.2
Examples
-
10.1.2.1
A
background
number-crunching
worker
-
10.1.2.2
Using
a
JavaScript
module
as
a
worker
-
10.1.2.3
Shared
workers
introduction
-
10.1.2.4
Shared
state
using
a
shared
worker
-
10.1.2.5
Delegation
-
10.1.2.6
Providing
libraries
-
10.1.3
Tutorials
-
10.1.3.1
Creating
a
dedicated
worker
-
10.1.3.2
Communicating
with
a
dedicated
worker
-
10.1.3.3
Shared
workers
-
10.2
Infrastructure
-
10.2.1
The
global
scope
-
10.2.1.1
The
WorkerGlobalScope
common
interface
-
10.2.1.2
Dedicated
workers
and
the
DedicatedWorkerGlobalScope
interface
-
10.2.1.3
Shared
workers
and
the
SharedWorkerGlobalScope
interface
-
10.2.2
The
event
loop
-
10.2.3
The
worker's
lifetime
-
10.2.4
Processing
model
-
10.2.5
Runtime
script
errors
-
10.2.6
Creating
workers
-
10.2.6.1
The
AbstractWorker
mixin
-
10.2.6.2
Script
settings
for
workers
-
10.2.6.3
Dedicated
workers
and
the
Worker
interface
-
10.2.6.4
Shared
workers
and
the
SharedWorker
interface
-
10.2.7
Concurrent
hardware
capabilities
-
10.3
APIs
available
to
workers
-
10.3.1
Importing
scripts
and
libraries
-
10.3.2
The
WorkerNavigator
interface
-
10.3.3
The
WorkerLocation
interface
-
11
Web
storage
-
11.1
Introduction
-
11.2
The
API
-
11.2.1
The
Storage
interface
-
11.2.2
The
sessionStorage
attribute
-
11.2.3
The
localStorage
attribute
-
11.2.4
The
storage
event
-
11.2.4.1
The
StorageEvent
interface
-
11.3
Disk
space
-
11.4
Privacy
-
11.4.1
User
tracking
-
11.4.2
Sensitivity
of
data
-
11.5
Security
-
11.5.1
DNS
spoofing
attacks
-
11.5.2
Cross-directory
attacks
-
11.5.3
Implementation
risks
-
12
The
HTML
syntax
-
12.1
Writing
HTML
documents
-
12.1.1
The
DOCTYPE
-
12.1.2
Elements
-
12.1.2.1
Start
tags
-
12.1.2.2
End
tags
-
12.1.2.3
Attributes
-
12.1.2.4
Optional
tags
-
12.1.2.5
Restrictions
on
content
models
-
12.1.2.6
Restrictions
on
the
contents
of
raw
text
and
escapable
raw
text
elements
-
12.1.3
Text
-
12.1.3.1
Newlines
-
12.1.4
Character
references
-
12.1.5
CDATA
sections
-
12.1.6
Comments
-
12.2
Parsing
HTML
documents
-
12.2.1
Overview
of
the
parsing
model
-
12.2.2
Parse
errors
-
12.2.3
The
input
byte
stream
-
12.2.3.1
Parsing
with
a
known
character
encoding
-
12.2.3.2
Determining
the
character
encoding
-
12.2.3.3
Character
encodings
-
12.2.3.4
Changing
the
encoding
while
parsing
-
12.2.3.5
Preprocessing
the
input
stream
-
12.2.4
Parse
state
-
12.2.4.1
The
insertion
mode
-
12.2.4.2
The
stack
of
open
elements
-
12.2.4.3
The
list
of
active
formatting
elements
-
12.2.4.4
The
element
pointers
-
12.2.4.5
Other
parsing
state
flags
-
12.2.5
Tokenization
-
12.2.5.1
Data
state
-
12.2.5.2
RCDATA
state
-
12.2.5.3
RAWTEXT
state
-
12.2.5.4
Script
data
state
-
12.2.5.5
PLAINTEXT
state
-
12.2.5.6
Tag
open
state
-
12.2.5.7
End
tag
open
state
-
12.2.5.8
Tag
name
state
-
12.2.5.9
RCDATA
less-than
sign
state
-
12.2.5.10
RCDATA
end
tag
open
state
-
12.2.5.11
RCDATA
end
tag
name
state
-
12.2.5.12
RAWTEXT
less-than
sign
state
-
12.2.5.13
RAWTEXT
end
tag
open
state
-
12.2.5.14
RAWTEXT
end
tag
name
state
-
12.2.5.15
Script
data
less-than
sign
state
-
12.2.5.16
Script
data
end
tag
open
state
-
12.2.5.17
Script
data
end
tag
name
state
-
12.2.5.18
Script
data
escape
start
state
-
12.2.5.19
Script
data
escape
start
dash
state
-
12.2.5.20
Script
data
escaped
state
-
12.2.5.21
Script
data
escaped
dash
state
-
12.2.5.22
Script
data
escaped
dash
dash
state
-
12.2.5.23
Script
data
escaped
less-than
sign
state
-
12.2.5.24
Script
data
escaped
end
tag
open
state
-
12.2.5.25
Script
data
escaped
end
tag
name
state
-
12.2.5.26
Script
data
double
escape
start
state
-
12.2.5.27
Script
data
double
escaped
state
-
12.2.5.28
Script
data
double
escaped
dash
state
-
12.2.5.29
Script
data
double
escaped
dash
dash
state
-
12.2.5.30
Script
data
double
escaped
less-than
sign
state
-
12.2.5.31
Script
data
double
escape
end
state
-
12.2.5.32
Before
attribute
name
state
-
12.2.5.33
Attribute
name
state
-
12.2.5.34
After
attribute
name
state
-
12.2.5.35
Before
attribute
value
state
-
12.2.5.36
Attribute
value
(double-quoted)
state
-
12.2.5.37
Attribute
value
(single-quoted)
state
-
12.2.5.38
Attribute
value
(unquoted)
state
-
12.2.5.39
After
attribute
value
(quoted)
state
-
12.2.5.40
Self-closing
start
tag
state
-
12.2.5.41
Bogus
comment
state
-
12.2.5.42
Markup
declaration
open
state
-
12.2.5.43
Comment
start
state
-
12.2.5.44
Comment
start
dash
state
-
12.2.5.45
Comment
state
-
12.2.5.46
Comment
less-than
sign
state
-
12.2.5.47
Comment
less-than
sign
bang
state
-
12.2.5.48
Comment
less-than
sign
bang
dash
state
-
12.2.5.49
Comment
less-than
sign
bang
dash
dash
state
-
12.2.5.50
Comment
end
dash
state
-
12.2.5.51
Comment
end
state
-
12.2.5.52
Comment
end
bang
state
-
12.2.5.53
DOCTYPE
state
-
12.2.5.54
Before
DOCTYPE
name
state
-
12.2.5.55
DOCTYPE
name
state
-
12.2.5.56
After
DOCTYPE
name
state
-
12.2.5.57
After
DOCTYPE
public
keyword
state
-
12.2.5.58
Before
DOCTYPE
public
identifier
state
-
12.2.5.59
DOCTYPE
public
identifier
(double-quoted)
state
-
12.2.5.60
DOCTYPE
public
identifier
(single-quoted)
state
-
12.2.5.61
After
DOCTYPE
public
identifier
state
-
12.2.5.62
Between
DOCTYPE
public
and
system
identifiers
state
-
12.2.5.63
After
DOCTYPE
system
keyword
state
-
12.2.5.64
Before
DOCTYPE
system
identifier
state
-
12.2.5.65
DOCTYPE
system
identifier
(double-quoted)
state
-
12.2.5.66
DOCTYPE
system
identifier
(single-quoted)
state
-
12.2.5.67
After
DOCTYPE
system
identifier
state
-
12.2.5.68
Bogus
DOCTYPE
state
-
12.2.5.69
CDATA
section
state
-
12.2.5.70
CDATA
section
bracket
state
-
12.2.5.71
CDATA
section
end
state
-
12.2.5.72
Character
reference
state
-
12.2.5.73
Named
character
reference
state
-
12.2.5.74
Ambiguous
ampersand
state
-
12.2.5.75
Numeric
character
reference
state
-
12.2.5.76
Hexadecimal
character
reference
start
state
-
12.2.5.77
Decimal
character
reference
start
state
-
12.2.5.78
Hexadecimal
character
reference
state
-
12.2.5.79
Decimal
character
reference
state
-
12.2.5.80
Numeric
character
reference
end
state
-
12.2.6
Tree
construction
-
12.2.6.1
Creating
and
inserting
nodes
-
12.2.6.2
Parsing
elements
that
contain
only
text
-
12.2.6.3
Closing
elements
that
have
implied
end
tags
-
12.2.6.4
The
rules
for
parsing
tokens
in
HTML
content
-
12.2.6.4.1
The
"initial"
insertion
mode
-
12.2.6.4.2
The
"before
html"
insertion
mode
-
12.2.6.4.3
The
"before
head"
insertion
mode
-
12.2.6.4.4
The
"in
head"
insertion
mode
-
12.2.6.4.5
The
"in
head
noscript"
insertion
mode
-
12.2.6.4.6
The
"after
head"
insertion
mode
-
12.2.6.4.7
The
"in
body"
insertion
mode
-
12.2.6.4.8
The
"text"
insertion
mode
-
12.2.6.4.9
The
"in
table"
insertion
mode
-
12.2.6.4.10
The
"in
table
text"
insertion
mode
-
12.2.6.4.11
The
"in
caption"
insertion
mode
-
12.2.6.4.12
The
"in
column
group"
insertion
mode
-
12.2.6.4.13
The
"in
table
body"
insertion
mode
-
12.2.6.4.14
The
"in
row"
insertion
mode
-
12.2.6.4.15
The
"in
cell"
insertion
mode
-
12.2.6.4.16
The
"in
select"
insertion
mode
-
12.2.6.4.17
The
"in
select
in
table"
insertion
mode
-
12.2.6.4.18
The
"in
template"
insertion
mode
-
12.2.6.4.19
The
"after
body"
insertion
mode
-
12.2.6.4.20
The
"in
frameset"
insertion
mode
-
12.2.6.4.21
The
"after
frameset"
insertion
mode
-
12.2.6.4.22
The
"after
after
body"
insertion
mode
-
12.2.6.4.23
The
"after
after
frameset"
insertion
mode
-
12.2.6.5
The
rules
for
parsing
tokens
in
foreign
content
-
12.2.7
The
end
-
12.2.8
Coercing
an
HTML
DOM
into
an
infoset
-
12.2.9
An
introduction
to
error
handling
and
strange
cases
in
the
parser
-
12.2.9.1
Misnested
tags:
<b><i></b></i>
-
12.2.9.2
Misnested
tags:
<b><p></b></p>
-
12.2.9.3
Unexpected
markup
in
tables
-
12.2.9.4
Scripts
that
modify
the
page
as
it
is
being
parsed
-
12.2.9.5
The
execution
of
scripts
that
are
moving
across
multiple
documents
-
12.2.9.6
Unclosed
formatting
elements
-
12.3
Serializing
HTML
fragments
-
12.4
Parsing
HTML
fragments
-
12.5
Named
character
references
-
13
The
XML
syntax
-
13.1
Writing
documents
in
the
XML
syntax
-
13.2
Parsing
XML
documents
-
13.3
Serializing
XML
fragments
-
13.4
Parsing
XML
fragments
-
14
Rendering
-
14.1
Introduction
-
14.2
The
CSS
user
agent
style
sheet
and
presentational
hints
-
14.3
Non-replaced
elements
-
14.3.1
Hidden
elements
-
14.3.2
The
page
-
14.3.3
Flow
content
-
14.3.4
Phrasing
content
-
14.3.5
Bidirectional
text
-
14.3.6
Quotes
-
14.3.7
Sections
and
headings
-
14.3.8
Lists
-
14.3.9
Tables
-
14.3.10
Margin
collapsing
quirks
-
14.3.11
Form
controls
-
14.3.12
The
hr
element
-
14.3.13
The
fieldset
and
legend
elements
-
14.4
Replaced
elements
-
14.4.1
Embedded
content
-
14.4.2
Images
-
14.4.3
Attributes
for
embedded
content
and
images
-
14.4.4
Image
maps
-
14.5
Widgets
-
14.5.1
Introduction
-
14.5.2
Button
layout
-
14.5.3
The
button
element
-
14.5.4
The
details
and
summary
elements
-
14.5.5
The
input
element
as
a
text
entry
widget
-
14.5.6
The
input
element
as
domain-specific
widgets
-
14.5.7
The
input
element
as
a
range
control
-
14.5.8
The
input
element
as
a
color
well
-
14.5.9
The
input
element
as
a
checkbox
and
radio
button
widgets
-
14.5.10
The
input
element
as
a
file
upload
control
-
14.5.11
The
input
element
as
a
button
-
14.5.12
The
marquee
element
-
14.5.13
The
meter
element
-
14.5.14
The
progress
element
-
14.5.15
The
select
element
-
14.5.16
The
textarea
element
-
14.6
Frames
and
framesets
-
14.7
Interactive
media
-
14.7.1
Links,
forms,
and
navigation
-
14.7.2
The
title
attribute
-
14.7.3
Editing
hosts
-
14.7.4
Text
rendered
in
native
user
interfaces
-
14.8
Print
media
-
14.9
Unstyled
XML
documents
-
15
Obsolete
features
-
15.1
Obsolete
but
conforming
features
-
15.1.1
Warnings
for
obsolete
but
conforming
features
-
15.2
Non-conforming
features
-
15.3
Requirements
for
implementations
-
15.3.1
The
marquee
element
-
15.3.2
Frames
-
15.3.3
Other
elements,
attributes
and
APIs
-
16
IANA
considerations
-
16.1
text/html
-
16.2
multipart/x-mixed-replace
-
16.3
application/xhtml+xml
-
16.4
text/cache-manifest
-
16.5
text/ping
-
16.6
application/microdata+json
-
16.7
text/event-stream
-
16.8
`
Ping-From
`
-
16.9
`
Ping-To
`
-
16.10
`
Refresh
`
-
16.11
`
Last-Event-ID
`
-
16.12
web+
scheme
prefix
-
Index
-
Elements
-
Element
content
categories
-
Attributes
-
Element
Interfaces
-
All
Interfaces
-
Events
-
MIME
Types
-
References
-
Acknowledgments