W3C

HTML5

 

A vocabulary and associated APIs for HTML and XHTML

W3C Working Draft 13 January 2011


This Version:

http://www.w3.org/TR/2011/WD-html5-20110113/

Latest Published Version:

http://www.w3.org/TR/html5/

Latest Editor's Draft:

http://dev.w3.org/html5/spec/Overview.html
 
Previous Versions:

http://www.w3.org/TR/2010/WD-html5-20101019/

http://www.w3.org/TR/2010/WD-html5-20100624/

http://www.w3.org/TR/2010/WD-html5-20100304/

http://www.w3.org/TR/2009/WD-html5-20090825/

http://www.w3.org/TR/2009/WD-html5-20090423/

http://www.w3.org/TR/2009/WD-html5-20090212/

http://www.w3.org/TR/2008/WD-html5-20080610/

http://www.w3.org/TR/2008/WD-html5-20080122/
 
Editor:

Ian Hickson, Google, Inc.
 
This specification is available in the following formats:  single page HTML,  multipage HTML,  web developer edition. This is revision 1.4626.  

Copyright  © 2010 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C  liability,  trademark  and document  use rules apply.
 
The bulk of the text of this specification is also  available in the WHATWG Web Applications 1.0 specification, under a license that permits  reuse of the specification text.
 

Abstract


This specification defines the 5th major revision of the core  language of the World Wide Web: the Hypertext Markup Language  (HTML). In this version, new features are introduced to help Web  application authors, new elements are introduced based on research  into prevailing authoring practices, and special attention has been  given to defining clear conformance criteria for user agents in an  effort to improve interoperability.

Status of This document


This section describes the status of this document at the  time of its publication. Other documents may supersede this  document. A list of current W3C publications and the most recently  formally published revision of this technical report can be found in  the W3C technical reports index  at http://www.w3.org/TR/.

If you wish to make comments regarding this document in a manner  that is tracked by the W3C, please submit them via using our  public bug database. If you do not have an account then you can  enter feedback using this form:
Feedback Comments

Please don't use section numbers as these tend to change rapidly and make your feedback harder to understand.

(Note: Your IP address will be publicly recorded for spam prevention purposes.)


If you cannot do this then you can also e-mail feedback to public-html-comments@w3.org  (subscribe,  archives),  and arrangements will be made to transpose the comments to our  public bug database.   Alternatively, you can e-mail feedback to whatwg@whatwg.org (subscribe,  archives).  The editor guarantees that all substantive feedback sent to this  list will receive a reply. However, such feedback is not considered  formal feedback for the W3C process.   All feedback is welcome.

The working groups maintains a  list of all bug reports that the editor has not yet tried to  address and a list of issues  for which the chairs have not yet declared a decision. The  editor also maintains a list  of all e-mails that he has not yet tried to address. These bugs,  issues, and e-mails apply to multiple HTML-related specifications,  not just this one.

Implementors should be aware that this specification is not  stable. Implementors who are not taking part in the  discussions are likely to find the specification changing out from  under them in incompatible ways. Vendors interested in  implementing this specification before it eventually reaches the  Candidate Recommendation stage should join the aforementioned  mailing lists and take part in the discussions.

 
This is a work in  progress! For the latest updates from the HTML WG, possibly  including important bug fixes, please look at the editor's draft instead.  


The publication of this document by the W3C as a W3C Working  Draft does not imply that all of the participants in the W3C HTML  working group endorse the contents of the specification. Indeed, for  any section of the specification, one can usually find many members  of the working group or of the W3C as a whole who object strongly to  the current text, the existence of the section at all, or the idea  that the working group should even spend time discussing the concept  of that section.

The latest stable version of the editor's draft of this  specification is always available on the W3C CVS server and in the WHATWG Subversion  repository. The latest  editor's working copy (which may contain unfinished text in the  process of being prepared) contains the latest draft text of this  specification (amongst others). For more details, please see the WHATWG  FAQ.

There are various ways to follow the change history for the  HTML specifications:

E-mail notifications of changes

HTML-Diffs mailing list (diff-marked HTML versions for each change): http://lists.w3.org/Archives/Public/public-html-diffs/latest

Commit-Watchers mailing list (complete source diffs): http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org

Real-time notifications of changes:

Generated diff-marked HTML versions for each change: http://twitter.com/HTML5

Browsable version-control record of all changes:

CVSWeb interface with side-by-side diffs: http://dev.w3.org/cvsweb/html5/

Annotated summary with unified diffs: http://html5.org/tools/web-apps-tracker

Raw Subversion interface: svn checkout http://svn.whatwg.org/webapps/
 

The W3C HTML Working  Group is the W3C working group responsible for this  specification's progress along the W3C Recommendation  track.  This specification is the 13 January 2011 Working Draft.  

Work on this specification is also done at the WHATWG. The W3C HTML working group  actively pursues convergence with the WHATWG, as required by the W3C HTML working  group charter.

This document was produced by a group operating under the 5  February 2004 W3C Patent Policy. W3C maintains a public list of  any patent disclosures made in connection with the deliverables  of the group; that page also includes instructions for disclosing a  patent. An individual who has actual knowledge of a patent which the  individual believes contains Essential  Claim(s) must disclose the information in accordance with section  6 of the W3C Patent Policy.

Table of Contents


(一)1Introduction  
(一)1.1 Background

(二)1.2 Audience

(三)1.3 Scope

(四)1.4 History

(五)1.5 Design notes  
(一)1.5.1 Serializability of script execution

(二)1.5.2 Compliance with other specifications

(六)1.6 HTML vs XHTML

(七)1.7 Structure of this specification  
(一)1.7.1 How to read this specification

(二)1.7.2 Typographic conventions

(八)1.8 A quick introduction to HTML

(九)1.9 Conformance requirements for authors  
(一)1.9.1 Presentational markup

(二)1.9.2 Syntax errors

(三)1.9.3 Restrictions on content models and on attribute values

(十)1.10 Recommended reading

(二)2Common infrastructure  
(一)2.1 Terminology  
(一)2.1.1 Resources

(二)2.1.2 XML

(三)2.1.3 DOM trees

(四)2.1.4 Scripting

(五)2.1.5 Plugins

(六)2.1.6 Character encodings

(二)2.2 Conformance requirements  
(一)2.2.1 Dependencies

(二)2.2.2 Extensibility

(三)2.3 Case-sensitivity and string comparison

(四)2.4 UTF-8

(五)2.5 Common microsyntaxes  
(一)2.5.1 Common parser idioms

(二)2.5.2 Boolean attributes

(三)2.5.3 Keywords and enumerated attributes

(四)2.5.4 Numbers  
(一)2.5.4.1 Non-negative integers

(二)2.5.4.2 Signed integers

(三)2.5.4.3 Real numbers

(四)2.5.4.4 Percentages and lengths

(五)2.5.4.5 Lists of integers

(六)2.5.4.6 Lists of dimensions

(五)2.5.5 Dates and times  
(一)2.5.5.1 Months

(二)2.5.5.2 Dates

(三)2.5.5.3 Times

(四)2.5.5.4 Local dates and times

(五)2.5.5.5 Global dates and times

(六)2.5.5.6 Weeks

(七)2.5.5.7 Vaguer moments in time

(六)2.5.6 Colors

(七)2.5.7 Space-separated tokens

(八)2.5.8 Comma-separated tokens

(九)2.5.9 References

(十)2.5.10 Media queries

(六)2.6 URLs  
(一)2.6.1 Terminology

(二)2.6.2 Dynamic changes to base URLs

(三)2.6.3 Interfaces for URL manipulation

(七)2.7 Fetching resources  
(一)2.7.1 Protocol concepts

(二)2.7.2 Encrypted HTTP and related security concerns

(三)2.7.3 Determining the type of a resource

(八)2.8 Common DOM interfaces  
(一)2.8.1 Reflecting content attributes in IDL attributes

(二)2.8.2 Collections  
(一)2.8.2.1 HTMLCollection

(二)2.8.2.2 HTMLAllCollection

(三)2.8.2.3 HTMLFormControlsCollection

(四)2.8.2.4 HTMLOptionsCollection

(三)2.8.3 DOMTokenList

(四)2.8.4 DOMSettableTokenList

(五)2.8.5 Safe passing of structured data

(六)2.8.6 DOMStringMap

(七)2.8.7 DOM feature strings

(八)2.8.8 Exceptions

(九)2.8.9 Garbage collection

(九)2.9 Namespaces

(三)3Semantics, structure, and APIs of HTML documents  
(一)3.1 Documents  
(一)3.1.1 Documents in the DOM

(二)3.1.2 Security

(三)3.1.3 Resource metadata management

(四)3.1.4 DOM tree accessors

(五)3.1.5 Creating documents

(六)3.1.6 Loading XML documents

(二)3.2 Elements  
(一)3.2.1 Semantics

(二)3.2.2 Elements in the DOM

(三)3.2.3 Global attributes  
(一)3.2.3.1 The idattribute

(二)3.2.3.2 The title attribute

(三)3.2.3.3 The lang and xml:lang attributes

(四)3.2.3.4 The xml:base  attribute (XML only)

(五)3.2.3.5 The dir attribute

(六)3.2.3.6 The class attribute

(七)3.2.3.7 The style attribute

(八)3.2.3.8 Embedding custom non-visible data with the data-* attributes

(四)3.2.4 Element definitions  
(一)3.2.4.1 Attributes

(五)3.2.5 Content models  
(一)3.2.5.1 Kinds of content  
(一)3.2.5.1.1 Metadata content

(二)3.2.5.1.2 Flow content

(三)3.2.5.1.3 Sectioning content

(四)3.2.5.1.4 Heading content

(五)3.2.5.1.5 Phrasing content

(六)3.2.5.1.6 Embedded content

(七)3.2.5.1.7 Interactive content

(二)3.2.5.2 Transparent content models

(三)3.2.5.3 Paragraphs

(六)3.2.6 Requirements relating to bidirectional-algorithm formatting  characters

(七)3.2.7 Annotations for assistive technology products (ARIA)

(三)3.3 APIs in HTML documents

(四)3.4 Interactions with XPath and XSLT

(五)3.5 Dynamic markup insertion  
(一)3.5.1 Opening the input stream

(二)3.5.2 Closing the input stream

(三)3.5.3 document.write()

(四)3.5.4 document.writeln()

(五)3.5.5 innerHTML

(六)3.5.6 outerHTML

(七)3.5.7 insertAdjacentHTML()

(四)4The elements of HTML  
(一)4.1 The root element  
(一)4.1.1 The html element

(二)4.2 Document metadata  
(一)4.2.1 The head element

(二)4.2.2 The title element

(三)4.2.3 The base element

(四)4.2.4 The link element

(五)4.2.5 The meta element  
(一)4.2.5.1 Standard metadata names

(二)4.2.5.2 Other metadata names

(三)4.2.5.3 Pragma directives

(四)4.2.5.4 Other pragma directives

(五)4.2.5.5 Specifying the document's character encoding

(六)4.2.6 The style element

(七)4.2.7 Styling

(三)4.3 Scripting  
(一)4.3.1 The script element  
(一)4.3.1.1 Scripting languages

(二)4.3.1.2 Restrictions for contents of script elements

(三)4.3.1.3 Inline documentation for external scripts

(二)4.3.2 The noscript element

(四)4.4 Sections  
(一)4.4.1 The body element

(二)4.4.2 The section element

(三)4.4.3 The nav element

(四)4.4.4 The article element

(五)4.4.5 The aside element

(六)4.4.6 The h1, h2,  h3, h4,  h5, and h6  elements

(七)4.4.7 The hgroup element

(八)4.4.8 The header element

(九)4.4.9 The footer element

(十)4.4.10 The address element

(11)4.4.11 Headings and sections
(一)4.4.11.1 Creating an outline

(五)4.5 Grouping content  
(一)4.5.1 The pelement

(二)4.5.2 The hrelement

(三)4.5.3 The pre element

(四)4.5.4 The blockquote element

(五)4.5.5 The olelement

(六)4.5.6 The ulelement

(七)4.5.7 The lielement

(八)4.5.8 The dlelement

(九)4.5.9 The dtelement

(十)4.5.10 The ddelement

(11)4.5.11 The figure element

(12)4.5.12 The figcaption element

(13)4.5.13 The div element

(六)4.6 Text-level semantics  
(一)4.6.1 The aelement

(二)4.6.2 The emelement

(三)4.6.3 The strong element

(四)4.6.4 The small element

(五)4.6.5 The selement

(六)4.6.6 The cite element

(七)4.6.7 The qelement

(八)4.6.8 The dfn element

(九)4.6.9 The abbr element

(十)4.6.10 The time element

(11)4.6.11 The code element

(12)4.6.12 The var element

(13)4.6.13 The samp element

(14)4.6.14 The kbd element

(15)4.6.15 The sub and sup elements

(16)4.6.16 The ielement

(17)4.6.17 The belement

(18)4.6.18 The mark element

(19)4.6.19 The ruby element

(20)4.6.20 The rtelement

(21)4.6.21 The rpelement

(22)4.6.22 The bdi element

(23)4.6.23 The bdo element

(24)4.6.24 The span element

(25)4.6.25 The brelement

(26)4.6.26 The wbr element

(27)4.6.27 Usage summary

(七)4.7 Edits  
(一)4.7.1 The ins element

(二)4.7.2 The del element

(三)4.7.3 Attributes common to ins and del elements

(四)4.7.4 Edits and paragraphs

(五)4.7.5 Edits and lists

(八)4.8 Embedded content  
(一)4.8.1 The img element  
(一)4.8.1.1 Requirements for providing text to act as an alternative for images  
(一)4.8.1.1.1 General guidelines

(二)4.8.1.1.2 A link or button containing nothing but the image

(三)4.8.1.1.3 A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations

(四)4.8.1.1.4 A short phrase or label with an alternative graphical representation: icons, logos

(五)4.8.1.1.5 Text that has been rendered to a graphic for typographical effect

(六)4.8.1.1.6 A graphical representation of some of the surrounding text

(七)4.8.1.1.7 A purely decorative image that doesn't add any information

(八)4.8.1.1.8 A group of images that form a single larger picture with no links

(九)4.8.1.1.9 A group of images that form a single larger picture with links

(十)4.8.1.1.10 A key part of the content

(11)4.8.1.1.11 An image not intended for the user

(12)4.8.1.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

(13)4.8.1.1.13 Guidance for markup generators

(14)4.8.1.1.14 Guidance for conformance checkers

(二)4.8.2 The iframe element

(三)4.8.3 The embed element

(四)4.8.4 The object element

(五)4.8.5 The param element

(六)4.8.6 The video element

(七)4.8.7 The audio element

(八)4.8.8 The source element

(九)4.8.9 The track element

(十)4.8.10 Media elements  
(一)4.8.10.1 Error codes

(二)4.8.10.2 Location of the media resource

(三)4.8.10.3 MIME types

(四)4.8.10.4 Network states

(五)4.8.10.5 Loading the media resource

(六)4.8.10.6 Offsets into the media resource

(七)4.8.10.7 The ready states

(八)4.8.10.8 Playing the media resource

(九)4.8.10.9 Seeking

(十)4.8.10.10 Timed text tracks  
(一)4.8.10.10.1 Text track model

(二)4.8.10.10.2 Sourcing in-band text tracks

(三)4.8.10.10.3 Sourcing out-of-band text tracks

(四)4.8.10.10.4 Text track API

(五)4.8.10.10.5 Event definitions

(11)4.8.10.11 User interface

(12)4.8.10.12 Time ranges

(13)4.8.10.13 Event summary

(14)4.8.10.14 Security and privacy considerations

(15)4.8.10.15 Best practices for authors using media elements

(16)4.8.10.16 Best practices for implementors of media elements

(11)4.8.11 The canvas element  
(一)4.8.11.1 Color spaces and color correction

(二)4.8.11.2 Security with canvas elements

(12)4.8.12 The map element

(13)4.8.13 The area element

(14)4.8.14 Image maps  
(一)4.8.14.1 Authoring

(二)4.8.14.2 Processing model

(15)4.8.15 MathML

(16)4.8.16 SVG

(17)4.8.17 Dimension attributes

(九)4.9 Tabular data  
(一)4.9.1 The table element

(二)4.9.2 The caption element

(三)4.9.3 The colgroup element

(四)4.9.4 The col element

(五)4.9.5 The tbody element

(六)4.9.6 The thead element

(七)4.9.7 The tfoot element

(八)4.9.8 The trelement

(九)4.9.9 The tdelement

(十)4.9.10 The thelement

(11)4.9.11 Attributes common to tdand thelements

(12)4.9.12 Processing model  
(一)4.9.12.1 Forming a table

(二)4.9.12.2 Forming relationships between data cells and header cells

(13)4.9.13 Examples

(十)4.10 Forms  
(一)4.10.1 Introduction  
(一)4.10.1.1 Writing a form's user interface

(二)4.10.1.2 Implementing the server-side processing for a form

(三)4.10.1.3 Configuring a form to communicate with a server

(四)4.10.1.4 Client-side form validation

(二)4.10.2 Categories

(三)4.10.3 The form element

(四)4.10.4 The fieldset element

(五)4.10.5 The legend element

(六)4.10.6 The label element

(七)4.10.7 The input element  
(一)4.10.7.1 States of the type attribute  
(一)4.10.7.1.1 Hidden state

(二)4.10.7.1.2 Text state and Search state

(三)4.10.7.1.3 Telephone state

(四)4.10.7.1.4 URL state

(五)4.10.7.1.5 E-mail state

(六)4.10.7.1.6 Password state

(七)4.10.7.1.7 Date and Time state

(八)4.10.7.1.8 Date state

(九)4.10.7.1.9 Month state

(十)4.10.7.1.10 Week state

(11)4.10.7.1.11 Time state

(12)4.10.7.1.12 Local Date and Time state

(13)4.10.7.1.13 Number state

(14)4.10.7.1.14 Range state

(15)4.10.7.1.15 Color state

(16)4.10.7.1.16 Checkbox state

(17)4.10.7.1.17 Radio Button state

(18)4.10.7.1.18 File Upload state

(19)4.10.7.1.19 Submit Button state

(20)4.10.7.1.20 Image Button state

(21)4.10.7.1.21 Reset Button state

(22)4.10.7.1.22 Button state

(二)4.10.7.2 Common input element attributes  
(一)4.10.7.2.1 The autocomplete attribute

(二)4.10.7.2.2 The dirname attribute

(三)4.10.7.2.3 The list attribute

(四)4.10.7.2.4 The readonly attribute

(五)4.10.7.2.5 The size attribute

(六)4.10.7.2.6 The required attribute

(七)4.10.7.2.7 The multiple attribute

(八)4.10.7.2.8 The maxlength attribute

(九)4.10.7.2.9 The pattern attribute

(十)4.10.7.2.10 The min and max attributes

(11)4.10.7.2.11 The step attribute

(12)4.10.7.2.12 The placeholder attribute

(三)4.10.7.3 Common input element APIs

(四)4.10.7.4 Common event behaviors

(八)4.10.8 The button element

(九)4.10.9 The select element

(十)4.10.10 The datalist element

(11)4.10.11 The optgroup element

(12)4.10.12 The option element

(13)4.10.13 The textarea element

(14)4.10.14 The keygen element

(15)4.10.15 The output element

(16)4.10.16 The progress element

(17)4.10.17 The meter element

(18)4.10.18 Association of controls and forms

(19)4.10.19 Attributes common to form controls  
(一)4.10.19.1 Naming form controls

(二)4.10.19.2 Enabling and disabling form controls

(三)4.10.19.3 A form control's value

(四)4.10.19.4 Autofocusing a form control

(五)4.10.19.5 Limiting user input length

(六)4.10.19.6 Form submission

(七)4.10.19.7 Submitting element directionality

(20)4.10.20 APIs for the text field selections

(21)4.10.21 Constraints  
(一)4.10.21.1 Definitions

(二)4.10.21.2 Constraint validation

(三)4.10.21.3 The constraint validation API

(四)4.10.21.4 Security

(22)4.10.22 Form submission  
(一)4.10.22.1 Introduction

(二)4.10.22.2 Implicit submission

(三)4.10.22.3 Form submission algorithm

(四)4.10.22.4 URL-encoded form data

(五)4.10.22.5 Multipart form data

(六)4.10.22.6 Plain text form data

(23)4.10.23 Resetting a form

(24)4.10.24 Event dispatch

(11)4.11 Interactive elements  
(一)4.11.1 The details element

(二)4.11.2 The summary element

(三)4.11.3 The command element

(四)4.11.4 The menu element  
(一)4.11.4.1 Introduction

(二)4.11.4.2 Building menus and toolbars

(三)4.11.4.3 Context menus

(四)4.11.4.4 Toolbars

(五)4.11.5 Commands  
(一)4.11.5.1 Using the aelement to define a command

(二)4.11.5.2 Using the button element to define a command

(三)4.11.5.3 Using the input element to define a command

(四)4.11.5.4 Using the option element to define a command

(五)4.11.5.5 Using the command element to define  a command

(六)4.11.5.6 Using the accesskey attribute on a label element to define a command

(七)4.11.5.7 Using the accesskey attribute on a legend element to define a command

(八)4.11.5.8 Using the accesskey attribute to define a command on other elements

(12)4.12 Links  
(一)4.12.1 Introduction

(二)4.12.2 Links created by aand area elements

(三)4.12.3 Following hyperlinks

(四)4.12.4 Link types  
(一)4.12.4.1 Link type "alternate"

(二)4.12.4.2 Link type "archives"

(三)4.12.4.3 Link type "author"

(四)4.12.4.4 Link type "bookmark"

(五)4.12.4.5 Link type "external"

(六)4.12.4.6 Link type "help"

(七)4.12.4.7 Link type "icon"

(八)4.12.4.8 Link type "license"

(九)4.12.4.9 Link type "nofollow"

(十)4.12.4.10 Link type "noreferrer"

(11)4.12.4.11 Link type "pingback"

(12)4.12.4.12 Link type "prefetch"

(13)4.12.4.13 Link type "search"

(14)4.12.4.14 Link type "stylesheet"

(15)4.12.4.15 Link type "sidebar"

(16)4.12.4.16 Link type "tag"

(17)4.12.4.17 Hierarchical link types  
(一)4.12.4.17.1 Link type "index"

(二)4.12.4.17.2 Link type "up"

(18)4.12.4.18 Sequential link types  
(一)4.12.4.18.1 Link type "first"

(二)4.12.4.18.2 Link type "last"

(三)4.12.4.18.3 Link type "next"

(四)4.12.4.18.4 Link type "prev"

(19)4.12.4.19 Other link types

(13)4.13 Common idioms without dedicated elements  
(一)4.13.1 The main part of the content

(二)4.13.2 Tag clouds

(三)4.13.3 Conversations

(四)4.13.4 Footnotes

(14)4.14 Matching HTML elements using selectors  
(一)4.14.1 Case-sensitivity

(二)4.14.2 Pseudo-classes

(五)5Loading Web pages  
(一)5.1 Browsing contexts  
(一)5.1.1 Nested browsing contexts  
(一)5.1.1.1 Navigating nested browsing contexts in the DOM

(二)5.1.2 Auxiliary browsing contexts  
(一)5.1.2.1 Navigating auxiliary browsing contexts in the DOM

(三)5.1.3 Secondary browsing contexts

(四)5.1.4 Security

(五)5.1.5 Groupings of browsing contexts

(六)5.1.6 Browsing context names

(二)5.2 The Window object  
(一)5.2.1 Security

(二)5.2.2 APIs for creating and navigating browsing contexts by name

(三)5.2.3 Accessing other browsing contexts

(四)5.2.4 Named access on the Window object

(五)5.2.5 Garbage collection and browsing contexts

(六)5.2.6 Browser interface elements

(七)5.2.7 The WindowProxy object

(三)5.3 Origin  
(一)5.3.1 Relaxing the same-origin restriction

(四)5.4 Session history and navigation  
(一)5.4.1 The session history of browsing contexts

(二)5.4.2 The History interface

(三)5.4.3 The Location interface
(一)5.4.3.1 Security

(四)5.4.4 Implementation notes for session history

(五)5.5 Browsing the Web  
(一)5.5.1 Navigating across documents

(二)5.5.2 Page load processing model for HTML files

(三)5.5.3 Page load processing model for XML files

(四)5.5.4 Page load processing model for text files

(五)5.5.5 Page load processing model for images

(六)5.5.6 Page load processing model for content that uses plugins

(七)5.5.7 Page load processing model for inline content that doesn't have a DOM

(八)5.5.8 Navigating to a fragment identifier

(九)5.5.9 History traversal  
(一)5.5.9.1 Event definitions

(十)5.5.10 Unloading documents  
(一)5.5.10.1 Event definition

(11)5.5.11 Aborting a document load

(六)5.6 Offline Web applications  
(一)5.6.1 Introduction  
(一)5.6.1.1 Event summary

(二)5.6.2 Application caches

(三)5.6.3 The cache manifest syntax  
(一)5.6.3.1 Some sample manifests

(二)5.6.3.2 Writing cache manifests

(三)5.6.3.3 Parsing cache manifests

(四)5.6.4 Downloading or updating an application cache

(五)5.6.5 The application cache selection algorithm

(六)5.6.6 Changes to the networking model

(七)5.6.7 Expiring application caches

(八)5.6.8 Disk space

(九)5.6.9 Application cache API

(十)5.6.10 Browser state

(六)6Web application APIs  
(一)6.1 Scripting  
(一)6.1.1 Introduction

(二)6.1.2 Enabling and disabling scripting

(三)6.1.3 Processing model  
(一)6.1.3.1 Definitions

(二)6.1.3.2 Calling scripts

(三)6.1.3.3 Creating scripts

(四)6.1.3.4 Killing scripts

(四)6.1.4 Event loops  
(一)6.1.4.1 Definitions

(二)6.1.4.2 Processing model

(三)6.1.4.3 Generic task sources

(五)6.1.5 The javascript: protocol

(六)6.1.6 Events  
(一)6.1.6.1 Event handlers

(二)6.1.6.2 Event handlers on elements, Document objects, and Window objects

(三)6.1.6.3 Event firing

(四)6.1.6.4 Events and the Window object

(五)6.1.6.5 Runtime script errors

(二)6.2 Timers

(三)6.3 User prompts  
(一)6.3.1 Simple dialogs

(二)6.3.2 Printing

(三)6.3.3 Dialogs implemented using separate documents

(四)6.4 System state and capabilities: the Navigator object  
(一)6.4.1 Client identification

(二)6.4.2 Custom scheme and content handlers  
(一)6.4.2.1 Security and privacy

(二)6.4.2.2 Sample user interface

(三)6.4.3 Manually releasing the storage mutex

(七)7User interaction  
(一)7.1 The hidden attribute

(二)7.2 Activation

(三)7.3 Focus  
(一)7.3.1 Sequential focus navigation and the tabindex attribute

(二)7.3.2 Focus management

(三)7.3.3 Document-level focus APIs

(四)7.3.4 Element-level focus APIs

(四)7.4 Assigning keyboard shortcuts  
(一)7.4.1 Introduction

(二)7.4.2 The accesskey attribute

(三)7.4.3 Processing model

(五)7.5 The contenteditable attribute  
(一)7.5.1 User editing actions

(二)7.5.2 Making entire documents editable

(六)7.6 Spelling and grammar checking

(七)7.7 Drag and drop  
(一)7.7.1 Introduction

(二)7.7.2 The drag data store

(三)7.7.3 The DataTransfer interface  
(一)7.7.3.1 The DataTransferItems interface

(二)7.7.3.2 The DataTransferItem interface

(四)7.7.4 The DragEvent interface

(五)7.7.5 Drag-and-drop processing model

(六)7.7.6 Events summary

(七)7.7.7 The draggable attribute

(八)7.7.8 The dropzone attribute

(九)7.7.9 Security risks in the drag-and-drop model

(八)7.8 Editing APIs

(八)8The HTML syntax  
(一)8.1 Writing HTML documents  
(一)8.1.1 The DOCTYPE

(二)8.1.2 Elements  
(一)8.1.2.1 Start tags

(二)8.1.2.2 End tags

(三)8.1.2.3 Attributes

(四)8.1.2.4 Optional tags

(五)8.1.2.5 Restrictions on content models

(六)8.1.2.6 Restrictions on the contents of raw text and RCDATA elements

(三)8.1.3 Text  
(一)8.1.3.1 Newlines

(四)8.1.4 Character references

(五)8.1.5 CDATA sections

(六)8.1.6 Comments

(二)8.2 Parsing HTML documents  
(一)8.2.1 Overview of the parsing model

(二)8.2.2 The input stream  
(一)8.2.2.1 Determining the character encoding

(二)8.2.2.2 Character encodings

(三)8.2.2.3 Preprocessing the input stream

(四)8.2.2.4 Changing the encoding while parsing

(三)8.2.3 Parse state  
(一)8.2.3.1 The insertion mode

(二)8.2.3.2 The stack of open elements

(三)8.2.3.3 The list of active formatting elements

(四)8.2.3.4 The element pointers

(五)8.2.3.5 Other parsing state flags

(四)8.2.4 Tokenization  
(一)8.2.4.1 Data state

(二)8.2.4.2 Character reference in data state

(三)8.2.4.3 RCDATA state

(四)8.2.4.4 Character reference in RCDATA state

(五)8.2.4.5 RAWTEXT state

(六)8.2.4.6 Script data state

(七)8.2.4.7 PLAINTEXT state

(八)8.2.4.8 Tag open state

(九)8.2.4.9 End tag open state

(十)8.2.4.10 Tag name state

(11)8.2.4.11 RCDATA less-than sign state

(12)8.2.4.12 RCDATA end tag open state

(13)8.2.4.13 RCDATA end tag name state

(14)8.2.4.14 RAWTEXT less-than sign state

(15)8.2.4.15 RAWTEXT end tag open state

(16)8.2.4.16 RAWTEXT end tag name state

(17)8.2.4.17 Script data less-than sign state

(18)8.2.4.18 Script data end tag open state

(19)8.2.4.19 Script data end tag name state

(20)8.2.4.20 Script data escape start state

(21)8.2.4.21 Script data escape start dash state

(22)8.2.4.22 Script data escaped state

(23)8.2.4.23 Script data escaped dash state

(24)8.2.4.24 Script data escaped dash dash state

(25)8.2.4.25 Script data escaped less-than sign state

(26)8.2.4.26 Script data escaped end tag open state

(27)8.2.4.27 Script data escaped end tag name state

(28)8.2.4.28 Script data double escape start state

(29)8.2.4.29 Script data double escaped state

(30)8.2.4.30 Script data double escaped dash state

(31)8.2.4.31 Script data double escaped dash dash state

(32)8.2.4.32 Script data double escaped less-than sign state

(33)8.2.4.33 Script data double escape end state

(34)8.2.4.34 Before attribute name state

(35)8.2.4.35 Attribute name state

(36)8.2.4.36 After attribute name state

(37)8.2.4.37 Before attribute value state

(38)8.2.4.38 Attribute value (double-quoted) state

(39)8.2.4.39 Attribute value (single-quoted) state

(40)8.2.4.40 Attribute value (unquoted) state

(41)8.2.4.41 Character reference in attribute value state

(42)8.2.4.42 After attribute value (quoted) state

(43)8.2.4.43 Self-closing start tag state

(44)8.2.4.44 Bogus comment state

(45)8.2.4.45 Markup declaration open state

(46)8.2.4.46 Comment start state

(47)8.2.4.47 Comment start dash state

(48)8.2.4.48 Comment state

(49)8.2.4.49 Comment end dash state

(50)8.2.4.50 Comment end state

(51)8.2.4.51 Comment end bang state

(52)8.2.4.52 DOCTYPE state

(53)8.2.4.53 Before DOCTYPE name state

(54)8.2.4.54 DOCTYPE name state

(55)8.2.4.55 After DOCTYPE name state

(56)8.2.4.56 After DOCTYPE public keyword state

(57)8.2.4.57 Before DOCTYPE public identifier state

(58)8.2.4.58 DOCTYPE public identifier (double-quoted) state

(59)8.2.4.59 DOCTYPE public identifier (single-quoted) state

(60)8.2.4.60 After DOCTYPE public identifier state

(61)8.2.4.61 Between DOCTYPE public and system identifiers state

(62)8.2.4.62 After DOCTYPE system keyword state

(63)8.2.4.63 Before DOCTYPE system identifier state

(64)8.2.4.64 DOCTYPE system identifier (double-quoted) state

(65)8.2.4.65 DOCTYPE system identifier (single-quoted) state

(66)8.2.4.66 After DOCTYPE system identifier state

(67)8.2.4.67 Bogus DOCTYPE state

(68)8.2.4.68 CDATA section state

(69)8.2.4.69 Tokenizing character references

(五)8.2.5 Tree construction  
(一)8.2.5.1 Creating and inserting elements

(二)8.2.5.2 Closing elements that have implied end tags

(三)8.2.5.3 Foster parenting

(四)8.2.5.4 The "initial" insertion mode

(五)8.2.5.5 The "before html" insertion mode

(六)8.2.5.6 The "before head" insertion mode

(七)8.2.5.7 The "in head" insertion mode

(八)8.2.5.8 The "in head noscript" insertion mode

(九)8.2.5.9 The "after head" insertion mode

(十)8.2.5.10 The "in body" insertion mode

(11)8.2.5.11 The "text" insertion mode

(12)8.2.5.12 The "in table" insertion mode

(13)8.2.5.13 The "in table text" insertion mode

(14)8.2.5.14 The "in caption" insertion mode

(15)8.2.5.15 The "in column group" insertion mode

(16)8.2.5.16 The "in table body" insertion mode

(17)8.2.5.17 The "in row" insertion mode

(18)8.2.5.18 The "in cell" insertion mode

(19)8.2.5.19 The "in select" insertion mode

(20)8.2.5.20 The "in select in table" insertion mode

(21)8.2.5.21 The "in foreign content" insertion mode

(22)8.2.5.22 The "after body" insertion mode

(23)8.2.5.23 The "in frameset" insertion mode

(24)8.2.5.24 The "after frameset" insertion mode

(25)8.2.5.25 The "after after body" insertion mode

(26)8.2.5.26 The "after after frameset" insertion mode

(六)8.2.6 The end

(七)8.2.7 Coercing an HTML DOM into an infoset

(八)8.2.8 An introduction to error handling and strange cases in the parser  
(一)8.2.8.1 Misnested tags: <b><i></b></i>

(二)8.2.8.2 Misnested tags: <b><p></b></p>

(三)8.2.8.3 Unexpected markup in tables

(四)8.2.8.4 Scripts that modify the page as it is being parsed

(五)8.2.8.5 Unclosed formatting elements

(三)8.3 Serializing HTML fragments

(四)8.4 Parsing HTML fragments

(五)8.5 Named character references

(九)9The XHTML syntax  
(一)9.1 Writing XHTML documents

(二)9.2 Parsing XHTML documents

(三)9.3 Serializing XHTML fragments

(四)9.4 Parsing XHTML fragments

(十)10Rendering  
(一)10.1 Introduction

(二)10.2 The CSS user agent style sheet and presentational hints  
(一)10.2.1 Introduction

(二)10.2.2 Display types

(三)10.2.3 Margins and padding

(四)10.2.4 Alignment

(五)10.2.5 Fonts and colors

(六)10.2.6 Punctuation and decorations

(七)10.2.7 Resetting rules for inherited properties

(八)10.2.8 The hrelement

(九)10.2.9 The fieldset element

(三)10.3 Replaced elements  
(一)10.3.1 Embedded content

(二)10.3.2 Timed text tracks  
(一)10.3.2.1 WebVTT cue text rendering rules

(二)10.3.2.2 Applying CSS properties to WebVTT Node Objects

(三)10.3.2.3 CSS extensions  
(一)10.3.2.3.1 The '::cue' pseudo-element

(二)10.3.2.3.2 The ':past' and ':future' pseudo-classes

(三)10.3.3 Images

(四)10.3.4 Attributes for embedded content and images

(五)10.3.5 Image maps

(六)10.3.6 Toolbars

(四)10.4 Bindings  
(一)10.4.1 Introduction

(二)10.4.2 The button element

(三)10.4.3 The details element

(四)10.4.4 The input element as a text entry widget

(五)10.4.5 The input element as domain-specific widgets

(六)10.4.6 The input element as a range control

(七)10.4.7 The input element as a color well

(八)10.4.8 The input element as a check box and radio button widgets

(九)10.4.9 The input element as a file upload control

(十)10.4.10 The input element as a button

(11)10.4.11 The marquee element

(12)10.4.12 The meter element

(13)10.4.13 The progress element

(14)10.4.14 The select element

(15)10.4.15 The textarea element

(16)10.4.16 The keygen element

(17)10.4.17 The time element

(五)10.5 Frames and framesets

(六)10.6 Interactive media  
(一)10.6.1 Links, forms, and navigation

(二)10.6.2 The title attribute

(三)10.6.3 Editing hosts

(四)10.6.4 Text rendered in native user interfaces

(七)10.7 Print media

(11)11Obsolete features  
(一)11.1 Obsolete but conforming features  
(一)11.1.1 Warnings for obsolete but conforming features

(二)11.2 Non-conforming features

(三)11.3 Requirements for implementations  
(一)11.3.1 The applet element

(二)11.3.2 The marquee element

(三)11.3.3 Frames

(四)11.3.4 Other elements, attributes and APIs

(12)12IANA considerations  
(一)12.1 text/html

(二)12.2 text/html-sandboxed

(三)12.3 application/xhtml+xml

(四)12.4 text/cache-manifest

(13)Index  
(一)Elements

(二)Element content categories

(三)Attributes

(四)Interfaces

(五)Events

(14)References

(15)Acknowledgements