[html5] r8741 - [e] (0) Try to explain why postMessage()'s privacy implications aren't actually [...]
whatwg at whatwg.org
whatwg at whatwg.org
Wed Sep 3 16:43:19 PDT 2014
Author: ianh
Date: 2014-09-03 16:43:15 -0700 (Wed, 03 Sep 2014)
New Revision: 8741
Modified:
complete.html
index
source
Log:
[e] (0) Try to explain why postMessage()'s privacy implications aren't actually anything new
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=26305
Affected topics: DOM APIs, HTML
Modified: complete.html
===================================================================
--- complete.html 2014-09-03 22:52:01 UTC (rev 8740)
+++ complete.html 2014-09-03 23:43:15 UTC (rev 8741)
@@ -327,7 +327,7 @@
<div id=configUI></div>
<h2 id=contents class="no-num no-toc">Table of contents</h2>
- <ol class=toc><li><a href=#introduction>1 Introduction</a><ol><li><a href=#abstract>1.1 Where does this specification fit?</a><li><a href=#is-this-html5?>1.2 Is this HTML5?</a><li><a href=#background>1.3 Background</a><li><a href=#audience>1.4 Audience</a><li><a href=#scope>1.5 Scope</a><li><a href=#history-2>1.6 History</a><li><a href=#design-notes>1.7 Design notes</a><ol><li><a href=#serialisability-of-script-execution>1.7.1 Serialisability of script execution</a><li><a href=#compliance-with-other-specifications>1.7.2 Compliance with other specifications</a><li><a href=#extensibility>1.7.3 Extensibility</a></ol><li><a href=#html-vs-xhtml>1.8 HTML vs XHTML</a><li><a href=#structure-of-this-specification>1.9 Structure of this specification</a><ol><li><a href=#how-to-read-this-specification>1.9.1 How to read this specification</a><li><a href=#typographic-conventions>1.9.2 Typographic conventions</a></ol><li><a href=#fingerprint>1.10 Privacy concerns</a><li><a href=#a-quick-
introduction-to-html>1.11 A quick introduction to HTML</a><ol><li><a href=#writing-secure-applications-with-html>1.11.1 Writing secure applications with HTML</a><li><a href=#common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to avoid when using the scripting APIs</a><li><a href=#how-to-catch-mistakes-when-writing-html:-validators-and-conformance-checkers>1.11.3 How to catch mistakes when writing HTML: validators and conformance checkers</a></ol><li><a href=#conformance-requirements-for-authors>1.12 Conformance requirements for authors</a><ol><li><a href=#presentational-markup>1.12.1 Presentational markup</a><li><a href=#syntax-errors>1.12.2 Syntax errors</a><li><a href=#restrictions-on-content-models-and-on-attribute-values>1.12.3 Restrictions on content models and on attribute values</a></ol><li><a href=#suggested-reading>1.13 Suggested reading</a></ol><li><a href=#infrastructure>2 Common infrastructure</a><ol><li><a href=#terminology>2.1 Terminol
ogy</a><ol><li><a href=#resources>2.1.1 Resources</a><li><a href=#xml>2.1.2 XML</a><li><a href=#dom-trees>2.1.3 DOM trees</a><li><a href=#scripting-2>2.1.4 Scripting</a><li><a href=#plugins>2.1.5 Plugins</a><li><a href=#encoding-terminology>2.1.6 Character encodings</a></ol><li><a href=#conformance-requirements>2.2 Conformance requirements</a><ol><li><a href=#conformance-classes>2.2.1 Conformance classes</a><li><a href=#dependencies>2.2.2 Dependencies</a><li><a href=#extensibility-2>2.2.3 Extensibility</a><li><a href=#interactions-with-xpath-and-xslt>2.2.4 Interactions with XPath and XSLT</a></ol><li><a href=#case-sensitivity-and-string-comparison>2.3 Case-sensitivity and string comparison</a><li><a href=#common-microsyntaxes>2.4 Common microsyntaxes</a><ol><li><a href=#common-parser-idioms>2.4.1 Common parser idioms</a><li><a href=#boolean-attributes>2.4.2 Boolean attributes</a><li><a href=#keywords-and-enumerated-attributes>2.4.3 Keywords and enumerated attributes</a><li><
a href=#numbers>2.4.4 Numbers</a><ol><li><a href=#signed-integers>2.4.4.1 Signed integers</a><li><a href=#non-negative-integers>2.4.4.2 Non-negative integers</a><li><a href=#floating-point-numbers>2.4.4.3 Floating-point numbers</a><li><a href=#percentages-and-dimensions>2.4.4.4 Percentages and lengths</a><li><a href=#lists-of-integers>2.4.4.5 Lists of integers</a><li><a href=#lists-of-dimensions>2.4.4.6 Lists of dimensions</a></ol><li><a href=#dates-and-times>2.4.5 Dates and times</a><ol><li><a href=#months>2.4.5.1 Months</a><li><a href=#dates>2.4.5.2 Dates</a><li><a href=#yearless-dates>2.4.5.3 Yearless dates</a><li><a href=#times>2.4.5.4 Times</a><li><a href=#local-dates-and-times>2.4.5.5 Local dates and times</a><li><a href=#time-zones>2.4.5.6 Time zones</a><li><a href=#global-dates-and-times>2.4.5.7 Global dates and times</a><li><a href=#weeks>2.4.5.8 Weeks</a><li><a href=#durations>2.4.5.9 Durations</a><li><a href=#vaguer-moments-in-time>2.4.5.10 Vaguer moments in time<
/a></ol><li><a href=#colours>2.4.6 Colours</a><li><a href=#space-separated-tokens>2.4.7 Space-separated tokens</a><li><a href=#comma-separated-tokens>2.4.8 Comma-separated tokens</a><li><a href=#syntax-references>2.4.9 References</a><li><a href=#mq>2.4.10 Media queries</a></ol><li><a href=#urls>2.5 URLs</a><ol><li><a href=#terminology-2>2.5.1 Terminology</a><li><a href=#resolving-urls>2.5.2 Resolving URLs</a><li><a href=#dynamic-changes-to-base-urls>2.5.3 Dynamic changes to base URLs</a></ol><li><a href=#fetching-resources>2.6 Fetching resources</a><ol><li><a href=#terminology-3>2.6.1 Terminology</a><li><a href=#processing-model>2.6.2 Processing model</a><li><a href=#encrypted-http-and-related-security-concerns>2.6.3 Encrypted HTTP and related security concerns</a><li><a href=#content-type-sniffing>2.6.4 Determining the type of a resource</a><li><a href=#extracting-character-encodings-from-meta-elements>2.6.5 Extracting character encodings from <code>meta</code> elements</a>
<li><a href=#cors-settings-attributes>2.6.6 CORS settings attributes</a><li><a href=#cors-enabled-fetch>2.6.7 CORS-enabled fetch</a></ol><li><a href=#common-dom-interfaces>2.7 Common DOM interfaces</a><ol><li><a href=#reflecting-content-attributes-in-idl-attributes>2.7.1 Reflecting content attributes in IDL attributes</a><li><a href=#collections-2>2.7.2 Collections</a><ol><li><a href=#htmlallcollection>2.7.2.1 HTMLAllCollection</a><li><a href=#htmlformcontrolscollection>2.7.2.2 HTMLFormControlsCollection</a><li><a href=#htmloptionscollection>2.7.2.3 HTMLOptionsCollection</a><li><a href=#htmlpropertiescollection>2.7.2.4 HTMLPropertiesCollection</a></ol><li><a href=#domstringmap>2.7.3 DOMStringMap</a><li><a href=#domelementmap>2.7.4 DOMElementMap</a><li><a href=#transferable-objects>2.7.5 Transferable objects</a><li><a href=#safe-passing-of-structured-data>2.7.6 Safe passing of structured data</a><li><a href=#callbacks>2.7.7 Callbacks</a><li><a href=#garbage-collection>2.7.8 G
arbage collection</a></ol><li><a href=#namespaces>2.8 Namespaces</a></ol><li><a href=#dom>3 Semantics, structure, and APIs of HTML documents</a><ol><li><a href=#documents>3.1 Documents</a><ol><li><a href=#the-document-object>3.1.1 The <code>Document</code> object</a><li><a href=#resource-metadata-management>3.1.2 Resource metadata management</a><li><a href=#dom-tree-accessors>3.1.3 DOM tree accessors</a><li><a href=#loading-xml-documents>3.1.4 Loading XML documents</a></ol><li><a href=#elements>3.2 Elements</a><ol><li><a href=#semantics-2>3.2.1 Semantics</a><li><a href=#elements-in-the-dom>3.2.2 Elements in the DOM</a><li><a href=#element-definitions>3.2.3 Element definitions</a><ol><li><a href=#attributes>3.2.3.1 Attributes</a></ol><li><a href=#content-models>3.2.4 Content models</a><ol><li><a href=#the-nothing-content-model>3.2.4.1 The "nothing" content model</a><li><a href=#kinds-of-content>3.2.4.2 Kinds of content</a><ol><li><a href=#metadata-content>3.2.4.2.1 Metadata c
ontent</a><li><a href=#flow-content>3.2.4.2.2 Flow content</a><li><a href=#sectioning-content>3.2.4.2.3 Sectioning content</a><li><a href=#heading-content>3.2.4.2.4 Heading content</a><li><a href=#phrasing-content>3.2.4.2.5 Phrasing content</a><li><a href=#embedded-content-2>3.2.4.2.6 Embedded content</a><li><a href=#interactive-content>3.2.4.2.7 Interactive content</a><li><a href=#palpable-content>3.2.4.2.8 Palpable content</a><li><a href=#script-supporting-elements>3.2.4.2.9 Script-supporting elements</a></ol><li><a href=#transparent-content-models>3.2.4.3 Transparent content models</a><li><a href=#paragraphs>3.2.4.4 Paragraphs</a></ol><li><a href=#global-attributes>3.2.5 Global attributes</a><ol><li><a href=#the-id-attribute>3.2.5.1 The <code>id</code> attribute</a><li><a href=#the-title-attribute>3.2.5.2 The <code>title</code> attribute</a><li><a href=#the-lang-and-xml:lang-attributes>3.2.5.3 The <code>lang</code> and <code>xml:lang</code> attributes</a><li><a href=#the-
translate-attribute>3.2.5.4 The <code>translate</code> attribute</a><li><a href=#the-xml:base-attribute-(xml-only)>3.2.5.5 The <code>xml:base</code> attribute (XML only)</a><li><a href=#the-dir-attribute>3.2.5.6 The <code>dir</code> attribute</a><li><a href=#classes>3.2.5.7 The <code>class</code> attribute</a><li><a href=#the-style-attribute>3.2.5.8 The <code>style</code> attribute</a><li><a href=#embedding-custom-non-visible-data-with-the-data-*-attributes>3.2.5.9 Embedding custom non-visible data with the <code>data-*</code> attributes</a></ol><li><a href=#requirements-relating-to-the-bidirectional-algorithm>3.2.6 Requirements relating to the bidirectional algorithm</a><ol><li><a href=#authoring-conformance-criteria-for-bidirectional-algorithm-formatting-characters>3.2.6.1 Authoring conformance criteria for bidirectional-algorithm formatting characters</a><li><a href=#user-agent-conformance-criteria>3.2.6.2 User agent conformance criteria</a></ol><li><a href=#wai-aria>3.2.
7 WAI-ARIA</a></ol></ol><li><a href=#semantics>4 The elements of HTML</a><ol><li><a href=#the-root-element>4.1 The root element</a><ol><li><a href=#the-html-element>4.1.1 The <code>html</code> element</a></ol><li><a href=#document-metadata>4.2 Document metadata</a><ol><li><a href=#the-head-element>4.2.1 The <code>head</code> element</a><li><a href=#the-title-element>4.2.2 The <code>title</code> element</a><li><a href=#the-base-element>4.2.3 The <code>base</code> element</a><li><a href=#the-link-element>4.2.4 The <code>link</code> element</a><li><a href=#the-meta-element>4.2.5 The <code>meta</code> element</a><ol><li><a href=#standard-metadata-names>4.2.5.1 Standard metadata names</a><li><a href=#other-metadata-names>4.2.5.2 Other metadata names</a><li><a href=#pragma-directives>4.2.5.3 Pragma directives</a><li><a href=#other-pragma-directives>4.2.5.4 Other pragma directives</a><li><a href=#charset>4.2.5.5 Specifying the document's character encoding</a></ol><li><a href=#the-
style-element>4.2.6 The <code>style</code> element</a><li><a href=#interactions-of-styling-and-scripting>4.2.7 Interactions of styling and scripting</a></ol><li><a href=#sections>4.3 Sections</a><ol><li><a href=#the-body-element>4.3.1 The <code>body</code> element</a><li><a href=#the-article-element>4.3.2 The <code>article</code> element</a><li><a href=#the-section-element>4.3.3 The <code>section</code> element</a><li><a href=#the-nav-element>4.3.4 The <code>nav</code> element</a><li><a href=#the-aside-element>4.3.5 The <code>aside</code> element</a><li><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>4.3.6 The <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, and
+ <ol class=toc><li><a href=#introduction>1 Introduction</a><ol><li><a href=#abstract>1.1 Where does this specification fit?</a><li><a href=#is-this-html5?>1.2 Is this HTML5?</a><li><a href=#background>1.3 Background</a><li><a href=#audience>1.4 Audience</a><li><a href=#scope>1.5 Scope</a><li><a href=#history-2>1.6 History</a><li><a href=#design-notes>1.7 Design notes</a><ol><li><a href=#serialisability-of-script-execution>1.7.1 Serialisability of script execution</a><li><a href=#compliance-with-other-specifications>1.7.2 Compliance with other specifications</a><li><a href=#extensibility>1.7.3 Extensibility</a></ol><li><a href=#html-vs-xhtml>1.8 HTML vs XHTML</a><li><a href=#structure-of-this-specification>1.9 Structure of this specification</a><ol><li><a href=#how-to-read-this-specification>1.9.1 How to read this specification</a><li><a href=#typographic-conventions>1.9.2 Typographic conventions</a></ol><li><a href=#fingerprint>1.10 Privacy concerns</a><ol><li><a href=#fing
erprint-postMessage>1.10.1 Cross-site communication</a></ol><li><a href=#a-quick-introduction-to-html>1.11 A quick introduction to HTML</a><ol><li><a href=#writing-secure-applications-with-html>1.11.1 Writing secure applications with HTML</a><li><a href=#common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to avoid when using the scripting APIs</a><li><a href=#how-to-catch-mistakes-when-writing-html:-validators-and-conformance-checkers>1.11.3 How to catch mistakes when writing HTML: validators and conformance checkers</a></ol><li><a href=#conformance-requirements-for-authors>1.12 Conformance requirements for authors</a><ol><li><a href=#presentational-markup>1.12.1 Presentational markup</a><li><a href=#syntax-errors>1.12.2 Syntax errors</a><li><a href=#restrictions-on-content-models-and-on-attribute-values>1.12.3 Restrictions on content models and on attribute values</a></ol><li><a href=#suggested-reading>1.13 Suggested reading</a></ol><li><a href=#in
frastructure>2 Common infrastructure</a><ol><li><a href=#terminology>2.1 Terminology</a><ol><li><a href=#resources>2.1.1 Resources</a><li><a href=#xml>2.1.2 XML</a><li><a href=#dom-trees>2.1.3 DOM trees</a><li><a href=#scripting-2>2.1.4 Scripting</a><li><a href=#plugins>2.1.5 Plugins</a><li><a href=#encoding-terminology>2.1.6 Character encodings</a></ol><li><a href=#conformance-requirements>2.2 Conformance requirements</a><ol><li><a href=#conformance-classes>2.2.1 Conformance classes</a><li><a href=#dependencies>2.2.2 Dependencies</a><li><a href=#extensibility-2>2.2.3 Extensibility</a><li><a href=#interactions-with-xpath-and-xslt>2.2.4 Interactions with XPath and XSLT</a></ol><li><a href=#case-sensitivity-and-string-comparison>2.3 Case-sensitivity and string comparison</a><li><a href=#common-microsyntaxes>2.4 Common microsyntaxes</a><ol><li><a href=#common-parser-idioms>2.4.1 Common parser idioms</a><li><a href=#boolean-attributes>2.4.2 Boolean attributes</a><li><a href=#key
words-and-enumerated-attributes>2.4.3 Keywords and enumerated attributes</a><li><a href=#numbers>2.4.4 Numbers</a><ol><li><a href=#signed-integers>2.4.4.1 Signed integers</a><li><a href=#non-negative-integers>2.4.4.2 Non-negative integers</a><li><a href=#floating-point-numbers>2.4.4.3 Floating-point numbers</a><li><a href=#percentages-and-dimensions>2.4.4.4 Percentages and lengths</a><li><a href=#lists-of-integers>2.4.4.5 Lists of integers</a><li><a href=#lists-of-dimensions>2.4.4.6 Lists of dimensions</a></ol><li><a href=#dates-and-times>2.4.5 Dates and times</a><ol><li><a href=#months>2.4.5.1 Months</a><li><a href=#dates>2.4.5.2 Dates</a><li><a href=#yearless-dates>2.4.5.3 Yearless dates</a><li><a href=#times>2.4.5.4 Times</a><li><a href=#local-dates-and-times>2.4.5.5 Local dates and times</a><li><a href=#time-zones>2.4.5.6 Time zones</a><li><a href=#global-dates-and-times>2.4.5.7 Global dates and times</a><li><a href=#weeks>2.4.5.8 Weeks</a><li><a href=#durations>2.4.5.9
Durations</a><li><a href=#vaguer-moments-in-time>2.4.5.10 Vaguer moments in time</a></ol><li><a href=#colours>2.4.6 Colours</a><li><a href=#space-separated-tokens>2.4.7 Space-separated tokens</a><li><a href=#comma-separated-tokens>2.4.8 Comma-separated tokens</a><li><a href=#syntax-references>2.4.9 References</a><li><a href=#mq>2.4.10 Media queries</a></ol><li><a href=#urls>2.5 URLs</a><ol><li><a href=#terminology-2>2.5.1 Terminology</a><li><a href=#resolving-urls>2.5.2 Resolving URLs</a><li><a href=#dynamic-changes-to-base-urls>2.5.3 Dynamic changes to base URLs</a></ol><li><a href=#fetching-resources>2.6 Fetching resources</a><ol><li><a href=#terminology-3>2.6.1 Terminology</a><li><a href=#processing-model>2.6.2 Processing model</a><li><a href=#encrypted-http-and-related-security-concerns>2.6.3 Encrypted HTTP and related security concerns</a><li><a href=#content-type-sniffing>2.6.4 Determining the type of a resource</a><li><a href=#extracting-character-encodings-from-meta-
elements>2.6.5 Extracting character encodings from <code>meta</code> elements</a><li><a href=#cors-settings-attributes>2.6.6 CORS settings attributes</a><li><a href=#cors-enabled-fetch>2.6.7 CORS-enabled fetch</a></ol><li><a href=#common-dom-interfaces>2.7 Common DOM interfaces</a><ol><li><a href=#reflecting-content-attributes-in-idl-attributes>2.7.1 Reflecting content attributes in IDL attributes</a><li><a href=#collections-2>2.7.2 Collections</a><ol><li><a href=#htmlallcollection>2.7.2.1 HTMLAllCollection</a><li><a href=#htmlformcontrolscollection>2.7.2.2 HTMLFormControlsCollection</a><li><a href=#htmloptionscollection>2.7.2.3 HTMLOptionsCollection</a><li><a href=#htmlpropertiescollection>2.7.2.4 HTMLPropertiesCollection</a></ol><li><a href=#domstringmap>2.7.3 DOMStringMap</a><li><a href=#domelementmap>2.7.4 DOMElementMap</a><li><a href=#transferable-objects>2.7.5 Transferable objects</a><li><a href=#safe-passing-of-structured-data>2.7.6 Safe passing of structured data</a>
<li><a href=#callbacks>2.7.7 Callbacks</a><li><a href=#garbage-collection>2.7.8 Garbage collection</a></ol><li><a href=#namespaces>2.8 Namespaces</a></ol><li><a href=#dom>3 Semantics, structure, and APIs of HTML documents</a><ol><li><a href=#documents>3.1 Documents</a><ol><li><a href=#the-document-object>3.1.1 The <code>Document</code> object</a><li><a href=#resource-metadata-management>3.1.2 Resource metadata management</a><li><a href=#dom-tree-accessors>3.1.3 DOM tree accessors</a><li><a href=#loading-xml-documents>3.1.4 Loading XML documents</a></ol><li><a href=#elements>3.2 Elements</a><ol><li><a href=#semantics-2>3.2.1 Semantics</a><li><a href=#elements-in-the-dom>3.2.2 Elements in the DOM</a><li><a href=#element-definitions>3.2.3 Element definitions</a><ol><li><a href=#attributes>3.2.3.1 Attributes</a></ol><li><a href=#content-models>3.2.4 Content models</a><ol><li><a href=#the-nothing-content-model>3.2.4.1 The "nothing" content model</a><li><a href=#kinds-of-content>3
.2.4.2 Kinds of content</a><ol><li><a href=#metadata-content>3.2.4.2.1 Metadata content</a><li><a href=#flow-content>3.2.4.2.2 Flow content</a><li><a href=#sectioning-content>3.2.4.2.3 Sectioning content</a><li><a href=#heading-content>3.2.4.2.4 Heading content</a><li><a href=#phrasing-content>3.2.4.2.5 Phrasing content</a><li><a href=#embedded-content-2>3.2.4.2.6 Embedded content</a><li><a href=#interactive-content>3.2.4.2.7 Interactive content</a><li><a href=#palpable-content>3.2.4.2.8 Palpable content</a><li><a href=#script-supporting-elements>3.2.4.2.9 Script-supporting elements</a></ol><li><a href=#transparent-content-models>3.2.4.3 Transparent content models</a><li><a href=#paragraphs>3.2.4.4 Paragraphs</a></ol><li><a href=#global-attributes>3.2.5 Global attributes</a><ol><li><a href=#the-id-attribute>3.2.5.1 The <code>id</code> attribute</a><li><a href=#the-title-attribute>3.2.5.2 The <code>title</code> attribute</a><li><a href=#the-lang-and-xml:lang-attributes>3.2.5.
3 The <code>lang</code> and <code>xml:lang</code> attributes</a><li><a href=#the-translate-attribute>3.2.5.4 The <code>translate</code> attribute</a><li><a href=#the-xml:base-attribute-(xml-only)>3.2.5.5 The <code>xml:base</code> attribute (XML only)</a><li><a href=#the-dir-attribute>3.2.5.6 The <code>dir</code> attribute</a><li><a href=#classes>3.2.5.7 The <code>class</code> attribute</a><li><a href=#the-style-attribute>3.2.5.8 The <code>style</code> attribute</a><li><a href=#embedding-custom-non-visible-data-with-the-data-*-attributes>3.2.5.9 Embedding custom non-visible data with the <code>data-*</code> attributes</a></ol><li><a href=#requirements-relating-to-the-bidirectional-algorithm>3.2.6 Requirements relating to the bidirectional algorithm</a><ol><li><a href=#authoring-conformance-criteria-for-bidirectional-algorithm-formatting-characters>3.2.6.1 Authoring conformance criteria for bidirectional-algorithm formatting characters</a><li><a href=#user-agent-conformance-cr
iteria>3.2.6.2 User agent conformance criteria</a></ol><li><a href=#wai-aria>3.2.7 WAI-ARIA</a></ol></ol><li><a href=#semantics>4 The elements of HTML</a><ol><li><a href=#the-root-element>4.1 The root element</a><ol><li><a href=#the-html-element>4.1.1 The <code>html</code> element</a></ol><li><a href=#document-metadata>4.2 Document metadata</a><ol><li><a href=#the-head-element>4.2.1 The <code>head</code> element</a><li><a href=#the-title-element>4.2.2 The <code>title</code> element</a><li><a href=#the-base-element>4.2.3 The <code>base</code> element</a><li><a href=#the-link-element>4.2.4 The <code>link</code> element</a><li><a href=#the-meta-element>4.2.5 The <code>meta</code> element</a><ol><li><a href=#standard-metadata-names>4.2.5.1 Standard metadata names</a><li><a href=#other-metadata-names>4.2.5.2 Other metadata names</a><li><a href=#pragma-directives>4.2.5.3 Pragma directives</a><li><a href=#other-pragma-directives>4.2.5.4 Other pragma directives</a><li><a href=#chars
et>4.2.5.5 Specifying the document's character encoding</a></ol><li><a href=#the-style-element>4.2.6 The <code>style</code> element</a><li><a href=#interactions-of-styling-and-scripting>4.2.7 Interactions of styling and scripting</a></ol><li><a href=#sections>4.3 Sections</a><ol><li><a href=#the-body-element>4.3.1 The <code>body</code> element</a><li><a href=#the-article-element>4.3.2 The <code>article</code> element</a><li><a href=#the-section-element>4.3.3 The <code>section</code> element</a><li><a href=#the-nav-element>4.3.4 The <code>nav</code> element</a><li><a href=#the-aside-element>4.3.5 The <code>aside</code> element</a><li><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>4.3.6 The <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, and
<code>h6</code> elements</a><li><a href=#the-hgroup-element>4.3.7 The <code>hgroup</code> element</a><li><a href=#the-header-element>4.3.8 The <code>header</code> element</a><li><a href=#the-footer-element>4.3.9 The <code>footer</code> element</a><li><a href=#the-address-element>4.3.10 The <code>address</code> element</a><li><a href=#headings-and-sections>4.3.11 Headings and sections</a><ol><li><a href=#outlines>4.3.11.1 Creating an outline</a><li><a href=#sample-outlines>4.3.11.2 Sample outlines</a><li><a href=#exposing-outlines-to-users>4.3.11.3 Exposing outlines to users</a></ol><li><a href=#usage-summary-2>4.3.12 Usage summary</a><ol><li><a href=#article-or-section>4.3.12.1 Article or section?</a></ol></ol><li><a href=#grouping-content>4.4 Grouping content</a><ol><li><a href=#the-p-element>4.4.1 The <code>p</code> element</a><li><a href=#the-hr-element>4.4.2 The <code>hr</code> element</a><li><a href=#the-pre-element>4.4.3 The <code>pre</code> element</a><li><a href=#t
he-blockquote-element>4.4.4 The <code>blockquote</code> element</a><li><a href=#the-ol-element>4.4.5 The <code>ol</code> element</a><li><a href=#the-ul-element>4.4.6 The <code>ul</code> element</a><li><a href=#the-li-element>4.4.7 The <code>li</code> element</a><li><a href=#the-dl-element>4.4.8 The <code>dl</code> element</a><li><a href=#the-dt-element>4.4.9 The <code>dt</code> element</a><li><a href=#the-dd-element>4.4.10 The <code>dd</code> element</a><li><a href=#the-figure-element>4.4.11 The <code>figure</code> element</a><li><a href=#the-figcaption-element>4.4.12 The <code>figcaption</code> element</a><li><a href=#the-main-element>4.4.13 The <code>main</code> element</a><li><a href=#the-div-element>4.4.14 The <code>div</code> element</a></ol><li><a href=#text-level-semantics>4.5 Text-level semantics</a><ol><li><a href=#the-a-element>4.5.1 The <code>a</code> element</a><li><a href=#the-em-element>4.5.2 The <code>em</code> element</a><li><a href=#the-strong-element>4.5.3
The <code>strong</code> element</a><li><a href=#the-small-element>4.5.4 The <code>small</code> element</a><li><a href=#the-s-element>4.5.5 The <code>s</code> element</a><li><a href=#the-cite-element>4.5.6 The <code>cite</code> element</a><li><a href=#the-q-element>4.5.7 The <code>q</code> element</a><li><a href=#the-dfn-element>4.5.8 The <code>dfn</code> element</a><li><a href=#the-abbr-element>4.5.9 The <code>abbr</code> element</a><li><a href=#the-ruby-element>4.5.10 The <code>ruby</code> element</a><li><a href=#the-rt-element>4.5.11 The <code>rt</code> element</a><li><a href=#the-rp-element>4.5.12 The <code>rp</code> element</a><li><a href=#the-data-element>4.5.13 The <code>data</code> element</a><li><a href=#the-time-element>4.5.14 The <code>time</code> element</a><li><a href=#the-code-element>4.5.15 The <code>code</code> element</a><li><a href=#the-var-element>4.5.16 The <code>var</code> element</a><li><a href=#the-samp-element>4.5.17 The <code>samp</code> element</a><l
i><a href=#the-kbd-element>4.5.18 The <code>kbd</code> element</a><li><a href=#the-sub-and-sup-elements>4.5.19 The <code>sub</code> and <code>sup</code> elements</a><li><a href=#the-i-element>4.5.20 The <code>i</code> element</a><li><a href=#the-b-element>4.5.21 The <code>b</code> element</a><li><a href=#the-u-element>4.5.22 The <code>u</code> element</a><li><a href=#the-mark-element>4.5.23 The <code>mark</code> element</a><li><a href=#the-bdi-element>4.5.24 The <code>bdi</code> element</a><li><a href=#the-bdo-element>4.5.25 The <code>bdo</code> element</a><li><a href=#the-span-element>4.5.26 The <code>span</code> element</a><li><a href=#the-br-element>4.5.27 The <code>br</code> element</a><li><a href=#the-wbr-element>4.5.28 The <code>wbr</code> element</a><li><a href=#usage-summary>4.5.29 Usage summary</a></ol><li><a href=#links>4.6 Links</a><ol><li><a href=#introduction-2>4.6.1 Introduction</a><li><a href=#links-created-by-a-and-area-elements>4.6.2 Links created by <code>a
</code> and <code>area</code> elements</a><li><a href=#following-hyperlinks>4.6.3 Following hyperlinks</a><li><a href=#downloading-resources>4.6.4 Downloading resources</a><ol><li><a href=#hyperlink-auditing>4.6.4.1 Hyperlink auditing</a></ol><li><a href=#linkTypes>4.6.5 Link types</a><ol><li><a href=#rel-alternate>4.6.5.1 Link type "<code>alternate</code>"</a><li><a href=#link-type-author>4.6.5.2 Link type "<code>author</code>"</a><li><a href=#link-type-bookmark>4.6.5.3 Link type "<code>bookmark</code>"</a><li><a href=#link-type-external>4.6.5.4 Link type "<code>external</code>"</a><li><a href=#link-type-help>4.6.5.5 Link type "<code>help</code>"</a><li><a href=#rel-icon>4.6.5.6 Link type "<code>icon</code>"</a><li><a href=#link-type-license>4.6.5.7 Link type "<code>license</code>"</a><li><a href=#link-type-nofollow>4.6.5.8 Link type "<code>nofollow</code>"</a><li><a href=#link-type-noreferrer>4.6.5.9 Link type "<code>noreferrer</code>"</a><li><a href=#link-type-pingback>4.
6.5.10 Link type "<code>pingback</code>"</a><li><a href=#link-type-prefetch>4.6.5.11 Link type "<code>prefetch</code>"</a><li><a href=#link-type-search>4.6.5.12 Link type "<code>search</code>"</a><li><a href=#link-type-sidebar>4.6.5.13 Link type "<code>sidebar</code>"</a><li><a href=#link-type-stylesheet>4.6.5.14 Link type "<code>stylesheet</code>"</a><li><a href=#link-type-tag>4.6.5.15 Link type "<code>tag</code>"</a><li><a href=#sequential-link-types>4.6.5.16 Sequential link types</a><ol><li><a href=#link-type-next>4.6.5.16.1 Link type "<code>next</code>"</a><li><a href=#link-type-prev>4.6.5.16.2 Link type "<code>prev</code>"</a></ol><li><a href=#other-link-types>4.6.5.17 Other link types</a></ol></ol><li><a href=#edits>4.7 Edits</a><ol><li><a href=#the-ins-element>4.7.1 The <code>ins</code> element</a><li><a href=#the-del-element>4.7.2 The <code>del</code> element</a><li><a href=#attributes-common-to-ins-and-del-elements>4.7.3 Attributes common to <code>ins</code> and <co
de>del</code> elements</a><li><a href=#edits-and-paragraphs>4.7.4 Edits and paragraphs</a><li><a href=#edits-and-lists>4.7.5 Edits and lists</a><li><a href=#edits-and-tables>4.7.6 Edits and tables</a></ol><li><a href=#embedded-content>4.8 Embedded content</a><ol><li><a href=#introduction-3>4.8.1 Introduction</a><ol><li><a href=#adaptive-images>4.8.1.1 Adaptive images</a></ol><li><a href=#dependencies-2>4.8.2 Dependencies</a><li><a href=#the-picture-element>4.8.3 The <code>picture</code> element</a><li><a href=#the-source-element-when-used-with-the-picture-element>4.8.4 The <code>source</code> element when used with the <code>picture</code> element</a><li><a href=#the-img-element>4.8.5 The <code>img</code> element</a><ol><li><a href=#alt>4.8.5.1 Requirements for providing text to act as an alternative for images</a><ol><li><a href=#general-guidelines>4.8.5.1.1 General guidelines</a><li><a href=#a-link-or-button-containing-nothing-but-the-image>4.8.5.1.2 A link or button conta
ining nothing but the image</a><li><a href=#a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts,-diagrams,-graphs,-maps,-illustrations>4.8.5.1.3 A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations</a><li><a href=#a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons,-logos>4.8.5.1.4 A short phrase or label with an alternative graphical representation: icons, logos</a><li><a href=#text-that-has-been-rendered-to-a-graphic-for-typographical-effect>4.8.5.1.5 Text that has been rendered to a graphic for typographical effect</a><li><a href=#a-graphical-representation-of-some-of-the-surrounding-text>4.8.5.1.6 A graphical representation of some of the surrounding text</a><li><a href="#a-purely-decorative-image-that-doesn't-add-any-information">4.8.5.1.7 A purely decorative image that doesn't add any information</a><li><a href=#a-group-of-images-that-form-a-single-larger-picture
-with-no-links>4.8.5.1.8 A group of images that form a single larger picture with no links</a><li><a href=#a-group-of-images-that-form-a-single-larger-picture-with-links>4.8.5.1.9 A group of images that form a single larger picture with links</a><li><a href=#a-key-part-of-the-content>4.8.5.1.10 A key part of the content</a><li><a href=#an-image-not-intended-for-the-user>4.8.5.1.11 An image not intended for the user</a><li><a href=#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.5.1.12 An image in an e-mail or private document intended for a specific person who is known to be able to view images</a><li><a href=#guidance-for-markup-generators>4.8.5.1.13 Guidance for markup generators</a><li><a href=#guidance-for-conformance-checkers>4.8.5.1.14 Guidance for conformance checkers</a></ol></ol><li><a href=#the-iframe-element>4.8.6 The <code>iframe</code> element</a><li><a href=#the-embed-element>4.8.7 The <code>em
bed</code> element</a><li><a href=#the-object-element>4.8.8 The <code>object</code> element</a><li><a href=#the-param-element>4.8.9 The <code>param</code> element</a><li><a href=#the-video-element>4.8.10 The <code>video</code> element</a><li><a href=#the-audio-element>4.8.11 The <code>audio</code> element</a><li><a href=#the-source-element>4.8.12 The <code>source</code> element</a><li><a href=#the-track-element>4.8.13 The <code>track</code> element</a><li><a href=#media-elements>4.8.14 Media elements</a><ol><li><a href=#error-codes>4.8.14.1 Error codes</a><li><a href=#location-of-the-media-resource>4.8.14.2 Location of the media resource</a><li><a href=#mime-types>4.8.14.3 MIME types</a><li><a href=#network-states>4.8.14.4 Network states</a><li><a href=#loading-the-media-resource>4.8.14.5 Loading the media resource</a><li><a href=#offsets-into-the-media-resource>4.8.14.6 Offsets into the media resource</a><li><a href=#ready-states>4.8.14.7 Ready states</a><li><a href=#playin
g-the-media-resource>4.8.14.8 Playing the media resource</a><li><a href=#seeking>4.8.14.9 Seeking</a><li><a href=#media-resources-with-multiple-media-tracks>4.8.14.10 Media resources with multiple media tracks</a><ol><li><a href=#audiotracklist-and-videotracklist-objects>4.8.14.10.1 <code>AudioTrackList</code> and <code>VideoTrackList</code> objects</a><li><a href=#selecting-specific-audio-and-video-tracks-declaratively>4.8.14.10.2 Selecting specific audio and video tracks declaratively</a></ol><li><a href=#synchronising-multiple-media-elements>4.8.14.11 Synchronising multiple media elements</a><ol><li><a href=#introduction-4>4.8.14.11.1 Introduction</a><li><a href=#media-controllers>4.8.14.11.2 Media controllers</a><li><a href=#assigning-a-media-controller-declaratively>4.8.14.11.3 Assigning a media controller declaratively</a></ol><li><a href=#timed-text-tracks>4.8.14.12 Timed text tracks</a><ol><li><a href=#text-track-model>4.8.14.12.1 Text track model</a><li><a href=#sou
rcing-in-band-text-tracks>4.8.14.12.2 Sourcing in-band text tracks</a><li><a href=#sourcing-out-of-band-text-tracks>4.8.14.12.3 Sourcing out-of-band text tracks</a><li><a href=#guidelines-for-exposing-cues-in-various-formats-as-text-track-cues>4.8.14.12.4 Guidelines for exposing cues in various formats as text track cues</a><li><a href=#text-track-api>4.8.14.12.5 Text track API</a><li><a href=#text-tracks-describing-chapters>4.8.14.12.6 Text tracks describing chapters</a><li><a href=#cue-events>4.8.14.12.7 Event handlers for objects of the text track APIs</a><li><a href=#best-practices-for-metadata-text-tracks>4.8.14.12.8 Best practices for metadata text tracks</a></ol><li><a href=#user-interface>4.8.14.13 User interface</a><li><a href=#time-ranges>4.8.14.14 Time ranges</a><li><a href=#the-trackevent-interface>4.8.14.15 The <code>TrackEvent</code> interface</a><li><a href=#mediaevents>4.8.14.16 Event summary</a><li><a href=#security-and-privacy-considerations>4.8.14.17 Secur
ity and privacy considerations</a><li><a href=#best-practices-for-authors-using-media-elements>4.8.14.18 Best practices for authors using media elements</a><li><a href=#best-practices-for-implementors-of-media-elements>4.8.14.19 Best practices for implementors of media elements</a></ol><li><a href=#the-map-element>4.8.15 The <code>map</code> element</a><li><a href=#the-area-element>4.8.16 The <code>area</code> element</a><li><a href=#image-maps>4.8.17 Image maps</a><ol><li><a href=#authoring>4.8.17.1 Authoring</a><li><a href=#processing-model-2>4.8.17.2 Processing model</a></ol><li><a href=#mathml>4.8.18 MathML</a><li><a href=#svg>4.8.19 SVG</a><li><a href=#dimension-attributes>4.8.20 Dimension attributes</a></ol><li><a href=#tables>4.9 Tabular data</a><ol><li><a href=#the-table-element>4.9.1 The <code>table</code> element</a><ol><li><a href=#table-descriptions-techniques>4.9.1.1 Techniques for describing tables</a><li><a href=#table-layout-techniques>4.9.1.2 Techniques for
table design</a></ol><li><a href=#the-caption-element>4.9.2 The <code>caption</code> element</a><li><a href=#the-colgroup-element>4.9.3 The <code>colgroup</code> element</a><li><a href=#the-col-element>4.9.4 The <code>col</code> element</a><li><a href=#the-tbody-element>4.9.5 The <code>tbody</code> element</a><li><a href=#the-thead-element>4.9.6 The <code>thead</code> element</a><li><a href=#the-tfoot-element>4.9.7 The <code>tfoot</code> element</a><li><a href=#the-tr-element>4.9.8 The <code>tr</code> element</a><li><a href=#the-td-element>4.9.9 The <code>td</code> element</a><li><a href=#the-th-element>4.9.10 The <code>th</code> element</a><li><a href=#attributes-common-to-td-and-th-elements>4.9.11 Attributes common to <code>td</code> and <code>th</code> elements</a><li><a href=#processing-model-3>4.9.12 Processing model</a><ol><li><a href=#forming-a-table>4.9.12.1 Forming a table</a><li><a href=#header-and-data-cell-semantics>4.9.12.2 Forming relationships between data cel
ls and header cells</a></ol><li><a href=#table-sorting-model>4.9.13 Table sorting model</a><li><a href=#table-examples>4.9.14 Examples</a></ol><li><a href=#forms>4.10 Forms</a><ol><li><a href=#introduction-5>4.10.1 Introduction</a><ol><li><a href="#writing-a-form's-user-interface">4.10.1.1 Writing a form's user interface</a><li><a href=#implementing-the-server-side-processing-for-a-form>4.10.1.2 Implementing the server-side processing for a form</a><li><a href=#configuring-a-form-to-communicate-with-a-server>4.10.1.3 Configuring a form to communicate with a server</a><li><a href=#client-side-form-validation>4.10.1.4 Client-side form validation</a><li><a href=#enabling-client-side-automatic-filling-of-form-controls>4.10.1.5 Enabling client-side automatic filling of form controls</a><li><a href=#improving-the-user-experience-on-mobile-devices>4.10.1.6 Improving the user experience on mobile devices</a><li><a href=#the-difference-between-the-field-type,-the-autofill-field-name,
-and-the-input-modality>4.10.1.7 The difference between the field type, the autofill field name, and the input modality</a><li><a href=#input-author-notes>4.10.1.8 Date, time, and number formats</a></ol><li><a href=#categories>4.10.2 Categories</a><li><a href=#the-form-element>4.10.3 The <code>form</code> element</a><li><a href=#the-label-element>4.10.4 The <code>label</code> element</a><li><a href=#the-input-element>4.10.5 The <code>input</code> element</a><ol><li><a href=#states-of-the-type-attribute>4.10.5.1 States of the <code>type</code> attribute</a><ol><li><a href="#hidden-state-(type=hidden)">4.10.5.1.1 Hidden state (<code>type=hidden</code>)</a><li><a href="#text-(type=text)-state-and-search-state-(type=search)">4.10.5.1.2 Text (<code>type=text</code>) state and Search state (<code>type=search</code>)</a><li><a href="#telephone-state-(type=tel)">4.10.5.1.3 Telephone state (<code>type=tel</code>)</a><li><a href="#url-state-(type=url)">4.10.5.1.4 URL state (<code>type
=url</code>)</a><li><a href="#e-mail-state-(type=email)">4.10.5.1.5 E-mail state (<code>type=email</code>)</a><li><a href="#password-state-(type=password)">4.10.5.1.6 Password state (<code>type=password</code>)</a><li><a href="#date-and-time-state-(type=datetime)">4.10.5.1.7 Date and Time state (<code>type=datetime</code>)</a><li><a href="#date-state-(type=date)">4.10.5.1.8 Date state (<code>type=date</code>)</a><li><a href="#month-state-(type=month)">4.10.5.1.9 Month state (<code>type=month</code>)</a><li><a href="#week-state-(type=week)">4.10.5.1.10 Week state (<code>type=week</code>)</a><li><a href="#time-state-(type=time)">4.10.5.1.11 Time state (<code>type=time</code>)</a><li><a href="#local-date-and-time-state-(type=datetime-local)">4.10.5.1.12 Local Date and Time state (<code>type=datetime-local</code>)</a><li><a href="#number-state-(type=number)">4.10.5.1.13 Number state (<code>type=number</code>)</a><li><a href="#range-state-(type=range)">4.10.5.1.14 Range state (<c
ode>type=range</code>)</a><li><a href="#colour-state-(type=color)">4.10.5.1.15 Colour state (<code>type=color</code>)</a><li><a href="#checkbox-state-(type=checkbox)">4.10.5.1.16 Checkbox state (<code>type=checkbox</code>)</a><li><a href="#radio-button-state-(type=radio)">4.10.5.1.17 Radio Button state (<code>type=radio</code>)</a><li><a href="#file-upload-state-(type=file)">4.10.5.1.18 File Upload state (<code>type=file</code>)</a><li><a href="#submit-button-state-(type=submit)">4.10.5.1.19 Submit Button state (<code>type=submit</code>)</a><li><a href="#image-button-state-(type=image)">4.10.5.1.20 Image Button state (<code>type=image</code>)</a><li><a href="#reset-button-state-(type=reset)">4.10.5.1.21 Reset Button state (<code>type=reset</code>)</a><li><a href="#button-state-(type=button)">4.10.5.1.22 Button state (<code>type=button</code>)</a></ol><li><a href=#input-impl-notes>4.10.5.2 Implemention notes regarding localization of form controls</a><li><a href=#common-input
-element-attributes>4.10.5.3 Common <code>input</code> element attributes</a><ol><li><a href=#the-maxlength-and-minlength-attributes>4.10.5.3.1 The <code>maxlength</code> and <code>minlength</code> attributes</a><li><a href=#the-size-attribute>4.10.5.3.2 The <code>size</code> attribute</a><li><a href=#the-readonly-attribute>4.10.5.3.3 The <code>readonly</code> attribute</a><li><a href=#the-required-attribute>4.10.5.3.4 The <code>required</code> attribute</a><li><a href=#the-multiple-attribute>4.10.5.3.5 The <code>multiple</code> attribute</a><li><a href=#the-pattern-attribute>4.10.5.3.6 The <code>pattern</code> attribute</a><li><a href=#the-min-and-max-attributes>4.10.5.3.7 The <code>min</code> and <code>max</code> attributes</a><li><a href=#the-step-attribute>4.10.5.3.8 The <code>step</code> attribute</a><li><a href=#the-list-attribute>4.10.5.3.9 The <code>list</code> attribute</a><li><a href=#the-placeholder-attribute>4.10.5.3.10 The <code>placeholder</code> attribute</a><
/ol><li><a href=#common-input-element-apis>4.10.5.4 Common <code>input</code> element APIs</a><li><a href=#common-input-element-events>4.10.5.5 Common event behaviors</a></ol><li><a href=#the-button-element>4.10.6 The <code>button</code> element</a><li><a href=#the-select-element>4.10.7 The <code>select</code> element</a><li><a href=#the-datalist-element>4.10.8 The <code>datalist</code> element</a><li><a href=#the-optgroup-element>4.10.9 The <code>optgroup</code> element</a><li><a href=#the-option-element>4.10.10 The <code>option</code> element</a><li><a href=#the-textarea-element>4.10.11 The <code>textarea</code> element</a><li><a href=#the-keygen-element>4.10.12 The <code>keygen</code> element</a><li><a href=#the-output-element>4.10.13 The <code>output</code> element</a><li><a href=#the-progress-element>4.10.14 The <code>progress</code> element</a><li><a href=#the-meter-element>4.10.15 The <code>meter</code> element</a><li><a href=#the-fieldset-element>4.10.16 The <code>fi
eldset</code> element</a><li><a href=#the-legend-element>4.10.17 The <code>legend</code> element</a><li><a href=#form-control-infrastructure>4.10.18 Form control infrastructure</a><ol><li><a href="#a-form-control's-value">4.10.18.1 A form control's value</a><li><a href=#mutability>4.10.18.2 Mutability</a><li><a href=#association-of-controls-and-forms>4.10.18.3 Association of controls and forms</a></ol><li><a href=#attributes-common-to-form-controls>4.10.19 Attributes common to form controls</a><ol><li><a href=#naming-form-controls:-the-name-attribute>4.10.19.1 Naming form controls: the <code>name</code> attribute</a><li><a href=#submitting-element-directionality:-the-dirname-attribute>4.10.19.2 Submitting element directionality: the <code>dirname</code> attribute</a><li><a href=#limiting-user-input-length:-the-maxlength-attribute>4.10.19.3 Limiting user input length: the <code>maxlength</code> attribute</a><li><a href=#setting-minimum-input-length-requirements:-the-minlength
-attribute>4.10.19.4 Setting minimum input length requirements: the <code>minlength</code> attribute</a><li><a href=#enabling-and-disabling-form-controls:-the-disabled-attribute>4.10.19.5 Enabling and disabling form controls: the <code>disabled</code> attribute</a><li><a href=#form-submission>4.10.19.6 Form submission</a><ol><li><a href=#autofocusing-a-form-control:-the-autofocus-attribute>4.10.19.6.1 Autofocusing a form control: the <code>autofocus</code> attribute</a></ol><li><a href=#input-modalities:-the-inputmode-attribute>4.10.19.7 Input modalities: the <code>inputmode</code> attribute</a><li><a href=#autofill>4.10.19.8 Autofill</a><ol><li><a href=#autofilling-form-controls:-the-autocomplete-attribute>4.10.19.8.1 Autofilling form controls: the <code>autocomplete</code> attribute</a><li><a href=#processing-model-4>4.10.19.8.2 Processing model</a><li><a href=#user-interface-for-bulk-autofill>4.10.19.8.3 User interface for bulk autofill</a><li><a href=#the-autocompleteerr
orevent-interface>4.10.19.8.4 The <code>AutocompleteErrorEvent</code> interface</a></ol></ol><li><a href=#textFieldSelection>4.10.20 APIs for the text field selections</a><li><a href=#constraints>4.10.21 Constraints</a><ol><li><a href=#definitions>4.10.21.1 Definitions</a><li><a href=#constraint-validation>4.10.21.2 Constraint validation</a><li><a href=#the-constraint-validation-api>4.10.21.3 The constraint validation API</a><li><a href=#security-forms>4.10.21.4 Security</a></ol><li><a href=#form-submission-2>4.10.22 Form submission</a><ol><li><a href=#introduction-6>4.10.22.1 Introduction</a><li><a href=#implicit-submission>4.10.22.2 Implicit submission</a><li><a href=#form-submission-algorithm>4.10.22.3 Form submission algorithm</a><li><a href=#constructing-form-data-set>4.10.22.4 Constructing the form data set</a><li><a href=#selecting-a-form-submission-encoding>4.10.22.5 Selecting a form submission encoding</a><li><a href=#url-encoded-form-data>4.10.22.6 URL-encoded form
data</a><li><a href=#multipart-form-data>4.10.22.7 Multipart form data</a><li><a href=#plain-text-form-data>4.10.22.8 Plain text form data</a></ol><li><a href=#resetting-a-form>4.10.23 Resetting a form</a></ol><li><a href=#interactive-elements>4.11 Interactive elements</a><ol><li><a href=#the-details-element>4.11.1 The <code>details</code> element</a><li><a href=#the-summary-element>4.11.2 The <code>summary</code> element</a><li><a href=#the-menu-element>4.11.3 The <code>menu</code> element</a><li><a href=#the-menuitem-element>4.11.4 The <code>menuitem</code> element</a><li><a href=#context-menus>4.11.5 Context menus</a><ol><li><a href=#declaring-a-context-menu>4.11.5.1 Declaring a context menu</a><li><a href=#processing-model-5>4.11.5.2 Processing model</a><li><a href=#the-relatedevent-interfaces>4.11.5.3 The <code>RelatedEvent</code> interfaces</a></ol><li><a href=#commands>4.11.6 Commands</a><ol><li><a href=#facets-2>4.11.6.1 Facets</a><li><a href=#using-the-a-element-to
-define-a-command>4.11.6.2 Using the <code>a</code> element to define a command</a><li><a href=#using-the-button-element-to-define-a-command>4.11.6.3 Using the <code>button</code> element to define a command</a><li><a href=#using-the-input-element-to-define-a-command>4.11.6.4 Using the <code>input</code> element to define a command</a><li><a href=#using-the-option-element-to-define-a-command>4.11.6.5 Using the <code>option</code> element to define a command</a><li><a href=#using-the-menuitem-element-to-define-a-command>4.11.6.6 Using the <code>menuitem</code> element to define a
command</a><li><a href=#using-the-command-attribute-on-menuitem-elements-to-define-a-command-indirectly>4.11.6.7 Using the <code>command</code> attribute on <code>menuitem</code> elements to define
a command indirectly</a><li><a href=#using-the-accesskey-attribute-on-a-label-element-to-define-a-command>4.11.6.8 Using the <code>accesskey</code> attribute
@@ -805,7 +805,23 @@
object. <a href=#refsMQ>[MQ]</a> <a href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li>The user's time zone.</ul>
+ <h4 id=fingerprint-postMessage>1.10.1 Cross-site communication</h4>
+ <p>The <code id=fingerprint-postMessage:dom-window-postmessage><a href=#dom-window-postmessage>postMessage()</a></code> API provides a mechanism by
+ which two sites can communicate directly. At first glance, this might appear to open a new way by
+ which the problems described above can occur. However, in practice, multiple mechanisms exist by
+ which two sites can communicate that predate this API: a site embedding another can send data via
+ an <code id=fingerprint-postMessage:the-iframe-element><a href=#the-iframe-element>iframe</a></code> element's dimensions; a site can use a cross-site image request with a
+ unique identifier known to the server to initiate a server-side data exchange; or indeed the
+ fingerprinting techniques described above can be used by two sites to uniquely identify a visitor
+ such that information can then be exchanged on the server side.</p>
+
+ <p>Fundamentally, users that do not trust a site to treat their information with respect have to
+ avoid visiting that site at all.</p>
+
+
+
+
<h3 id=a-quick-introduction-to-html>1.11 A quick introduction to HTML</h3>
<p><i>This section is non-normative.</i></p>
@@ -67034,6 +67050,9 @@
that allows documents to communicate with each other regardless of their source domain, in a way
designed to not enable cross-site scripting attacks.</p>
+ <p class=note>This API <a href=fingerprint-postMessage>has some privacy implications</a> that
+ may not be immediately obvious.</p>
+
<p>The <a href=#task-source id=web-messaging:task-source>task source</a> for the <a href=#concept-task id=web-messaging:concept-task>tasks</a> in
@@ -67137,6 +67156,7 @@
+
<h4 id=posting-messages>9.4.3 Posting messages</h4>
<dl class=domintro><dt><var>window</var> . <code id=posting-messages:dom-window-postmessage><a href=#dom-window-postmessage>postMessage</a></code>(<var>message</var>, <var>targetOrigin</var> [, <var>transfer</var> ] )<dd>
Modified: index
===================================================================
--- index 2014-09-03 22:52:01 UTC (rev 8740)
+++ index 2014-09-03 23:43:15 UTC (rev 8741)
@@ -327,7 +327,7 @@
<div id=configUI></div>
<h2 id=contents class="no-num no-toc">Table of contents</h2>
- <ol class=toc><li><a href=#introduction>1 Introduction</a><ol><li><a href=#abstract>1.1 Where does this specification fit?</a><li><a href=#is-this-html5?>1.2 Is this HTML5?</a><li><a href=#background>1.3 Background</a><li><a href=#audience>1.4 Audience</a><li><a href=#scope>1.5 Scope</a><li><a href=#history-2>1.6 History</a><li><a href=#design-notes>1.7 Design notes</a><ol><li><a href=#serialisability-of-script-execution>1.7.1 Serialisability of script execution</a><li><a href=#compliance-with-other-specifications>1.7.2 Compliance with other specifications</a><li><a href=#extensibility>1.7.3 Extensibility</a></ol><li><a href=#html-vs-xhtml>1.8 HTML vs XHTML</a><li><a href=#structure-of-this-specification>1.9 Structure of this specification</a><ol><li><a href=#how-to-read-this-specification>1.9.1 How to read this specification</a><li><a href=#typographic-conventions>1.9.2 Typographic conventions</a></ol><li><a href=#fingerprint>1.10 Privacy concerns</a><li><a href=#a-quick-
introduction-to-html>1.11 A quick introduction to HTML</a><ol><li><a href=#writing-secure-applications-with-html>1.11.1 Writing secure applications with HTML</a><li><a href=#common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to avoid when using the scripting APIs</a><li><a href=#how-to-catch-mistakes-when-writing-html:-validators-and-conformance-checkers>1.11.3 How to catch mistakes when writing HTML: validators and conformance checkers</a></ol><li><a href=#conformance-requirements-for-authors>1.12 Conformance requirements for authors</a><ol><li><a href=#presentational-markup>1.12.1 Presentational markup</a><li><a href=#syntax-errors>1.12.2 Syntax errors</a><li><a href=#restrictions-on-content-models-and-on-attribute-values>1.12.3 Restrictions on content models and on attribute values</a></ol><li><a href=#suggested-reading>1.13 Suggested reading</a></ol><li><a href=#infrastructure>2 Common infrastructure</a><ol><li><a href=#terminology>2.1 Terminol
ogy</a><ol><li><a href=#resources>2.1.1 Resources</a><li><a href=#xml>2.1.2 XML</a><li><a href=#dom-trees>2.1.3 DOM trees</a><li><a href=#scripting-2>2.1.4 Scripting</a><li><a href=#plugins>2.1.5 Plugins</a><li><a href=#encoding-terminology>2.1.6 Character encodings</a></ol><li><a href=#conformance-requirements>2.2 Conformance requirements</a><ol><li><a href=#conformance-classes>2.2.1 Conformance classes</a><li><a href=#dependencies>2.2.2 Dependencies</a><li><a href=#extensibility-2>2.2.3 Extensibility</a><li><a href=#interactions-with-xpath-and-xslt>2.2.4 Interactions with XPath and XSLT</a></ol><li><a href=#case-sensitivity-and-string-comparison>2.3 Case-sensitivity and string comparison</a><li><a href=#common-microsyntaxes>2.4 Common microsyntaxes</a><ol><li><a href=#common-parser-idioms>2.4.1 Common parser idioms</a><li><a href=#boolean-attributes>2.4.2 Boolean attributes</a><li><a href=#keywords-and-enumerated-attributes>2.4.3 Keywords and enumerated attributes</a><li><
a href=#numbers>2.4.4 Numbers</a><ol><li><a href=#signed-integers>2.4.4.1 Signed integers</a><li><a href=#non-negative-integers>2.4.4.2 Non-negative integers</a><li><a href=#floating-point-numbers>2.4.4.3 Floating-point numbers</a><li><a href=#percentages-and-dimensions>2.4.4.4 Percentages and lengths</a><li><a href=#lists-of-integers>2.4.4.5 Lists of integers</a><li><a href=#lists-of-dimensions>2.4.4.6 Lists of dimensions</a></ol><li><a href=#dates-and-times>2.4.5 Dates and times</a><ol><li><a href=#months>2.4.5.1 Months</a><li><a href=#dates>2.4.5.2 Dates</a><li><a href=#yearless-dates>2.4.5.3 Yearless dates</a><li><a href=#times>2.4.5.4 Times</a><li><a href=#local-dates-and-times>2.4.5.5 Local dates and times</a><li><a href=#time-zones>2.4.5.6 Time zones</a><li><a href=#global-dates-and-times>2.4.5.7 Global dates and times</a><li><a href=#weeks>2.4.5.8 Weeks</a><li><a href=#durations>2.4.5.9 Durations</a><li><a href=#vaguer-moments-in-time>2.4.5.10 Vaguer moments in time<
/a></ol><li><a href=#colours>2.4.6 Colours</a><li><a href=#space-separated-tokens>2.4.7 Space-separated tokens</a><li><a href=#comma-separated-tokens>2.4.8 Comma-separated tokens</a><li><a href=#syntax-references>2.4.9 References</a><li><a href=#mq>2.4.10 Media queries</a></ol><li><a href=#urls>2.5 URLs</a><ol><li><a href=#terminology-2>2.5.1 Terminology</a><li><a href=#resolving-urls>2.5.2 Resolving URLs</a><li><a href=#dynamic-changes-to-base-urls>2.5.3 Dynamic changes to base URLs</a></ol><li><a href=#fetching-resources>2.6 Fetching resources</a><ol><li><a href=#terminology-3>2.6.1 Terminology</a><li><a href=#processing-model>2.6.2 Processing model</a><li><a href=#encrypted-http-and-related-security-concerns>2.6.3 Encrypted HTTP and related security concerns</a><li><a href=#content-type-sniffing>2.6.4 Determining the type of a resource</a><li><a href=#extracting-character-encodings-from-meta-elements>2.6.5 Extracting character encodings from <code>meta</code> elements</a>
<li><a href=#cors-settings-attributes>2.6.6 CORS settings attributes</a><li><a href=#cors-enabled-fetch>2.6.7 CORS-enabled fetch</a></ol><li><a href=#common-dom-interfaces>2.7 Common DOM interfaces</a><ol><li><a href=#reflecting-content-attributes-in-idl-attributes>2.7.1 Reflecting content attributes in IDL attributes</a><li><a href=#collections-2>2.7.2 Collections</a><ol><li><a href=#htmlallcollection>2.7.2.1 HTMLAllCollection</a><li><a href=#htmlformcontrolscollection>2.7.2.2 HTMLFormControlsCollection</a><li><a href=#htmloptionscollection>2.7.2.3 HTMLOptionsCollection</a><li><a href=#htmlpropertiescollection>2.7.2.4 HTMLPropertiesCollection</a></ol><li><a href=#domstringmap>2.7.3 DOMStringMap</a><li><a href=#domelementmap>2.7.4 DOMElementMap</a><li><a href=#transferable-objects>2.7.5 Transferable objects</a><li><a href=#safe-passing-of-structured-data>2.7.6 Safe passing of structured data</a><li><a href=#callbacks>2.7.7 Callbacks</a><li><a href=#garbage-collection>2.7.8 G
arbage collection</a></ol><li><a href=#namespaces>2.8 Namespaces</a></ol><li><a href=#dom>3 Semantics, structure, and APIs of HTML documents</a><ol><li><a href=#documents>3.1 Documents</a><ol><li><a href=#the-document-object>3.1.1 The <code>Document</code> object</a><li><a href=#resource-metadata-management>3.1.2 Resource metadata management</a><li><a href=#dom-tree-accessors>3.1.3 DOM tree accessors</a><li><a href=#loading-xml-documents>3.1.4 Loading XML documents</a></ol><li><a href=#elements>3.2 Elements</a><ol><li><a href=#semantics-2>3.2.1 Semantics</a><li><a href=#elements-in-the-dom>3.2.2 Elements in the DOM</a><li><a href=#element-definitions>3.2.3 Element definitions</a><ol><li><a href=#attributes>3.2.3.1 Attributes</a></ol><li><a href=#content-models>3.2.4 Content models</a><ol><li><a href=#the-nothing-content-model>3.2.4.1 The "nothing" content model</a><li><a href=#kinds-of-content>3.2.4.2 Kinds of content</a><ol><li><a href=#metadata-content>3.2.4.2.1 Metadata c
ontent</a><li><a href=#flow-content>3.2.4.2.2 Flow content</a><li><a href=#sectioning-content>3.2.4.2.3 Sectioning content</a><li><a href=#heading-content>3.2.4.2.4 Heading content</a><li><a href=#phrasing-content>3.2.4.2.5 Phrasing content</a><li><a href=#embedded-content-2>3.2.4.2.6 Embedded content</a><li><a href=#interactive-content>3.2.4.2.7 Interactive content</a><li><a href=#palpable-content>3.2.4.2.8 Palpable content</a><li><a href=#script-supporting-elements>3.2.4.2.9 Script-supporting elements</a></ol><li><a href=#transparent-content-models>3.2.4.3 Transparent content models</a><li><a href=#paragraphs>3.2.4.4 Paragraphs</a></ol><li><a href=#global-attributes>3.2.5 Global attributes</a><ol><li><a href=#the-id-attribute>3.2.5.1 The <code>id</code> attribute</a><li><a href=#the-title-attribute>3.2.5.2 The <code>title</code> attribute</a><li><a href=#the-lang-and-xml:lang-attributes>3.2.5.3 The <code>lang</code> and <code>xml:lang</code> attributes</a><li><a href=#the-
translate-attribute>3.2.5.4 The <code>translate</code> attribute</a><li><a href=#the-xml:base-attribute-(xml-only)>3.2.5.5 The <code>xml:base</code> attribute (XML only)</a><li><a href=#the-dir-attribute>3.2.5.6 The <code>dir</code> attribute</a><li><a href=#classes>3.2.5.7 The <code>class</code> attribute</a><li><a href=#the-style-attribute>3.2.5.8 The <code>style</code> attribute</a><li><a href=#embedding-custom-non-visible-data-with-the-data-*-attributes>3.2.5.9 Embedding custom non-visible data with the <code>data-*</code> attributes</a></ol><li><a href=#requirements-relating-to-the-bidirectional-algorithm>3.2.6 Requirements relating to the bidirectional algorithm</a><ol><li><a href=#authoring-conformance-criteria-for-bidirectional-algorithm-formatting-characters>3.2.6.1 Authoring conformance criteria for bidirectional-algorithm formatting characters</a><li><a href=#user-agent-conformance-criteria>3.2.6.2 User agent conformance criteria</a></ol><li><a href=#wai-aria>3.2.
7 WAI-ARIA</a></ol></ol><li><a href=#semantics>4 The elements of HTML</a><ol><li><a href=#the-root-element>4.1 The root element</a><ol><li><a href=#the-html-element>4.1.1 The <code>html</code> element</a></ol><li><a href=#document-metadata>4.2 Document metadata</a><ol><li><a href=#the-head-element>4.2.1 The <code>head</code> element</a><li><a href=#the-title-element>4.2.2 The <code>title</code> element</a><li><a href=#the-base-element>4.2.3 The <code>base</code> element</a><li><a href=#the-link-element>4.2.4 The <code>link</code> element</a><li><a href=#the-meta-element>4.2.5 The <code>meta</code> element</a><ol><li><a href=#standard-metadata-names>4.2.5.1 Standard metadata names</a><li><a href=#other-metadata-names>4.2.5.2 Other metadata names</a><li><a href=#pragma-directives>4.2.5.3 Pragma directives</a><li><a href=#other-pragma-directives>4.2.5.4 Other pragma directives</a><li><a href=#charset>4.2.5.5 Specifying the document's character encoding</a></ol><li><a href=#the-
style-element>4.2.6 The <code>style</code> element</a><li><a href=#interactions-of-styling-and-scripting>4.2.7 Interactions of styling and scripting</a></ol><li><a href=#sections>4.3 Sections</a><ol><li><a href=#the-body-element>4.3.1 The <code>body</code> element</a><li><a href=#the-article-element>4.3.2 The <code>article</code> element</a><li><a href=#the-section-element>4.3.3 The <code>section</code> element</a><li><a href=#the-nav-element>4.3.4 The <code>nav</code> element</a><li><a href=#the-aside-element>4.3.5 The <code>aside</code> element</a><li><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>4.3.6 The <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, and
+ <ol class=toc><li><a href=#introduction>1 Introduction</a><ol><li><a href=#abstract>1.1 Where does this specification fit?</a><li><a href=#is-this-html5?>1.2 Is this HTML5?</a><li><a href=#background>1.3 Background</a><li><a href=#audience>1.4 Audience</a><li><a href=#scope>1.5 Scope</a><li><a href=#history-2>1.6 History</a><li><a href=#design-notes>1.7 Design notes</a><ol><li><a href=#serialisability-of-script-execution>1.7.1 Serialisability of script execution</a><li><a href=#compliance-with-other-specifications>1.7.2 Compliance with other specifications</a><li><a href=#extensibility>1.7.3 Extensibility</a></ol><li><a href=#html-vs-xhtml>1.8 HTML vs XHTML</a><li><a href=#structure-of-this-specification>1.9 Structure of this specification</a><ol><li><a href=#how-to-read-this-specification>1.9.1 How to read this specification</a><li><a href=#typographic-conventions>1.9.2 Typographic conventions</a></ol><li><a href=#fingerprint>1.10 Privacy concerns</a><ol><li><a href=#fing
erprint-postMessage>1.10.1 Cross-site communication</a></ol><li><a href=#a-quick-introduction-to-html>1.11 A quick introduction to HTML</a><ol><li><a href=#writing-secure-applications-with-html>1.11.1 Writing secure applications with HTML</a><li><a href=#common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to avoid when using the scripting APIs</a><li><a href=#how-to-catch-mistakes-when-writing-html:-validators-and-conformance-checkers>1.11.3 How to catch mistakes when writing HTML: validators and conformance checkers</a></ol><li><a href=#conformance-requirements-for-authors>1.12 Conformance requirements for authors</a><ol><li><a href=#presentational-markup>1.12.1 Presentational markup</a><li><a href=#syntax-errors>1.12.2 Syntax errors</a><li><a href=#restrictions-on-content-models-and-on-attribute-values>1.12.3 Restrictions on content models and on attribute values</a></ol><li><a href=#suggested-reading>1.13 Suggested reading</a></ol><li><a href=#in
frastructure>2 Common infrastructure</a><ol><li><a href=#terminology>2.1 Terminology</a><ol><li><a href=#resources>2.1.1 Resources</a><li><a href=#xml>2.1.2 XML</a><li><a href=#dom-trees>2.1.3 DOM trees</a><li><a href=#scripting-2>2.1.4 Scripting</a><li><a href=#plugins>2.1.5 Plugins</a><li><a href=#encoding-terminology>2.1.6 Character encodings</a></ol><li><a href=#conformance-requirements>2.2 Conformance requirements</a><ol><li><a href=#conformance-classes>2.2.1 Conformance classes</a><li><a href=#dependencies>2.2.2 Dependencies</a><li><a href=#extensibility-2>2.2.3 Extensibility</a><li><a href=#interactions-with-xpath-and-xslt>2.2.4 Interactions with XPath and XSLT</a></ol><li><a href=#case-sensitivity-and-string-comparison>2.3 Case-sensitivity and string comparison</a><li><a href=#common-microsyntaxes>2.4 Common microsyntaxes</a><ol><li><a href=#common-parser-idioms>2.4.1 Common parser idioms</a><li><a href=#boolean-attributes>2.4.2 Boolean attributes</a><li><a href=#key
words-and-enumerated-attributes>2.4.3 Keywords and enumerated attributes</a><li><a href=#numbers>2.4.4 Numbers</a><ol><li><a href=#signed-integers>2.4.4.1 Signed integers</a><li><a href=#non-negative-integers>2.4.4.2 Non-negative integers</a><li><a href=#floating-point-numbers>2.4.4.3 Floating-point numbers</a><li><a href=#percentages-and-dimensions>2.4.4.4 Percentages and lengths</a><li><a href=#lists-of-integers>2.4.4.5 Lists of integers</a><li><a href=#lists-of-dimensions>2.4.4.6 Lists of dimensions</a></ol><li><a href=#dates-and-times>2.4.5 Dates and times</a><ol><li><a href=#months>2.4.5.1 Months</a><li><a href=#dates>2.4.5.2 Dates</a><li><a href=#yearless-dates>2.4.5.3 Yearless dates</a><li><a href=#times>2.4.5.4 Times</a><li><a href=#local-dates-and-times>2.4.5.5 Local dates and times</a><li><a href=#time-zones>2.4.5.6 Time zones</a><li><a href=#global-dates-and-times>2.4.5.7 Global dates and times</a><li><a href=#weeks>2.4.5.8 Weeks</a><li><a href=#durations>2.4.5.9
Durations</a><li><a href=#vaguer-moments-in-time>2.4.5.10 Vaguer moments in time</a></ol><li><a href=#colours>2.4.6 Colours</a><li><a href=#space-separated-tokens>2.4.7 Space-separated tokens</a><li><a href=#comma-separated-tokens>2.4.8 Comma-separated tokens</a><li><a href=#syntax-references>2.4.9 References</a><li><a href=#mq>2.4.10 Media queries</a></ol><li><a href=#urls>2.5 URLs</a><ol><li><a href=#terminology-2>2.5.1 Terminology</a><li><a href=#resolving-urls>2.5.2 Resolving URLs</a><li><a href=#dynamic-changes-to-base-urls>2.5.3 Dynamic changes to base URLs</a></ol><li><a href=#fetching-resources>2.6 Fetching resources</a><ol><li><a href=#terminology-3>2.6.1 Terminology</a><li><a href=#processing-model>2.6.2 Processing model</a><li><a href=#encrypted-http-and-related-security-concerns>2.6.3 Encrypted HTTP and related security concerns</a><li><a href=#content-type-sniffing>2.6.4 Determining the type of a resource</a><li><a href=#extracting-character-encodings-from-meta-
elements>2.6.5 Extracting character encodings from <code>meta</code> elements</a><li><a href=#cors-settings-attributes>2.6.6 CORS settings attributes</a><li><a href=#cors-enabled-fetch>2.6.7 CORS-enabled fetch</a></ol><li><a href=#common-dom-interfaces>2.7 Common DOM interfaces</a><ol><li><a href=#reflecting-content-attributes-in-idl-attributes>2.7.1 Reflecting content attributes in IDL attributes</a><li><a href=#collections-2>2.7.2 Collections</a><ol><li><a href=#htmlallcollection>2.7.2.1 HTMLAllCollection</a><li><a href=#htmlformcontrolscollection>2.7.2.2 HTMLFormControlsCollection</a><li><a href=#htmloptionscollection>2.7.2.3 HTMLOptionsCollection</a><li><a href=#htmlpropertiescollection>2.7.2.4 HTMLPropertiesCollection</a></ol><li><a href=#domstringmap>2.7.3 DOMStringMap</a><li><a href=#domelementmap>2.7.4 DOMElementMap</a><li><a href=#transferable-objects>2.7.5 Transferable objects</a><li><a href=#safe-passing-of-structured-data>2.7.6 Safe passing of structured data</a>
<li><a href=#callbacks>2.7.7 Callbacks</a><li><a href=#garbage-collection>2.7.8 Garbage collection</a></ol><li><a href=#namespaces>2.8 Namespaces</a></ol><li><a href=#dom>3 Semantics, structure, and APIs of HTML documents</a><ol><li><a href=#documents>3.1 Documents</a><ol><li><a href=#the-document-object>3.1.1 The <code>Document</code> object</a><li><a href=#resource-metadata-management>3.1.2 Resource metadata management</a><li><a href=#dom-tree-accessors>3.1.3 DOM tree accessors</a><li><a href=#loading-xml-documents>3.1.4 Loading XML documents</a></ol><li><a href=#elements>3.2 Elements</a><ol><li><a href=#semantics-2>3.2.1 Semantics</a><li><a href=#elements-in-the-dom>3.2.2 Elements in the DOM</a><li><a href=#element-definitions>3.2.3 Element definitions</a><ol><li><a href=#attributes>3.2.3.1 Attributes</a></ol><li><a href=#content-models>3.2.4 Content models</a><ol><li><a href=#the-nothing-content-model>3.2.4.1 The "nothing" content model</a><li><a href=#kinds-of-content>3
.2.4.2 Kinds of content</a><ol><li><a href=#metadata-content>3.2.4.2.1 Metadata content</a><li><a href=#flow-content>3.2.4.2.2 Flow content</a><li><a href=#sectioning-content>3.2.4.2.3 Sectioning content</a><li><a href=#heading-content>3.2.4.2.4 Heading content</a><li><a href=#phrasing-content>3.2.4.2.5 Phrasing content</a><li><a href=#embedded-content-2>3.2.4.2.6 Embedded content</a><li><a href=#interactive-content>3.2.4.2.7 Interactive content</a><li><a href=#palpable-content>3.2.4.2.8 Palpable content</a><li><a href=#script-supporting-elements>3.2.4.2.9 Script-supporting elements</a></ol><li><a href=#transparent-content-models>3.2.4.3 Transparent content models</a><li><a href=#paragraphs>3.2.4.4 Paragraphs</a></ol><li><a href=#global-attributes>3.2.5 Global attributes</a><ol><li><a href=#the-id-attribute>3.2.5.1 The <code>id</code> attribute</a><li><a href=#the-title-attribute>3.2.5.2 The <code>title</code> attribute</a><li><a href=#the-lang-and-xml:lang-attributes>3.2.5.
3 The <code>lang</code> and <code>xml:lang</code> attributes</a><li><a href=#the-translate-attribute>3.2.5.4 The <code>translate</code> attribute</a><li><a href=#the-xml:base-attribute-(xml-only)>3.2.5.5 The <code>xml:base</code> attribute (XML only)</a><li><a href=#the-dir-attribute>3.2.5.6 The <code>dir</code> attribute</a><li><a href=#classes>3.2.5.7 The <code>class</code> attribute</a><li><a href=#the-style-attribute>3.2.5.8 The <code>style</code> attribute</a><li><a href=#embedding-custom-non-visible-data-with-the-data-*-attributes>3.2.5.9 Embedding custom non-visible data with the <code>data-*</code> attributes</a></ol><li><a href=#requirements-relating-to-the-bidirectional-algorithm>3.2.6 Requirements relating to the bidirectional algorithm</a><ol><li><a href=#authoring-conformance-criteria-for-bidirectional-algorithm-formatting-characters>3.2.6.1 Authoring conformance criteria for bidirectional-algorithm formatting characters</a><li><a href=#user-agent-conformance-cr
iteria>3.2.6.2 User agent conformance criteria</a></ol><li><a href=#wai-aria>3.2.7 WAI-ARIA</a></ol></ol><li><a href=#semantics>4 The elements of HTML</a><ol><li><a href=#the-root-element>4.1 The root element</a><ol><li><a href=#the-html-element>4.1.1 The <code>html</code> element</a></ol><li><a href=#document-metadata>4.2 Document metadata</a><ol><li><a href=#the-head-element>4.2.1 The <code>head</code> element</a><li><a href=#the-title-element>4.2.2 The <code>title</code> element</a><li><a href=#the-base-element>4.2.3 The <code>base</code> element</a><li><a href=#the-link-element>4.2.4 The <code>link</code> element</a><li><a href=#the-meta-element>4.2.5 The <code>meta</code> element</a><ol><li><a href=#standard-metadata-names>4.2.5.1 Standard metadata names</a><li><a href=#other-metadata-names>4.2.5.2 Other metadata names</a><li><a href=#pragma-directives>4.2.5.3 Pragma directives</a><li><a href=#other-pragma-directives>4.2.5.4 Other pragma directives</a><li><a href=#chars
et>4.2.5.5 Specifying the document's character encoding</a></ol><li><a href=#the-style-element>4.2.6 The <code>style</code> element</a><li><a href=#interactions-of-styling-and-scripting>4.2.7 Interactions of styling and scripting</a></ol><li><a href=#sections>4.3 Sections</a><ol><li><a href=#the-body-element>4.3.1 The <code>body</code> element</a><li><a href=#the-article-element>4.3.2 The <code>article</code> element</a><li><a href=#the-section-element>4.3.3 The <code>section</code> element</a><li><a href=#the-nav-element>4.3.4 The <code>nav</code> element</a><li><a href=#the-aside-element>4.3.5 The <code>aside</code> element</a><li><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>4.3.6 The <code>h1</code>, <code>h2</code>, <code>h3</code>, <code>h4</code>, <code>h5</code>, and
<code>h6</code> elements</a><li><a href=#the-hgroup-element>4.3.7 The <code>hgroup</code> element</a><li><a href=#the-header-element>4.3.8 The <code>header</code> element</a><li><a href=#the-footer-element>4.3.9 The <code>footer</code> element</a><li><a href=#the-address-element>4.3.10 The <code>address</code> element</a><li><a href=#headings-and-sections>4.3.11 Headings and sections</a><ol><li><a href=#outlines>4.3.11.1 Creating an outline</a><li><a href=#sample-outlines>4.3.11.2 Sample outlines</a><li><a href=#exposing-outlines-to-users>4.3.11.3 Exposing outlines to users</a></ol><li><a href=#usage-summary-2>4.3.12 Usage summary</a><ol><li><a href=#article-or-section>4.3.12.1 Article or section?</a></ol></ol><li><a href=#grouping-content>4.4 Grouping content</a><ol><li><a href=#the-p-element>4.4.1 The <code>p</code> element</a><li><a href=#the-hr-element>4.4.2 The <code>hr</code> element</a><li><a href=#the-pre-element>4.4.3 The <code>pre</code> element</a><li><a href=#t
he-blockquote-element>4.4.4 The <code>blockquote</code> element</a><li><a href=#the-ol-element>4.4.5 The <code>ol</code> element</a><li><a href=#the-ul-element>4.4.6 The <code>ul</code> element</a><li><a href=#the-li-element>4.4.7 The <code>li</code> element</a><li><a href=#the-dl-element>4.4.8 The <code>dl</code> element</a><li><a href=#the-dt-element>4.4.9 The <code>dt</code> element</a><li><a href=#the-dd-element>4.4.10 The <code>dd</code> element</a><li><a href=#the-figure-element>4.4.11 The <code>figure</code> element</a><li><a href=#the-figcaption-element>4.4.12 The <code>figcaption</code> element</a><li><a href=#the-main-element>4.4.13 The <code>main</code> element</a><li><a href=#the-div-element>4.4.14 The <code>div</code> element</a></ol><li><a href=#text-level-semantics>4.5 Text-level semantics</a><ol><li><a href=#the-a-element>4.5.1 The <code>a</code> element</a><li><a href=#the-em-element>4.5.2 The <code>em</code> element</a><li><a href=#the-strong-element>4.5.3
The <code>strong</code> element</a><li><a href=#the-small-element>4.5.4 The <code>small</code> element</a><li><a href=#the-s-element>4.5.5 The <code>s</code> element</a><li><a href=#the-cite-element>4.5.6 The <code>cite</code> element</a><li><a href=#the-q-element>4.5.7 The <code>q</code> element</a><li><a href=#the-dfn-element>4.5.8 The <code>dfn</code> element</a><li><a href=#the-abbr-element>4.5.9 The <code>abbr</code> element</a><li><a href=#the-ruby-element>4.5.10 The <code>ruby</code> element</a><li><a href=#the-rt-element>4.5.11 The <code>rt</code> element</a><li><a href=#the-rp-element>4.5.12 The <code>rp</code> element</a><li><a href=#the-data-element>4.5.13 The <code>data</code> element</a><li><a href=#the-time-element>4.5.14 The <code>time</code> element</a><li><a href=#the-code-element>4.5.15 The <code>code</code> element</a><li><a href=#the-var-element>4.5.16 The <code>var</code> element</a><li><a href=#the-samp-element>4.5.17 The <code>samp</code> element</a><l
i><a href=#the-kbd-element>4.5.18 The <code>kbd</code> element</a><li><a href=#the-sub-and-sup-elements>4.5.19 The <code>sub</code> and <code>sup</code> elements</a><li><a href=#the-i-element>4.5.20 The <code>i</code> element</a><li><a href=#the-b-element>4.5.21 The <code>b</code> element</a><li><a href=#the-u-element>4.5.22 The <code>u</code> element</a><li><a href=#the-mark-element>4.5.23 The <code>mark</code> element</a><li><a href=#the-bdi-element>4.5.24 The <code>bdi</code> element</a><li><a href=#the-bdo-element>4.5.25 The <code>bdo</code> element</a><li><a href=#the-span-element>4.5.26 The <code>span</code> element</a><li><a href=#the-br-element>4.5.27 The <code>br</code> element</a><li><a href=#the-wbr-element>4.5.28 The <code>wbr</code> element</a><li><a href=#usage-summary>4.5.29 Usage summary</a></ol><li><a href=#links>4.6 Links</a><ol><li><a href=#introduction-2>4.6.1 Introduction</a><li><a href=#links-created-by-a-and-area-elements>4.6.2 Links created by <code>a
</code> and <code>area</code> elements</a><li><a href=#following-hyperlinks>4.6.3 Following hyperlinks</a><li><a href=#downloading-resources>4.6.4 Downloading resources</a><ol><li><a href=#hyperlink-auditing>4.6.4.1 Hyperlink auditing</a></ol><li><a href=#linkTypes>4.6.5 Link types</a><ol><li><a href=#rel-alternate>4.6.5.1 Link type "<code>alternate</code>"</a><li><a href=#link-type-author>4.6.5.2 Link type "<code>author</code>"</a><li><a href=#link-type-bookmark>4.6.5.3 Link type "<code>bookmark</code>"</a><li><a href=#link-type-external>4.6.5.4 Link type "<code>external</code>"</a><li><a href=#link-type-help>4.6.5.5 Link type "<code>help</code>"</a><li><a href=#rel-icon>4.6.5.6 Link type "<code>icon</code>"</a><li><a href=#link-type-license>4.6.5.7 Link type "<code>license</code>"</a><li><a href=#link-type-nofollow>4.6.5.8 Link type "<code>nofollow</code>"</a><li><a href=#link-type-noreferrer>4.6.5.9 Link type "<code>noreferrer</code>"</a><li><a href=#link-type-pingback>4.
6.5.10 Link type "<code>pingback</code>"</a><li><a href=#link-type-prefetch>4.6.5.11 Link type "<code>prefetch</code>"</a><li><a href=#link-type-search>4.6.5.12 Link type "<code>search</code>"</a><li><a href=#link-type-sidebar>4.6.5.13 Link type "<code>sidebar</code>"</a><li><a href=#link-type-stylesheet>4.6.5.14 Link type "<code>stylesheet</code>"</a><li><a href=#link-type-tag>4.6.5.15 Link type "<code>tag</code>"</a><li><a href=#sequential-link-types>4.6.5.16 Sequential link types</a><ol><li><a href=#link-type-next>4.6.5.16.1 Link type "<code>next</code>"</a><li><a href=#link-type-prev>4.6.5.16.2 Link type "<code>prev</code>"</a></ol><li><a href=#other-link-types>4.6.5.17 Other link types</a></ol></ol><li><a href=#edits>4.7 Edits</a><ol><li><a href=#the-ins-element>4.7.1 The <code>ins</code> element</a><li><a href=#the-del-element>4.7.2 The <code>del</code> element</a><li><a href=#attributes-common-to-ins-and-del-elements>4.7.3 Attributes common to <code>ins</code> and <co
de>del</code> elements</a><li><a href=#edits-and-paragraphs>4.7.4 Edits and paragraphs</a><li><a href=#edits-and-lists>4.7.5 Edits and lists</a><li><a href=#edits-and-tables>4.7.6 Edits and tables</a></ol><li><a href=#embedded-content>4.8 Embedded content</a><ol><li><a href=#introduction-3>4.8.1 Introduction</a><ol><li><a href=#adaptive-images>4.8.1.1 Adaptive images</a></ol><li><a href=#dependencies-2>4.8.2 Dependencies</a><li><a href=#the-picture-element>4.8.3 The <code>picture</code> element</a><li><a href=#the-source-element-when-used-with-the-picture-element>4.8.4 The <code>source</code> element when used with the <code>picture</code> element</a><li><a href=#the-img-element>4.8.5 The <code>img</code> element</a><ol><li><a href=#alt>4.8.5.1 Requirements for providing text to act as an alternative for images</a><ol><li><a href=#general-guidelines>4.8.5.1.1 General guidelines</a><li><a href=#a-link-or-button-containing-nothing-but-the-image>4.8.5.1.2 A link or button conta
ining nothing but the image</a><li><a href=#a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts,-diagrams,-graphs,-maps,-illustrations>4.8.5.1.3 A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations</a><li><a href=#a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons,-logos>4.8.5.1.4 A short phrase or label with an alternative graphical representation: icons, logos</a><li><a href=#text-that-has-been-rendered-to-a-graphic-for-typographical-effect>4.8.5.1.5 Text that has been rendered to a graphic for typographical effect</a><li><a href=#a-graphical-representation-of-some-of-the-surrounding-text>4.8.5.1.6 A graphical representation of some of the surrounding text</a><li><a href="#a-purely-decorative-image-that-doesn't-add-any-information">4.8.5.1.7 A purely decorative image that doesn't add any information</a><li><a href=#a-group-of-images-that-form-a-single-larger-picture
-with-no-links>4.8.5.1.8 A group of images that form a single larger picture with no links</a><li><a href=#a-group-of-images-that-form-a-single-larger-picture-with-links>4.8.5.1.9 A group of images that form a single larger picture with links</a><li><a href=#a-key-part-of-the-content>4.8.5.1.10 A key part of the content</a><li><a href=#an-image-not-intended-for-the-user>4.8.5.1.11 An image not intended for the user</a><li><a href=#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.5.1.12 An image in an e-mail or private document intended for a specific person who is known to be able to view images</a><li><a href=#guidance-for-markup-generators>4.8.5.1.13 Guidance for markup generators</a><li><a href=#guidance-for-conformance-checkers>4.8.5.1.14 Guidance for conformance checkers</a></ol></ol><li><a href=#the-iframe-element>4.8.6 The <code>iframe</code> element</a><li><a href=#the-embed-element>4.8.7 The <code>em
bed</code> element</a><li><a href=#the-object-element>4.8.8 The <code>object</code> element</a><li><a href=#the-param-element>4.8.9 The <code>param</code> element</a><li><a href=#the-video-element>4.8.10 The <code>video</code> element</a><li><a href=#the-audio-element>4.8.11 The <code>audio</code> element</a><li><a href=#the-source-element>4.8.12 The <code>source</code> element</a><li><a href=#the-track-element>4.8.13 The <code>track</code> element</a><li><a href=#media-elements>4.8.14 Media elements</a><ol><li><a href=#error-codes>4.8.14.1 Error codes</a><li><a href=#location-of-the-media-resource>4.8.14.2 Location of the media resource</a><li><a href=#mime-types>4.8.14.3 MIME types</a><li><a href=#network-states>4.8.14.4 Network states</a><li><a href=#loading-the-media-resource>4.8.14.5 Loading the media resource</a><li><a href=#offsets-into-the-media-resource>4.8.14.6 Offsets into the media resource</a><li><a href=#ready-states>4.8.14.7 Ready states</a><li><a href=#playin
g-the-media-resource>4.8.14.8 Playing the media resource</a><li><a href=#seeking>4.8.14.9 Seeking</a><li><a href=#media-resources-with-multiple-media-tracks>4.8.14.10 Media resources with multiple media tracks</a><ol><li><a href=#audiotracklist-and-videotracklist-objects>4.8.14.10.1 <code>AudioTrackList</code> and <code>VideoTrackList</code> objects</a><li><a href=#selecting-specific-audio-and-video-tracks-declaratively>4.8.14.10.2 Selecting specific audio and video tracks declaratively</a></ol><li><a href=#synchronising-multiple-media-elements>4.8.14.11 Synchronising multiple media elements</a><ol><li><a href=#introduction-4>4.8.14.11.1 Introduction</a><li><a href=#media-controllers>4.8.14.11.2 Media controllers</a><li><a href=#assigning-a-media-controller-declaratively>4.8.14.11.3 Assigning a media controller declaratively</a></ol><li><a href=#timed-text-tracks>4.8.14.12 Timed text tracks</a><ol><li><a href=#text-track-model>4.8.14.12.1 Text track model</a><li><a href=#sou
rcing-in-band-text-tracks>4.8.14.12.2 Sourcing in-band text tracks</a><li><a href=#sourcing-out-of-band-text-tracks>4.8.14.12.3 Sourcing out-of-band text tracks</a><li><a href=#guidelines-for-exposing-cues-in-various-formats-as-text-track-cues>4.8.14.12.4 Guidelines for exposing cues in various formats as text track cues</a><li><a href=#text-track-api>4.8.14.12.5 Text track API</a><li><a href=#text-tracks-describing-chapters>4.8.14.12.6 Text tracks describing chapters</a><li><a href=#cue-events>4.8.14.12.7 Event handlers for objects of the text track APIs</a><li><a href=#best-practices-for-metadata-text-tracks>4.8.14.12.8 Best practices for metadata text tracks</a></ol><li><a href=#user-interface>4.8.14.13 User interface</a><li><a href=#time-ranges>4.8.14.14 Time ranges</a><li><a href=#the-trackevent-interface>4.8.14.15 The <code>TrackEvent</code> interface</a><li><a href=#mediaevents>4.8.14.16 Event summary</a><li><a href=#security-and-privacy-considerations>4.8.14.17 Secur
ity and privacy considerations</a><li><a href=#best-practices-for-authors-using-media-elements>4.8.14.18 Best practices for authors using media elements</a><li><a href=#best-practices-for-implementors-of-media-elements>4.8.14.19 Best practices for implementors of media elements</a></ol><li><a href=#the-map-element>4.8.15 The <code>map</code> element</a><li><a href=#the-area-element>4.8.16 The <code>area</code> element</a><li><a href=#image-maps>4.8.17 Image maps</a><ol><li><a href=#authoring>4.8.17.1 Authoring</a><li><a href=#processing-model-2>4.8.17.2 Processing model</a></ol><li><a href=#mathml>4.8.18 MathML</a><li><a href=#svg>4.8.19 SVG</a><li><a href=#dimension-attributes>4.8.20 Dimension attributes</a></ol><li><a href=#tables>4.9 Tabular data</a><ol><li><a href=#the-table-element>4.9.1 The <code>table</code> element</a><ol><li><a href=#table-descriptions-techniques>4.9.1.1 Techniques for describing tables</a><li><a href=#table-layout-techniques>4.9.1.2 Techniques for
table design</a></ol><li><a href=#the-caption-element>4.9.2 The <code>caption</code> element</a><li><a href=#the-colgroup-element>4.9.3 The <code>colgroup</code> element</a><li><a href=#the-col-element>4.9.4 The <code>col</code> element</a><li><a href=#the-tbody-element>4.9.5 The <code>tbody</code> element</a><li><a href=#the-thead-element>4.9.6 The <code>thead</code> element</a><li><a href=#the-tfoot-element>4.9.7 The <code>tfoot</code> element</a><li><a href=#the-tr-element>4.9.8 The <code>tr</code> element</a><li><a href=#the-td-element>4.9.9 The <code>td</code> element</a><li><a href=#the-th-element>4.9.10 The <code>th</code> element</a><li><a href=#attributes-common-to-td-and-th-elements>4.9.11 Attributes common to <code>td</code> and <code>th</code> elements</a><li><a href=#processing-model-3>4.9.12 Processing model</a><ol><li><a href=#forming-a-table>4.9.12.1 Forming a table</a><li><a href=#header-and-data-cell-semantics>4.9.12.2 Forming relationships between data cel
ls and header cells</a></ol><li><a href=#table-sorting-model>4.9.13 Table sorting model</a><li><a href=#table-examples>4.9.14 Examples</a></ol><li><a href=#forms>4.10 Forms</a><ol><li><a href=#introduction-5>4.10.1 Introduction</a><ol><li><a href="#writing-a-form's-user-interface">4.10.1.1 Writing a form's user interface</a><li><a href=#implementing-the-server-side-processing-for-a-form>4.10.1.2 Implementing the server-side processing for a form</a><li><a href=#configuring-a-form-to-communicate-with-a-server>4.10.1.3 Configuring a form to communicate with a server</a><li><a href=#client-side-form-validation>4.10.1.4 Client-side form validation</a><li><a href=#enabling-client-side-automatic-filling-of-form-controls>4.10.1.5 Enabling client-side automatic filling of form controls</a><li><a href=#improving-the-user-experience-on-mobile-devices>4.10.1.6 Improving the user experience on mobile devices</a><li><a href=#the-difference-between-the-field-type,-the-autofill-field-name,
-and-the-input-modality>4.10.1.7 The difference between the field type, the autofill field name, and the input modality</a><li><a href=#input-author-notes>4.10.1.8 Date, time, and number formats</a></ol><li><a href=#categories>4.10.2 Categories</a><li><a href=#the-form-element>4.10.3 The <code>form</code> element</a><li><a href=#the-label-element>4.10.4 The <code>label</code> element</a><li><a href=#the-input-element>4.10.5 The <code>input</code> element</a><ol><li><a href=#states-of-the-type-attribute>4.10.5.1 States of the <code>type</code> attribute</a><ol><li><a href="#hidden-state-(type=hidden)">4.10.5.1.1 Hidden state (<code>type=hidden</code>)</a><li><a href="#text-(type=text)-state-and-search-state-(type=search)">4.10.5.1.2 Text (<code>type=text</code>) state and Search state (<code>type=search</code>)</a><li><a href="#telephone-state-(type=tel)">4.10.5.1.3 Telephone state (<code>type=tel</code>)</a><li><a href="#url-state-(type=url)">4.10.5.1.4 URL state (<code>type
=url</code>)</a><li><a href="#e-mail-state-(type=email)">4.10.5.1.5 E-mail state (<code>type=email</code>)</a><li><a href="#password-state-(type=password)">4.10.5.1.6 Password state (<code>type=password</code>)</a><li><a href="#date-and-time-state-(type=datetime)">4.10.5.1.7 Date and Time state (<code>type=datetime</code>)</a><li><a href="#date-state-(type=date)">4.10.5.1.8 Date state (<code>type=date</code>)</a><li><a href="#month-state-(type=month)">4.10.5.1.9 Month state (<code>type=month</code>)</a><li><a href="#week-state-(type=week)">4.10.5.1.10 Week state (<code>type=week</code>)</a><li><a href="#time-state-(type=time)">4.10.5.1.11 Time state (<code>type=time</code>)</a><li><a href="#local-date-and-time-state-(type=datetime-local)">4.10.5.1.12 Local Date and Time state (<code>type=datetime-local</code>)</a><li><a href="#number-state-(type=number)">4.10.5.1.13 Number state (<code>type=number</code>)</a><li><a href="#range-state-(type=range)">4.10.5.1.14 Range state (<c
ode>type=range</code>)</a><li><a href="#colour-state-(type=color)">4.10.5.1.15 Colour state (<code>type=color</code>)</a><li><a href="#checkbox-state-(type=checkbox)">4.10.5.1.16 Checkbox state (<code>type=checkbox</code>)</a><li><a href="#radio-button-state-(type=radio)">4.10.5.1.17 Radio Button state (<code>type=radio</code>)</a><li><a href="#file-upload-state-(type=file)">4.10.5.1.18 File Upload state (<code>type=file</code>)</a><li><a href="#submit-button-state-(type=submit)">4.10.5.1.19 Submit Button state (<code>type=submit</code>)</a><li><a href="#image-button-state-(type=image)">4.10.5.1.20 Image Button state (<code>type=image</code>)</a><li><a href="#reset-button-state-(type=reset)">4.10.5.1.21 Reset Button state (<code>type=reset</code>)</a><li><a href="#button-state-(type=button)">4.10.5.1.22 Button state (<code>type=button</code>)</a></ol><li><a href=#input-impl-notes>4.10.5.2 Implemention notes regarding localization of form controls</a><li><a href=#common-input
-element-attributes>4.10.5.3 Common <code>input</code> element attributes</a><ol><li><a href=#the-maxlength-and-minlength-attributes>4.10.5.3.1 The <code>maxlength</code> and <code>minlength</code> attributes</a><li><a href=#the-size-attribute>4.10.5.3.2 The <code>size</code> attribute</a><li><a href=#the-readonly-attribute>4.10.5.3.3 The <code>readonly</code> attribute</a><li><a href=#the-required-attribute>4.10.5.3.4 The <code>required</code> attribute</a><li><a href=#the-multiple-attribute>4.10.5.3.5 The <code>multiple</code> attribute</a><li><a href=#the-pattern-attribute>4.10.5.3.6 The <code>pattern</code> attribute</a><li><a href=#the-min-and-max-attributes>4.10.5.3.7 The <code>min</code> and <code>max</code> attributes</a><li><a href=#the-step-attribute>4.10.5.3.8 The <code>step</code> attribute</a><li><a href=#the-list-attribute>4.10.5.3.9 The <code>list</code> attribute</a><li><a href=#the-placeholder-attribute>4.10.5.3.10 The <code>placeholder</code> attribute</a><
/ol><li><a href=#common-input-element-apis>4.10.5.4 Common <code>input</code> element APIs</a><li><a href=#common-input-element-events>4.10.5.5 Common event behaviors</a></ol><li><a href=#the-button-element>4.10.6 The <code>button</code> element</a><li><a href=#the-select-element>4.10.7 The <code>select</code> element</a><li><a href=#the-datalist-element>4.10.8 The <code>datalist</code> element</a><li><a href=#the-optgroup-element>4.10.9 The <code>optgroup</code> element</a><li><a href=#the-option-element>4.10.10 The <code>option</code> element</a><li><a href=#the-textarea-element>4.10.11 The <code>textarea</code> element</a><li><a href=#the-keygen-element>4.10.12 The <code>keygen</code> element</a><li><a href=#the-output-element>4.10.13 The <code>output</code> element</a><li><a href=#the-progress-element>4.10.14 The <code>progress</code> element</a><li><a href=#the-meter-element>4.10.15 The <code>meter</code> element</a><li><a href=#the-fieldset-element>4.10.16 The <code>fi
eldset</code> element</a><li><a href=#the-legend-element>4.10.17 The <code>legend</code> element</a><li><a href=#form-control-infrastructure>4.10.18 Form control infrastructure</a><ol><li><a href="#a-form-control's-value">4.10.18.1 A form control's value</a><li><a href=#mutability>4.10.18.2 Mutability</a><li><a href=#association-of-controls-and-forms>4.10.18.3 Association of controls and forms</a></ol><li><a href=#attributes-common-to-form-controls>4.10.19 Attributes common to form controls</a><ol><li><a href=#naming-form-controls:-the-name-attribute>4.10.19.1 Naming form controls: the <code>name</code> attribute</a><li><a href=#submitting-element-directionality:-the-dirname-attribute>4.10.19.2 Submitting element directionality: the <code>dirname</code> attribute</a><li><a href=#limiting-user-input-length:-the-maxlength-attribute>4.10.19.3 Limiting user input length: the <code>maxlength</code> attribute</a><li><a href=#setting-minimum-input-length-requirements:-the-minlength
-attribute>4.10.19.4 Setting minimum input length requirements: the <code>minlength</code> attribute</a><li><a href=#enabling-and-disabling-form-controls:-the-disabled-attribute>4.10.19.5 Enabling and disabling form controls: the <code>disabled</code> attribute</a><li><a href=#form-submission>4.10.19.6 Form submission</a><ol><li><a href=#autofocusing-a-form-control:-the-autofocus-attribute>4.10.19.6.1 Autofocusing a form control: the <code>autofocus</code> attribute</a></ol><li><a href=#input-modalities:-the-inputmode-attribute>4.10.19.7 Input modalities: the <code>inputmode</code> attribute</a><li><a href=#autofill>4.10.19.8 Autofill</a><ol><li><a href=#autofilling-form-controls:-the-autocomplete-attribute>4.10.19.8.1 Autofilling form controls: the <code>autocomplete</code> attribute</a><li><a href=#processing-model-4>4.10.19.8.2 Processing model</a><li><a href=#user-interface-for-bulk-autofill>4.10.19.8.3 User interface for bulk autofill</a><li><a href=#the-autocompleteerr
orevent-interface>4.10.19.8.4 The <code>AutocompleteErrorEvent</code> interface</a></ol></ol><li><a href=#textFieldSelection>4.10.20 APIs for the text field selections</a><li><a href=#constraints>4.10.21 Constraints</a><ol><li><a href=#definitions>4.10.21.1 Definitions</a><li><a href=#constraint-validation>4.10.21.2 Constraint validation</a><li><a href=#the-constraint-validation-api>4.10.21.3 The constraint validation API</a><li><a href=#security-forms>4.10.21.4 Security</a></ol><li><a href=#form-submission-2>4.10.22 Form submission</a><ol><li><a href=#introduction-6>4.10.22.1 Introduction</a><li><a href=#implicit-submission>4.10.22.2 Implicit submission</a><li><a href=#form-submission-algorithm>4.10.22.3 Form submission algorithm</a><li><a href=#constructing-form-data-set>4.10.22.4 Constructing the form data set</a><li><a href=#selecting-a-form-submission-encoding>4.10.22.5 Selecting a form submission encoding</a><li><a href=#url-encoded-form-data>4.10.22.6 URL-encoded form
data</a><li><a href=#multipart-form-data>4.10.22.7 Multipart form data</a><li><a href=#plain-text-form-data>4.10.22.8 Plain text form data</a></ol><li><a href=#resetting-a-form>4.10.23 Resetting a form</a></ol><li><a href=#interactive-elements>4.11 Interactive elements</a><ol><li><a href=#the-details-element>4.11.1 The <code>details</code> element</a><li><a href=#the-summary-element>4.11.2 The <code>summary</code> element</a><li><a href=#the-menu-element>4.11.3 The <code>menu</code> element</a><li><a href=#the-menuitem-element>4.11.4 The <code>menuitem</code> element</a><li><a href=#context-menus>4.11.5 Context menus</a><ol><li><a href=#declaring-a-context-menu>4.11.5.1 Declaring a context menu</a><li><a href=#processing-model-5>4.11.5.2 Processing model</a><li><a href=#the-relatedevent-interfaces>4.11.5.3 The <code>RelatedEvent</code> interfaces</a></ol><li><a href=#commands>4.11.6 Commands</a><ol><li><a href=#facets-2>4.11.6.1 Facets</a><li><a href=#using-the-a-element-to
-define-a-command>4.11.6.2 Using the <code>a</code> element to define a command</a><li><a href=#using-the-button-element-to-define-a-command>4.11.6.3 Using the <code>button</code> element to define a command</a><li><a href=#using-the-input-element-to-define-a-command>4.11.6.4 Using the <code>input</code> element to define a command</a><li><a href=#using-the-option-element-to-define-a-command>4.11.6.5 Using the <code>option</code> element to define a command</a><li><a href=#using-the-menuitem-element-to-define-a-command>4.11.6.6 Using the <code>menuitem</code> element to define a
command</a><li><a href=#using-the-command-attribute-on-menuitem-elements-to-define-a-command-indirectly>4.11.6.7 Using the <code>command</code> attribute on <code>menuitem</code> elements to define
a command indirectly</a><li><a href=#using-the-accesskey-attribute-on-a-label-element-to-define-a-command>4.11.6.8 Using the <code>accesskey</code> attribute
@@ -805,7 +805,23 @@
object. <a href=#refsMQ>[MQ]</a> <a href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li>The user's time zone.</ul>
+ <h4 id=fingerprint-postMessage>1.10.1 Cross-site communication</h4>
+ <p>The <code id=fingerprint-postMessage:dom-window-postmessage><a href=#dom-window-postmessage>postMessage()</a></code> API provides a mechanism by
+ which two sites can communicate directly. At first glance, this might appear to open a new way by
+ which the problems described above can occur. However, in practice, multiple mechanisms exist by
+ which two sites can communicate that predate this API: a site embedding another can send data via
+ an <code id=fingerprint-postMessage:the-iframe-element><a href=#the-iframe-element>iframe</a></code> element's dimensions; a site can use a cross-site image request with a
+ unique identifier known to the server to initiate a server-side data exchange; or indeed the
+ fingerprinting techniques described above can be used by two sites to uniquely identify a visitor
+ such that information can then be exchanged on the server side.</p>
+
+ <p>Fundamentally, users that do not trust a site to treat their information with respect have to
+ avoid visiting that site at all.</p>
+
+
+
+
<h3 id=a-quick-introduction-to-html>1.11 A quick introduction to HTML</h3>
<p><i>This section is non-normative.</i></p>
@@ -67034,6 +67050,9 @@
that allows documents to communicate with each other regardless of their source domain, in a way
designed to not enable cross-site scripting attacks.</p>
+ <p class=note>This API <a href=fingerprint-postMessage>has some privacy implications</a> that
+ may not be immediately obvious.</p>
+
<p>The <a href=#task-source id=web-messaging:task-source>task source</a> for the <a href=#concept-task id=web-messaging:concept-task>tasks</a> in
@@ -67137,6 +67156,7 @@
+
<h4 id=posting-messages>9.4.3 Posting messages</h4>
<dl class=domintro><dt><var>window</var> . <code id=posting-messages:dom-window-postmessage><a href=#dom-window-postmessage>postMessage</a></code>(<var>message</var>, <var>targetOrigin</var> [, <var>transfer</var> ] )<dd>
Modified: source
===================================================================
--- source 2014-09-03 22:52:01 UTC (rev 8740)
+++ source 2014-09-03 23:43:15 UTC (rev 8741)
@@ -972,7 +972,23 @@
</ul>
+ <h4 id="fingerprint-postMessage">Cross-site communication</h4>
+ <p>The <code data-x="dom-window-postMessage">postMessage()</code> API provides a mechanism by
+ which two sites can communicate directly. At first glance, this might appear to open a new way by
+ which the problems described above can occur. However, in practice, multiple mechanisms exist by
+ which two sites can communicate that predate this API: a site embedding another can send data via
+ an <code>iframe</code> element's dimensions; a site can use a cross-site image request with a
+ unique identifier known to the server to initiate a server-side data exchange; or indeed the
+ fingerprinting techniques described above can be used by two sites to uniquely identify a visitor
+ such that information can then be exchanged on the server side.</p>
+
+ <p>Fundamentally, users that do not trust a site to treat their information with respect have to
+ avoid visiting that site at all.</p>
+
+
+
+
<h3>A quick introduction to HTML</h3>
<!-- NON-NORMATIVE SECTION -->
@@ -90988,6 +91004,9 @@
that allows documents to communicate with each other regardless of their source domain, in a way
designed to not enable cross-site scripting attacks.</p>
+ <p class="note">This API <a href="fingerprint-postMessage">has some privacy implications</a> that
+ may not be immediately obvious.</p>
+
<div w-nodev>
<p>The <span>task source</span> for the <span data-x="concept-task">tasks</span> in
@@ -91093,6 +91112,7 @@
<!--REMOVE-TOPIC:Security-->
+
<h4>Posting messages</h4>
<dl class="domintro">
More information about the Commit-Watchers
mailing list