Last active
July 6, 2017 06:00
-
-
Save j0lvera/f8722c6fba97e97d67e84cb32c22cb5f to your computer and use it in GitHub Desktop.
WHATWG Search index in Python
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[{"text": "Introduction", "section": "1", "uri": "introduction.html#introduction"}, {"text": "Is this HTML5?", "section": "1.1 - Introduction", "uri": "introduction.html#is-this-html5?"}, {"text": "Background", "section": "1.2 - Introduction", "uri": "introduction.html#background"}, {"text": "Audience", "section": "1.3 - Introduction", "uri": "introduction.html#audience"}, {"text": "Scope", "section": "1.4 - Introduction", "uri": "introduction.html#scope"}, {"text": "History", "section": "1.5 - Introduction", "uri": "introduction.html#history-2"}, {"text": "Design notes", "section": "1.6 - Introduction", "uri": "introduction.html#design-notes"}, {"text": "Compliance with other specifications", "section": "1.6.1 - Design notes", "uri": "introduction.html#compliance-with-other-specifications"}, {"text": "Extensibility", "section": "1.6.2 - Design notes", "uri": "introduction.html#extensibility"}, {"text": "HTML vs XML syntax", "section": "1.7 - Introduction", "uri": "introduction.html#html-vs-xhtml"}, {"text": "Structure of this specification", "section": "1.8 - Introduction", "uri": "introduction.html#structure-of-this-specification"}, {"text": "Typographic conventions", "section": "1.8.1 - Structure of this specification", "uri": "introduction.html#typographic-conventions"}, {"text": "Privacy concerns", "section": "1.9 - Introduction", "uri": "introduction.html#fingerprint"}, {"text": "Cross-site communication", "section": "1.9.1 - Privacy concerns", "uri": "introduction.html#fingerprint-postMessage"}, {"text": "A quick introduction to HTML", "section": "1.10 - Introduction", "uri": "introduction.html#a-quick-introduction-to-html"}, {"text": "Writing secure applications with HTML", "section": "1.10.1 - A quick introduction to HTML", "uri": "introduction.html#writing-secure-applications-with-html"}, {"text": "Common pitfalls to avoid when using the scripting APIs", "section": "1.10.2 - A quick introduction to HTML", "uri": "introduction.html#common-pitfalls-to-avoid-when-using-the-scripting-apis"}, {"text": "How to catch mistakes when writing HTML: validators and conformance checkers", "section": "1.10.3 - A quick introduction to HTML", "uri": "introduction.html#how-to-catch-mistakes-when-writing-html:-validators-and-conformance-checkers"}, {"text": "Conformance requirements for authors", "section": "1.11 - Introduction", "uri": "introduction.html#conformance-requirements-for-authors"}, {"text": "Presentational markup", "section": "1.11.1 - Conformance requirements for authors", "uri": "introduction.html#presentational-markup"}, {"text": "Syntax errors", "section": "1.11.2 - Conformance requirements for authors", "uri": "introduction.html#syntax-errors"}, {"text": "Restrictions on content models and on attribute values", "section": "1.11.3 - Conformance requirements for authors", "uri": "introduction.html#restrictions-on-content-models-and-on-attribute-values"}, {"text": "Suggested reading", "section": "1.12 - Introduction", "uri": "introduction.html#suggested-reading"}, {"text": "Common infrastructure", "section": "2", "uri": "infrastructure.html#infrastructure"}, {"text": "Terminology", "section": "2.1 - Common infrastructure", "uri": "infrastructure.html#terminology"}, {"text": "Resources", "section": "2.1.1 - Terminology", "uri": "infrastructure.html#resources"}, {"text": "XML compatibility", "section": "2.1.2 - Terminology", "uri": "infrastructure.html#xml"}, {"text": "DOM trees", "section": "2.1.3 - Terminology", "uri": "infrastructure.html#dom-trees"}, {"text": "Scripting", "section": "2.1.4 - Terminology", "uri": "infrastructure.html#scripting-2"}, {"text": "Plugins", "section": "2.1.5 - Terminology", "uri": "infrastructure.html#plugins"}, {"text": "Character encodings", "section": "2.1.6 - Terminology", "uri": "infrastructure.html#encoding-terminology"}, {"text": "Dependencies", "section": "2.1.7 - Terminology", "uri": "infrastructure.html#dependencies"}, {"text": "Extensibility", "section": "2.1.8 - Terminology", "uri": "infrastructure.html#extensibility-2"}, {"text": "Case-sensitivity and string comparison", "section": "2.2 - Common infrastructure", "uri": "infrastructure.html#case-sensitivity-and-string-comparison"}, {"text": "Common microsyntaxes", "section": "2.3 - Common infrastructure", "uri": "common-microsyntaxes.html#common-microsyntaxes"}, {"text": "Boolean attributes", "section": "2.3.1 - Common microsyntaxes", "uri": "common-microsyntaxes.html#boolean-attributes"}, {"text": "Keywords and enumerated attributes", "section": "2.3.2 - Common microsyntaxes", "uri": "common-microsyntaxes.html#keywords-and-enumerated-attributes"}, {"text": "Numbers", "section": "2.3.3 - Common microsyntaxes", "uri": "common-microsyntaxes.html#numbers"}, {"text": "Signed integers", "section": "2.3.3.1 - Numbers", "uri": "common-microsyntaxes.html#signed-integers"}, {"text": "Non-negative integers", "section": "2.3.3.2 - Numbers", "uri": "common-microsyntaxes.html#non-negative-integers"}, {"text": "Floating-point numbers", "section": "2.3.3.3 - Numbers", "uri": "common-microsyntaxes.html#floating-point-numbers"}, {"text": "Lists of floating-point numbers", "section": "2.3.3.4 - Numbers", "uri": "common-microsyntaxes.html#lists-of-floating-point-numbers"}, {"text": "Dates and times", "section": "2.3.4 - Common microsyntaxes", "uri": "common-microsyntaxes.html#dates-and-times"}, {"text": "Months", "section": "2.3.4.1 - Dates and times", "uri": "common-microsyntaxes.html#months"}, {"text": "Dates", "section": "2.3.4.2 - Dates and times", "uri": "common-microsyntaxes.html#dates"}, {"text": "Yearless dates", "section": "2.3.4.3 - Dates and times", "uri": "common-microsyntaxes.html#yearless-dates"}, {"text": "Times", "section": "2.3.4.4 - Dates and times", "uri": "common-microsyntaxes.html#times"}, {"text": "Local dates and times", "section": "2.3.4.5 - Dates and times", "uri": "common-microsyntaxes.html#local-dates-and-times"}, {"text": "Time zones", "section": "2.3.4.6 - Dates and times", "uri": "common-microsyntaxes.html#time-zones"}, {"text": "Global dates and times", "section": "2.3.4.7 - Dates and times", "uri": "common-microsyntaxes.html#global-dates-and-times"}, {"text": "Weeks", "section": "2.3.4.8 - Dates and times", "uri": "common-microsyntaxes.html#weeks"}, {"text": "Durations", "section": "2.3.4.9 - Dates and times", "uri": "common-microsyntaxes.html#durations"}, {"text": "Vaguer moments in time", "section": "2.3.4.10 - Dates and times", "uri": "common-microsyntaxes.html#vaguer-moments-in-time"}, {"text": "Colors", "section": "2.3.5 - Common microsyntaxes", "uri": "common-microsyntaxes.html#colours"}, {"text": "Space-separated tokens", "section": "2.3.6 - Common microsyntaxes", "uri": "common-microsyntaxes.html#space-separated-tokens"}, {"text": "Comma-separated tokens", "section": "2.3.7 - Common microsyntaxes", "uri": "common-microsyntaxes.html#comma-separated-tokens"}, {"text": "References", "section": "2.3.8 - Common microsyntaxes", "uri": "common-microsyntaxes.html#syntax-references"}, {"text": "Media queries", "section": "2.3.9 - Common microsyntaxes", "uri": "common-microsyntaxes.html#mq"}, {"text": "URLs", "section": "2.4 - Common infrastructure", "uri": "urls-and-fetching.html#urls"}, {"text": "Terminology", "section": "2.4.1 - URLs", "uri": "urls-and-fetching.html#terminology-2"}, {"text": "CORS settings attributes", "section": "2.4.2 - URLs", "uri": "urls-and-fetching.html#cors-settings-attributes"}, {"text": "Referrer policy attributes", "section": "2.4.3 - URLs", "uri": "urls-and-fetching.html#referrer-policy-attributes"}, {"text": "Common DOM interfaces", "section": "2.5 - Common infrastructure", "uri": "common-dom-interfaces.html#common-dom-interfaces"}, {"text": "Reflecting content attributes in IDL attributes", "section": "2.5.1 - Common DOM interfaces", "uri": "common-dom-interfaces.html#reflecting-content-attributes-in-idl-attributes"}, {"text": "Collections", "section": "2.5.2 - Common DOM interfaces", "uri": "common-dom-interfaces.html#collections"}, {"text": "The HTMLAllCollection interface", "section": "2.5.2.1 - Collections", "uri": "common-dom-interfaces.html#the-htmlallcollection-interface"}, {"text": "The HTMLFormControlsCollection interface", "section": "2.5.2.2 - Collections", "uri": "common-dom-interfaces.html#the-htmlformcontrolscollection-interface"}, {"text": "The HTMLOptionsCollection interface", "section": "2.5.2.3 - Collections", "uri": "common-dom-interfaces.html#the-htmloptionscollection-interface"}, {"text": "The DOMStringList interface", "section": "2.5.3 - Common DOM interfaces", "uri": "common-dom-interfaces.html#the-domstringlist-interface"}, {"text": "Semantics, structure, and APIs of HTML documents", "section": "3", "uri": "dom.html#dom"}, {"text": "Documents", "section": "3.1 - Semantics, structure, and APIs of HTML documents", "uri": "dom.html#documents"}, {"text": "The Document object", "section": "3.1.1 - Documents", "uri": "dom.html#the-document-object"}, {"text": "Resource metadata management", "section": "3.1.2 - Documents", "uri": "dom.html#resource-metadata-management"}, {"text": "DOM tree accessors", "section": "3.1.3 - Documents", "uri": "dom.html#dom-tree-accessors"}, {"text": "Elements", "section": "3.2 - Semantics, structure, and APIs of HTML documents", "uri": "dom.html#elements"}, {"text": "Semantics", "section": "3.2.1 - Elements", "uri": "dom.html#semantics-2"}, {"text": "Elements in the DOM", "section": "3.2.2 - Elements", "uri": "dom.html#elements-in-the-dom"}, {"text": "Element definitions", "section": "3.2.3 - Elements", "uri": "dom.html#element-definitions"}, {"text": "Attributes", "section": "3.2.3.1 - Element definitions", "uri": "dom.html#attributes"}, {"text": "Content models", "section": "3.2.4 - Elements", "uri": "dom.html#content-models"}, {"text": "The \"nothing\" content model", "section": "3.2.4.1 - Content models", "uri": "dom.html#the-nothing-content-model"}, {"text": "Kinds of content", "section": "3.2.4.2 - Content models", "uri": "dom.html#kinds-of-content"}, {"text": "Metadata content", "section": "3.2.4.2.1 - Kinds of content", "uri": "dom.html#metadata-content"}, {"text": "Flow content", "section": "3.2.4.2.2 - Kinds of content", "uri": "dom.html#flow-content"}, {"text": "Sectioning content", "section": "3.2.4.2.3 - Kinds of content", "uri": "dom.html#sectioning-content"}, {"text": "Heading content", "section": "3.2.4.2.4 - Kinds of content", "uri": "dom.html#heading-content"}, {"text": "Phrasing content", "section": "3.2.4.2.5 - Kinds of content", "uri": "dom.html#phrasing-content"}, {"text": "Embedded content", "section": "3.2.4.2.6 - Kinds of content", "uri": "dom.html#embedded-content-2"}, {"text": "Interactive content", "section": "3.2.4.2.7 - Kinds of content", "uri": "dom.html#interactive-content"}, {"text": "Palpable content", "section": "3.2.4.2.8 - Kinds of content", "uri": "dom.html#palpable-content"}, {"text": "Script-supporting elements", "section": "3.2.4.2.9 - Kinds of content", "uri": "dom.html#script-supporting-elements"}, {"text": "Transparent content models", "section": "3.2.4.3 - Content models", "uri": "dom.html#transparent-content-models"}, {"text": "Paragraphs", "section": "3.2.4.4 - Content models", "uri": "dom.html#paragraphs"}, {"text": "Global attributes", "section": "3.2.5 - Elements", "uri": "dom.html#global-attributes"}, {"text": "The title attribute", "section": "3.2.5.1 - Global attributes", "uri": "dom.html#the-title-attribute"}, {"text": "The lang and xml:lang attributes", "section": "3.2.5.2 - Global attributes", "uri": "dom.html#the-lang-and-xml:lang-attributes"}, {"text": "The translate attribute", "section": "3.2.5.3 - Global attributes", "uri": "dom.html#the-translate-attribute"}, {"text": "The dir attribute", "section": "3.2.5.4 - Global attributes", "uri": "dom.html#the-dir-attribute"}, {"text": "The style attribute", "section": "3.2.5.5 - Global attributes", "uri": "dom.html#the-style-attribute"}, {"text": "Embedding custom non-visible data with the data-* attributes", "section": "3.2.5.6 - Global attributes", "uri": "dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes"}, {"text": "The innerText IDL attribute", "section": "3.2.6 - Elements", "uri": "dom.html#the-innertext-idl-attribute"}, {"text": "Requirements relating to the bidirectional algorithm", "section": "3.2.7 - Elements", "uri": "dom.html#requirements-relating-to-the-bidirectional-algorithm"}, {"text": "The elements of HTML", "section": "4", "uri": "semantics.html#semantics"}, {"text": "The document element", "section": "4.1 - The elements of HTML", "uri": "semantics.html#the-root-element"}, {"text": "The html element", "section": "4.1.1 - The document element", "uri": "semantics.html#the-html-element"}, {"text": "Document metadata", "section": "4.2 - The elements of HTML", "uri": "semantics.html#document-metadata"}, {"text": "The head element", "section": "4.2.1 - Document metadata", "uri": "semantics.html#the-head-element"}, {"text": "The title element", "section": "4.2.2 - Document metadata", "uri": "semantics.html#the-title-element"}, {"text": "The base element", "section": "4.2.3 - Document metadata", "uri": "semantics.html#the-base-element"}, {"text": "The link element", "section": "4.2.4 - Document metadata", "uri": "semantics.html#the-link-element"}, {"text": "Providing users with a means to follow hyperlinks created using the link element", "section": "4.2.4.1 - The link element", "uri": "semantics.html#providing-users-with-a-means-to-follow-hyperlinks-created-using-the-link-element"}, {"text": "The meta element", "section": "4.2.5 - Document metadata", "uri": "semantics.html#the-meta-element"}, {"text": "Standard metadata names", "section": "4.2.5.1 - The meta element", "uri": "semantics.html#standard-metadata-names"}, {"text": "Other metadata names", "section": "4.2.5.2 - The meta element", "uri": "semantics.html#other-metadata-names"}, {"text": "Pragma directives", "section": "4.2.5.3 - The meta element", "uri": "semantics.html#pragma-directives"}, {"text": "Other pragma directives", "section": "4.2.5.4 - The meta element", "uri": "semantics.html#other-pragma-directives"}, {"text": "Specifying the document's character encoding", "section": "4.2.5.5 - The meta element", "uri": "semantics.html#charset"}, {"text": "The style element", "section": "4.2.6 - Document metadata", "uri": "semantics.html#the-style-element"}, {"text": "Sections", "section": "4.3 - The elements of HTML", "uri": "sections.html#sections"}, {"text": "The body element", "section": "4.3.1 - Sections", "uri": "sections.html#the-body-element"}, {"text": "The article element", "section": "4.3.2 - Sections", "uri": "sections.html#the-article-element"}, {"text": "The section element", "section": "4.3.3 - Sections", "uri": "sections.html#the-section-element"}, {"text": "The nav element", "section": "4.3.4 - Sections", "uri": "sections.html#the-nav-element"}, {"text": "The aside element", "section": "4.3.5 - Sections", "uri": "sections.html#the-aside-element"}, {"text": "The h1, h2, h3, h4, h5, and h6 elements", "section": "4.3.6 - Sections", "uri": "sections.html#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements"}, {"text": "The hgroup element", "section": "4.3.7 - Sections", "uri": "sections.html#the-hgroup-element"}, {"text": "The header element", "section": "4.3.8 - Sections", "uri": "sections.html#the-header-element"}, {"text": "The footer element", "section": "4.3.9 - Sections", "uri": "sections.html#the-footer-element"}, {"text": "The address element", "section": "4.3.10 - Sections", "uri": "sections.html#the-address-element"}, {"text": "Headings and sections", "section": "4.3.11 - Sections", "uri": "sections.html#headings-and-sections"}, {"text": "Creating an outline", "section": "4.3.11.1 - Headings and sections", "uri": "sections.html#outlines"}, {"text": "Sample outlines", "section": "4.3.11.2 - Headings and sections", "uri": "sections.html#sample-outlines"}, {"text": "Exposing outlines to users", "section": "4.3.11.3 - Headings and sections", "uri": "sections.html#exposing-outlines-to-users"}, {"text": "Usage summary", "section": "4.3.12 - Sections", "uri": "sections.html#usage-summary-2"}, {"text": "Article or section?", "section": "4.3.12.1 - Usage summary", "uri": "sections.html#article-or-section"}, {"text": "Grouping content", "section": "4.4 - The elements of HTML", "uri": "grouping-content.html#grouping-content"}, {"text": "The p element", "section": "4.4.1 - Grouping content", "uri": "grouping-content.html#the-p-element"}, {"text": "The hr element", "section": "4.4.2 - Grouping content", "uri": "grouping-content.html#the-hr-element"}, {"text": "The pre element", "section": "4.4.3 - Grouping content", "uri": "grouping-content.html#the-pre-element"}, {"text": "The blockquote element", "section": "4.4.4 - Grouping content", "uri": "grouping-content.html#the-blockquote-element"}, {"text": "The ol element", "section": "4.4.5 - Grouping content", "uri": "grouping-content.html#the-ol-element"}, {"text": "The ul element", "section": "4.4.6 - Grouping content", "uri": "grouping-content.html#the-ul-element"}, {"text": "The menu element", "section": "4.4.7 - Grouping content", "uri": "grouping-content.html#the-menu-element"}, {"text": "The li element", "section": "4.4.8 - Grouping content", "uri": "grouping-content.html#the-li-element"}, {"text": "The dl element", "section": "4.4.9 - Grouping content", "uri": "grouping-content.html#the-dl-element"}, {"text": "The dt element", "section": "4.4.10 - Grouping content", "uri": "grouping-content.html#the-dt-element"}, {"text": "The dd element", "section": "4.4.11 - Grouping content", "uri": "grouping-content.html#the-dd-element"}, {"text": "The figure element", "section": "4.4.12 - Grouping content", "uri": "grouping-content.html#the-figure-element"}, {"text": "The figcaption element", "section": "4.4.13 - Grouping content", "uri": "grouping-content.html#the-figcaption-element"}, {"text": "The main element", "section": "4.4.14 - Grouping content", "uri": "grouping-content.html#the-main-element"}, {"text": "The div element", "section": "4.4.15 - Grouping content", "uri": "grouping-content.html#the-div-element"}, {"text": "Text-level semantics", "section": "4.5 - The elements of HTML", "uri": "text-level-semantics.html#text-level-semantics"}, {"text": "The a element", "section": "4.5.1 - Text-level semantics", "uri": "text-level-semantics.html#the-a-element"}, {"text": "The em element", "section": "4.5.2 - Text-level semantics", "uri": "text-level-semantics.html#the-em-element"}, {"text": "The strong element", "section": "4.5.3 - Text-level semantics", "uri": "text-level-semantics.html#the-strong-element"}, {"text": "The small element", "section": "4.5.4 - Text-level semantics", "uri": "text-level-semantics.html#the-small-element"}, {"text": "The s element", "section": "4.5.5 - Text-level semantics", "uri": "text-level-semantics.html#the-s-element"}, {"text": "The cite element", "section": "4.5.6 - Text-level semantics", "uri": "text-level-semantics.html#the-cite-element"}, {"text": "The q element", "section": "4.5.7 - Text-level semantics", "uri": "text-level-semantics.html#the-q-element"}, {"text": "The dfn element", "section": "4.5.8 - Text-level semantics", "uri": "text-level-semantics.html#the-dfn-element"}, {"text": "The abbr element", "section": "4.5.9 - Text-level semantics", "uri": "text-level-semantics.html#the-abbr-element"}, {"text": "The ruby element", "section": "4.5.10 - Text-level semantics", "uri": "text-level-semantics.html#the-ruby-element"}, {"text": "The rt element", "section": "4.5.11 - Text-level semantics", "uri": "text-level-semantics.html#the-rt-element"}, {"text": "The rp element", "section": "4.5.12 - Text-level semantics", "uri": "text-level-semantics.html#the-rp-element"}, {"text": "The data element", "section": "4.5.13 - Text-level semantics", "uri": "text-level-semantics.html#the-data-element"}, {"text": "The time element", "section": "4.5.14 - Text-level semantics", "uri": "text-level-semantics.html#the-time-element"}, {"text": "The code element", "section": "4.5.15 - Text-level semantics", "uri": "text-level-semantics.html#the-code-element"}, {"text": "The var element", "section": "4.5.16 - Text-level semantics", "uri": "text-level-semantics.html#the-var-element"}, {"text": "The samp element", "section": "4.5.17 - Text-level semantics", "uri": "text-level-semantics.html#the-samp-element"}, {"text": "The kbd element", "section": "4.5.18 - Text-level semantics", "uri": "text-level-semantics.html#the-kbd-element"}, {"text": "The sub and sup elements", "section": "4.5.19 - Text-level semantics", "uri": "text-level-semantics.html#the-sub-and-sup-elements"}, {"text": "The i element", "section": "4.5.20 - Text-level semantics", "uri": "text-level-semantics.html#the-i-element"}, {"text": "The b element", "section": "4.5.21 - Text-level semantics", "uri": "text-level-semantics.html#the-b-element"}, {"text": "The u element", "section": "4.5.22 - Text-level semantics", "uri": "text-level-semantics.html#the-u-element"}, {"text": "The mark element", "section": "4.5.23 - Text-level semantics", "uri": "text-level-semantics.html#the-mark-element"}, {"text": "The bdi element", "section": "4.5.24 - Text-level semantics", "uri": "text-level-semantics.html#the-bdi-element"}, {"text": "The bdo element", "section": "4.5.25 - Text-level semantics", "uri": "text-level-semantics.html#the-bdo-element"}, {"text": "The span element", "section": "4.5.26 - Text-level semantics", "uri": "text-level-semantics.html#the-span-element"}, {"text": "The br element", "section": "4.5.27 - Text-level semantics", "uri": "text-level-semantics.html#the-br-element"}, {"text": "The wbr element", "section": "4.5.28 - Text-level semantics", "uri": "text-level-semantics.html#the-wbr-element"}, {"text": "Usage summary", "section": "4.5.29 - Text-level semantics", "uri": "text-level-semantics.html#usage-summary"}, {"text": "Links", "section": "4.6 - The elements of HTML", "uri": "links.html#links"}, {"text": "Introduction", "section": "4.6.1 - Links", "uri": "links.html#introduction-2"}, {"text": "Links created by a and area elements", "section": "4.6.2 - Links", "uri": "links.html#links-created-by-a-and-area-elements"}, {"text": "API for a and area elements", "section": "4.6.3 - Links", "uri": "links.html#api-for-a-and-area-elements"}, {"text": "Downloading resources", "section": "4.6.4 - Links", "uri": "links.html#downloading-resources"}, {"text": "Link types", "section": "4.6.5 - Links", "uri": "links.html#linkTypes"}, {"text": "Link type \"alternate\"", "section": "4.6.5.1 - Link types", "uri": "links.html#rel-alternate"}, {"text": "Link type \"author\"", "section": "4.6.5.2 - Link types", "uri": "links.html#link-type-author"}, {"text": "Link type \"bookmark\"", "section": "4.6.5.3 - Link types", "uri": "links.html#link-type-bookmark"}, {"text": "Link type \"canonical\"", "section": "4.6.5.4 - Link types", "uri": "links.html#link-type-canonical"}, {"text": "Link type \"dns-prefetch\"", "section": "4.6.5.5 - Link types", "uri": "links.html#link-type-dns-prefetch"}, {"text": "Link type \"external\"", "section": "4.6.5.6 - Link types", "uri": "links.html#link-type-external"}, {"text": "Link type \"help\"", "section": "4.6.5.7 - Link types", "uri": "links.html#link-type-help"}, {"text": "Link type \"icon\"", "section": "4.6.5.8 - Link types", "uri": "links.html#rel-icon"}, {"text": "Link type \"license\"", "section": "4.6.5.9 - Link types", "uri": "links.html#link-type-license"}, {"text": "Link type \"nofollow\"", "section": "4.6.5.10 - Link types", "uri": "links.html#link-type-nofollow"}, {"text": "Link type \"noopener\"", "section": "4.6.5.11 - Link types", "uri": "links.html#link-type-noopener"}, {"text": "Link type \"noreferrer\"", "section": "4.6.5.12 - Link types", "uri": "links.html#link-type-noreferrer"}, {"text": "Link type \"pingback\"", "section": "4.6.5.13 - Link types", "uri": "links.html#link-type-pingback"}, {"text": "Link type \"preconnect\"", "section": "4.6.5.14 - Link types", "uri": "links.html#link-type-preconnect"}, {"text": "Link type \"prefetch\"", "section": "4.6.5.15 - Link types", "uri": "links.html#link-type-prefetch"}, {"text": "Link type \"preload\"", "section": "4.6.5.16 - Link types", "uri": "links.html#link-type-preload"}, {"text": "Link type \"prerender\"", "section": "4.6.5.17 - Link types", "uri": "links.html#link-type-prerender"}, {"text": "Link type \"search\"", "section": "4.6.5.18 - Link types", "uri": "links.html#link-type-search"}, {"text": "Link type \"serviceworker\"", "section": "4.6.5.19 - Link types", "uri": "links.html#link-type-serviceworker"}, {"text": "Link type \"stylesheet\"", "section": "4.6.5.20 - Link types", "uri": "links.html#link-type-stylesheet"}, {"text": "Link type \"tag\"", "section": "4.6.5.21 - Link types", "uri": "links.html#link-type-tag"}, {"text": "Sequential link types", "section": "4.6.5.22 - Link types", "uri": "links.html#sequential-link-types"}, {"text": "Link type \"next\"", "section": "4.6.5.22.1 - Sequential link types", "uri": "links.html#link-type-next"}, {"text": "Link type \"prev\"", "section": "4.6.5.22.2 - Sequential link types", "uri": "links.html#link-type-prev"}, {"text": "Other link types", "section": "4.6.5.23 - Link types", "uri": "links.html#other-link-types"}, {"text": "Edits", "section": "4.7 - The elements of HTML", "uri": "edits.html#edits"}, {"text": "The ins element", "section": "4.7.1 - Edits", "uri": "edits.html#the-ins-element"}, {"text": "The del element", "section": "4.7.2 - Edits", "uri": "edits.html#the-del-element"}, {"text": "Attributes common to ins and del elements", "section": "4.7.3 - Edits", "uri": "edits.html#attributes-common-to-ins-and-del-elements"}, {"text": "Edits and paragraphs", "section": "4.7.4 - Edits", "uri": "edits.html#edits-and-paragraphs"}, {"text": "Edits and lists", "section": "4.7.5 - Edits", "uri": "edits.html#edits-and-lists"}, {"text": "Edits and tables", "section": "4.7.6 - Edits", "uri": "edits.html#edits-and-tables"}, {"text": "Embedded content", "section": "4.8 - The elements of HTML", "uri": "embedded-content.html#embedded-content"}, {"text": "The picture element", "section": "4.8.1 - Embedded content", "uri": "embedded-content.html#the-picture-element"}, {"text": "The source element", "section": "4.8.2 - Embedded content", "uri": "embedded-content.html#the-source-element"}, {"text": "The img element", "section": "4.8.3 - Embedded content", "uri": "embedded-content.html#the-img-element"}, {"text": "Images", "section": "4.8.4 - Embedded content", "uri": "images.html#images"}, {"text": "Introduction", "section": "4.8.4.1 - Images", "uri": "images.html#introduction-3"}, {"text": "Adaptive images", "section": "4.8.4.1.1 - Introduction", "uri": "images.html#adaptive-images"}, {"text": "Attributes common to source and img elements", "section": "4.8.4.2 - Images", "uri": "images.html#attributes-common-to-source-and-img-elements"}, {"text": "Srcset attributes", "section": "4.8.4.2.1 - Attributes common to source and img elements", "uri": "images.html#srcset-attributes"}, {"text": "Sizes attributes", "section": "4.8.4.2.2 - Attributes common to source and img elements", "uri": "images.html#sizes-attributes"}, {"text": "Requirements for providing text to act as an alternative for images", "section": "4.8.4.3 - Images", "uri": "images.html#alt"}, {"text": "General guidelines", "section": "4.8.4.3.1 - Requirements for providing text to act as an alternative for images", "uri": "images.html#general-guidelines"}, {"text": "A link or button containing nothing but the image", "section": "4.8.4.3.2 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-link-or-button-containing-nothing-but-the-image"}, {"text": "A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations", "section": "4.8.4.3.3 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts,-diagrams,-graphs,-maps,-illustrations"}, {"text": "A short phrase or label with an alternative graphical representation: icons, logos", "section": "4.8.4.3.4 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons,-logos"}, {"text": "Text that has been rendered to a graphic for typographical effect", "section": "4.8.4.3.5 - Requirements for providing text to act as an alternative for images", "uri": "images.html#text-that-has-been-rendered-to-a-graphic-for-typographical-effect"}, {"text": "A graphical representation of some of the surrounding text", "section": "4.8.4.3.6 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-graphical-representation-of-some-of-the-surrounding-text"}, {"text": "Ancillary images", "section": "4.8.4.3.7 - Requirements for providing text to act as an alternative for images", "uri": "images.html#ancillary-images"}, {"text": "A purely decorative image that doesn't add any information", "section": "4.8.4.3.8 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-purely-decorative-image-that-doesn't-add-any-information"}, {"text": "A group of images that form a single larger picture with no links", "section": "4.8.4.3.9 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-group-of-images-that-form-a-single-larger-picture-with-no-links"}, {"text": "A group of images that form a single larger picture with links", "section": "4.8.4.3.10 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-group-of-images-that-form-a-single-larger-picture-with-links"}, {"text": "A key part of the content", "section": "4.8.4.3.11 - Requirements for providing text to act as an alternative for images", "uri": "images.html#a-key-part-of-the-content"}, {"text": "An image not intended for the user", "section": "4.8.4.3.12 - Requirements for providing text to act as an alternative for images", "uri": "images.html#an-image-not-intended-for-the-user"}, {"text": "An image in an e-mail or private document intended for a specific person who is known to be able to view images", "section": "4.8.4.3.13 - Requirements for providing text to act as an alternative for images", "uri": "images.html#an-image-in-an-e-mail-or-private-document-intended-for-a-specific-person-who-is-known-to-be-able-to-view-images"}, {"text": "The iframe element", "section": "4.8.5 - Embedded content", "uri": "iframe-embed-object.html#the-iframe-element"}, {"text": "The embed element", "section": "4.8.6 - Embedded content", "uri": "iframe-embed-object.html#the-embed-element"}, {"text": "The object element", "section": "4.8.7 - Embedded content", "uri": "iframe-embed-object.html#the-object-element"}, {"text": "The param element", "section": "4.8.8 - Embedded content", "uri": "iframe-embed-object.html#the-param-element"}, {"text": "The video element", "section": "4.8.9 - Embedded content", "uri": "media.html#the-video-element"}, {"text": "The audio element", "section": "4.8.10 - Embedded content", "uri": "media.html#the-audio-element"}, {"text": "The track element", "section": "4.8.11 - Embedded content", "uri": "media.html#the-track-element"}, {"text": "Media elements", "section": "4.8.12 - Embedded content", "uri": "media.html#media-elements"}, {"text": "Error codes", "section": "4.8.12.1 - Media elements", "uri": "media.html#error-codes"}, {"text": "Location of the media resource", "section": "4.8.12.2 - Media elements", "uri": "media.html#location-of-the-media-resource"}, {"text": "MIME types", "section": "4.8.12.3 - Media elements", "uri": "media.html#mime-types"}, {"text": "Network states", "section": "4.8.12.4 - Media elements", "uri": "media.html#network-states"}, {"text": "Loading the media resource", "section": "4.8.12.5 - Media elements", "uri": "media.html#loading-the-media-resource"}, {"text": "Offsets into the media resource", "section": "4.8.12.6 - Media elements", "uri": "media.html#offsets-into-the-media-resource"}, {"text": "Ready states", "section": "4.8.12.7 - Media elements", "uri": "media.html#ready-states"}, {"text": "Playing the media resource", "section": "4.8.12.8 - Media elements", "uri": "media.html#playing-the-media-resource"}, {"text": "Seeking", "section": "4.8.12.9 - Media elements", "uri": "media.html#seeking"}, {"text": "Media resources with multiple media tracks", "section": "4.8.12.10 - Media elements", "uri": "media.html#media-resources-with-multiple-media-tracks"}, {"text": "AudioTrackList and VideoTrackList objects", "section": "4.8.12.10.1 - Media resources with multiple media tracks", "uri": "media.html#audiotracklist-and-videotracklist-objects"}, {"text": "Selecting specific audio and video tracks declaratively", "section": "4.8.12.10.2 - Media resources with multiple media tracks", "uri": "media.html#selecting-specific-audio-and-video-tracks-declaratively"}, {"text": "Timed text tracks", "section": "4.8.12.11 - Media elements", "uri": "media.html#timed-text-tracks"}, {"text": "Text track model", "section": "4.8.12.11.1 - Timed text tracks", "uri": "media.html#text-track-model"}, {"text": "Sourcing in-band text tracks", "section": "4.8.12.11.2 - Timed text tracks", "uri": "media.html#sourcing-in-band-text-tracks"}, {"text": "Text track API", "section": "4.8.12.11.3 - Timed text tracks", "uri": "media.html#text-track-api"}, {"text": "Text tracks describing chapters", "section": "4.8.12.11.4 - Timed text tracks", "uri": "media.html#text-tracks-describing-chapters"}, {"text": "Best practices for metadata text tracks", "section": "4.8.12.11.5 - Timed text tracks", "uri": "media.html#best-practices-for-metadata-text-tracks"}, {"text": "Identifying a track kind through a URL", "section": "4.8.12.12 - Media elements", "uri": "media.html#identifying-a-track-kind-through-a-url"}, {"text": "User interface", "section": "4.8.12.13 - Media elements", "uri": "media.html#user-interface"}, {"text": "Time ranges", "section": "4.8.12.14 - Media elements", "uri": "media.html#time-ranges"}, {"text": "The TrackEvent interface", "section": "4.8.12.15 - Media elements", "uri": "media.html#the-trackevent-interface"}, {"text": "Event summary", "section": "4.8.12.16 - Media elements", "uri": "media.html#mediaevents"}, {"text": "Best practices for authors using media elements", "section": "4.8.12.17 - Media elements", "uri": "media.html#best-practices-for-authors-using-media-elements"}, {"text": "The map element", "section": "4.8.13 - Embedded content", "uri": "image-maps.html#the-map-element"}, {"text": "The area element", "section": "4.8.14 - Embedded content", "uri": "image-maps.html#the-area-element"}, {"text": "Image maps", "section": "4.8.15 - Embedded content", "uri": "image-maps.html#image-maps"}, {"text": "MathML", "section": "4.8.16 - Embedded content", "uri": "embedded-content-other.html#mathml"}, {"text": "SVG", "section": "4.8.17 - Embedded content", "uri": "embedded-content-other.html#svg-0"}, {"text": "Dimension attributes", "section": "4.8.18 - Embedded content", "uri": "embedded-content-other.html#dimension-attributes"}, {"text": "Tabular data", "section": "4.9 - The elements of HTML", "uri": "tables.html#tables"}, {"text": "The table element", "section": "4.9.1 - Tabular data", "uri": "tables.html#the-table-element"}, {"text": "Techniques for describing tables", "section": "4.9.1.1 - The table element", "uri": "tables.html#table-descriptions-techniques"}, {"text": "Techniques for table design", "section": "4.9.1.2 - The table element", "uri": "tables.html#table-layout-techniques"}, {"text": "The caption element", "section": "4.9.2 - Tabular data", "uri": "tables.html#the-caption-element"}, {"text": "The colgroup element", "section": "4.9.3 - Tabular data", "uri": "tables.html#the-colgroup-element"}, {"text": "The col element", "section": "4.9.4 - Tabular data", "uri": "tables.html#the-col-element"}, {"text": "The tbody element", "section": "4.9.5 - Tabular data", "uri": "tables.html#the-tbody-element"}, {"text": "The thead element", "section": "4.9.6 - Tabular data", "uri": "tables.html#the-thead-element"}, {"text": "The tfoot element", "section": "4.9.7 - Tabular data", "uri": "tables.html#the-tfoot-element"}, {"text": "The tr element", "section": "4.9.8 - Tabular data", "uri": "tables.html#the-tr-element"}, {"text": "The td element", "section": "4.9.9 - Tabular data", "uri": "tables.html#the-td-element"}, {"text": "The th element", "section": "4.9.10 - Tabular data", "uri": "tables.html#the-th-element"}, {"text": "Attributes common to td and th elements", "section": "4.9.11 - Tabular data", "uri": "tables.html#attributes-common-to-td-and-th-elements"}, {"text": "Examples", "section": "4.9.12 - Tabular data", "uri": "tables.html#table-examples"}, {"text": "Forms", "section": "4.10 - The elements of HTML", "uri": "forms.html#forms"}, {"text": "Introduction", "section": "4.10.1 - Forms", "uri": "forms.html#introduction-4"}, {"text": "Writing a form's user interface", "section": "4.10.1.1 - Introduction", "uri": "forms.html#writing-a-form's-user-interface"}, {"text": "Implementing the server-side processing for a form", "section": "4.10.1.2 - Introduction", "uri": "forms.html#implementing-the-server-side-processing-for-a-form"}, {"text": "Configuring a form to communicate with a server", "section": "4.10.1.3 - Introduction", "uri": "forms.html#configuring-a-form-to-communicate-with-a-server"}, {"text": "Client-side form validation", "section": "4.10.1.4 - Introduction", "uri": "forms.html#client-side-form-validation"}, {"text": "Enabling client-side automatic filling of form controls", "section": "4.10.1.5 - Introduction", "uri": "forms.html#enabling-client-side-automatic-filling-of-form-controls"}, {"text": "Improving the user experience on mobile devices", "section": "4.10.1.6 - Introduction", "uri": "forms.html#improving-the-user-experience-on-mobile-devices"}, {"text": "The difference between the field type, the autofill field name, and the input modality", "section": "4.10.1.7 - Introduction", "uri": "forms.html#the-difference-between-the-field-type,-the-autofill-field-name,-and-the-input-modality"}, {"text": "Date, time, and number formats", "section": "4.10.1.8 - Introduction", "uri": "forms.html#input-author-notes"}, {"text": "Categories", "section": "4.10.2 - Forms", "uri": "forms.html#categories"}, {"text": "The form element", "section": "4.10.3 - Forms", "uri": "forms.html#the-form-element"}, {"text": "The label element", "section": "4.10.4 - Forms", "uri": "forms.html#the-label-element"}, {"text": "The input element", "section": "4.10.5 - Forms", "uri": "input.html#the-input-element"}, {"text": "States of the type attribute", "section": "4.10.5.1 - The input element", "uri": "input.html#states-of-the-type-attribute"}, {"text": "Hidden state (type=hidden)", "section": "4.10.5.1.1 - States of the type attribute", "uri": "input.html#hidden-state-(type=hidden)"}, {"text": "Text (type=text) state and Search state (type=search)", "section": "4.10.5.1.2 - States of the type attribute", "uri": "input.html#text-(type=text)-state-and-search-state-(type=search)"}, {"text": "Telephone state (type=tel)", "section": "4.10.5.1.3 - States of the type attribute", "uri": "input.html#telephone-state-(type=tel)"}, {"text": "URL state (type=url)", "section": "4.10.5.1.4 - States of the type attribute", "uri": "input.html#url-state-(type=url)"}, {"text": "E-mail state (type=email)", "section": "4.10.5.1.5 - States of the type attribute", "uri": "input.html#e-mail-state-(type=email)"}, {"text": "Password state (type=password)", "section": "4.10.5.1.6 - States of the type attribute", "uri": "input.html#password-state-(type=password)"}, {"text": "Date state (type=date)", "section": "4.10.5.1.7 - States of the type attribute", "uri": "input.html#date-state-(type=date)"}, {"text": "Month state (type=month)", "section": "4.10.5.1.8 - States of the type attribute", "uri": "input.html#month-state-(type=month)"}, {"text": "Week state (type=week)", "section": "4.10.5.1.9 - States of the type attribute", "uri": "input.html#week-state-(type=week)"}, {"text": "Time state (type=time)", "section": "4.10.5.1.10 - States of the type attribute", "uri": "input.html#time-state-(type=time)"}, {"text": "Local Date and Time state (type=datetime-local)", "section": "4.10.5.1.11 - States of the type attribute", "uri": "input.html#local-date-and-time-state-(type=datetime-local)"}, {"text": "Number state (type=number)", "section": "4.10.5.1.12 - States of the type attribute", "uri": "input.html#number-state-(type=number)"}, {"text": "Range state (type=range)", "section": "4.10.5.1.13 - States of the type attribute", "uri": "input.html#range-state-(type=range)"}, {"text": "Color state (type=color)", "section": "4.10.5.1.14 - States of the type attribute", "uri": "input.html#color-state-(type=color)"}, {"text": "Checkbox state (type=checkbox)", "section": "4.10.5.1.15 - States of the type attribute", "uri": "input.html#checkbox-state-(type=checkbox)"}, {"text": "Radio Button state (type=radio)", "section": "4.10.5.1.16 - States of the type attribute", "uri": "input.html#radio-button-state-(type=radio)"}, {"text": "File Upload state (type=file)", "section": "4.10.5.1.17 - States of the type attribute", "uri": "input.html#file-upload-state-(type=file)"}, {"text": "Submit Button state (type=submit)", "section": "4.10.5.1.18 - States of the type attribute", "uri": "input.html#submit-button-state-(type=submit)"}, {"text": "Image Button state (type=image)", "section": "4.10.5.1.19 - States of the type attribute", "uri": "input.html#image-button-state-(type=image)"}, {"text": "Reset Button state (type=reset)", "section": "4.10.5.1.20 - States of the type attribute", "uri": "input.html#reset-button-state-(type=reset)"}, {"text": "Button state (type=button)", "section": "4.10.5.1.21 - States of the type attribute", "uri": "input.html#button-state-(type=button)"}, {"text": "Common input element attributes", "section": "4.10.5.2 - The input element", "uri": "input.html#common-input-element-attributes"}, {"text": "The maxlength and minlength attributes", "section": "4.10.5.2.1 - Common input element attributes", "uri": "input.html#the-maxlength-and-minlength-attributes"}, {"text": "The size attribute", "section": "4.10.5.2.2 - Common input element attributes", "uri": "input.html#the-size-attribute"}, {"text": "The readonly attribute", "section": "4.10.5.2.3 - Common input element attributes", "uri": "input.html#the-readonly-attribute"}, {"text": "The required attribute", "section": "4.10.5.2.4 - Common input element attributes", "uri": "input.html#the-required-attribute"}, {"text": "The multiple attribute", "section": "4.10.5.2.5 - Common input element attributes", "uri": "input.html#the-multiple-attribute"}, {"text": "The pattern attribute", "section": "4.10.5.2.6 - Common input element attributes", "uri": "input.html#the-pattern-attribute"}, {"text": "The min and max attributes", "section": "4.10.5.2.7 - Common input element attributes", "uri": "input.html#the-min-and-max-attributes"}, {"text": "The step attribute", "section": "4.10.5.2.8 - Common input element attributes", "uri": "input.html#the-step-attribute"}, {"text": "The list attribute", "section": "4.10.5.2.9 - Common input element attributes", "uri": "input.html#the-list-attribute"}, {"text": "The placeholder attribute", "section": "4.10.5.2.10 - Common input element attributes", "uri": "input.html#the-placeholder-attribute"}, {"text": "Common input element APIs", "section": "4.10.5.3 - The input element", "uri": "input.html#common-input-element-apis"}, {"text": "The button element", "section": "4.10.6 - Forms", "uri": "form-elements.html#the-button-element"}, {"text": "The select element", "section": "4.10.7 - Forms", "uri": "form-elements.html#the-select-element"}, {"text": "The datalist element", "section": "4.10.8 - Forms", "uri": "form-elements.html#the-datalist-element"}, {"text": "The optgroup element", "section": "4.10.9 - Forms", "uri": "form-elements.html#the-optgroup-element"}, {"text": "The option element", "section": "4.10.10 - Forms", "uri": "form-elements.html#the-option-element"}, {"text": "The textarea element", "section": "4.10.11 - Forms", "uri": "form-elements.html#the-textarea-element"}, {"text": "The output element", "section": "4.10.12 - Forms", "uri": "form-elements.html#the-output-element"}, {"text": "The progress element", "section": "4.10.13 - Forms", "uri": "form-elements.html#the-progress-element"}, {"text": "The meter element", "section": "4.10.14 - Forms", "uri": "form-elements.html#the-meter-element"}, {"text": "The fieldset element", "section": "4.10.15 - Forms", "uri": "form-elements.html#the-fieldset-element"}, {"text": "The legend element", "section": "4.10.16 - Forms", "uri": "form-elements.html#the-legend-element"}, {"text": "Form control infrastructure", "section": "4.10.17 - Forms", "uri": "form-control-infrastructure.html#form-control-infrastructure"}, {"text": "A form control's value", "section": "4.10.17.1 - Form control infrastructure", "uri": "form-control-infrastructure.html#a-form-control's-value"}, {"text": "Mutability", "section": "4.10.17.2 - Form control infrastructure", "uri": "form-control-infrastructure.html#mutability"}, {"text": "Association of controls and forms", "section": "4.10.17.3 - Form control infrastructure", "uri": "form-control-infrastructure.html#association-of-controls-and-forms"}, {"text": "Attributes common to form controls", "section": "4.10.18 - Forms", "uri": "form-control-infrastructure.html#attributes-common-to-form-controls"}, {"text": "Naming form controls: the name attribute", "section": "4.10.18.1 - Attributes common to form controls", "uri": "form-control-infrastructure.html#naming-form-controls:-the-name-attribute"}, {"text": "Submitting element directionality: the dirname attribute", "section": "4.10.18.2 - Attributes common to form controls", "uri": "form-control-infrastructure.html#submitting-element-directionality:-the-dirname-attribute"}, {"text": "Limiting user input length: the maxlength attribute", "section": "4.10.18.3 - Attributes common to form controls", "uri": "form-control-infrastructure.html#limiting-user-input-length:-the-maxlength-attribute"}, {"text": "Setting minimum input length requirements: the minlength attribute", "section": "4.10.18.4 - Attributes common to form controls", "uri": "form-control-infrastructure.html#setting-minimum-input-length-requirements:-the-minlength-attribute"}, {"text": "Enabling and disabling form controls: the disabled attribute", "section": "4.10.18.5 - Attributes common to form controls", "uri": "form-control-infrastructure.html#enabling-and-disabling-form-controls:-the-disabled-attribute"}, {"text": "Form submission", "section": "4.10.18.6 - Attributes common to form controls", "uri": "form-control-infrastructure.html#form-submission"}, {"text": "Autofocusing a form control: the autofocus attribute", "section": "4.10.18.6.1 - Form submission", "uri": "form-control-infrastructure.html#autofocusing-a-form-control:-the-autofocus-attribute"}, {"text": "Input modalities: the inputmode attribute", "section": "4.10.18.7 - Attributes common to form controls", "uri": "form-control-infrastructure.html#input-modalities:-the-inputmode-attribute"}, {"text": "Autofill", "section": "4.10.18.8 - Attributes common to form controls", "uri": "form-control-infrastructure.html#autofill"}, {"text": "Autofilling form controls: the autocomplete attribute", "section": "4.10.18.8.1 - Autofill", "uri": "form-control-infrastructure.html#autofilling-form-controls:-the-autocomplete-attribute"}, {"text": "APIs for the text control selections", "section": "4.10.19 - Forms", "uri": "form-control-infrastructure.html#textFieldSelection"}, {"text": "Constraints", "section": "4.10.20 - Forms", "uri": "form-control-infrastructure.html#constraints"}, {"text": "Definitions", "section": "4.10.20.1 - Constraints", "uri": "form-control-infrastructure.html#definitions"}, {"text": "The constraint validation API", "section": "4.10.20.2 - Constraints", "uri": "form-control-infrastructure.html#the-constraint-validation-api"}, {"text": "Security", "section": "4.10.20.3 - Constraints", "uri": "form-control-infrastructure.html#security-forms"}, {"text": "Form submission", "section": "4.10.21 - Forms", "uri": "form-control-infrastructure.html#form-submission-2"}, {"text": "URL-encoded form data", "section": "4.10.21.1 - Form submission", "uri": "form-control-infrastructure.html#url-encoded-form-data"}, {"text": "Multipart form data", "section": "4.10.21.2 - Form submission", "uri": "form-control-infrastructure.html#multipart-form-data"}, {"text": "Plain text form data", "section": "4.10.21.3 - Form submission", "uri": "form-control-infrastructure.html#plain-text-form-data"}, {"text": "Interactive elements", "section": "4.11 - The elements of HTML", "uri": "interactive-elements.html#interactive-elements"}, {"text": "The details element", "section": "4.11.1 - Interactive elements", "uri": "interactive-elements.html#the-details-element"}, {"text": "The summary element", "section": "4.11.2 - Interactive elements", "uri": "interactive-elements.html#the-summary-element"}, {"text": "Commands", "section": "4.11.3 - Interactive elements", "uri": "interactive-elements.html#commands"}, {"text": "Facets", "section": "4.11.3.1 - Commands", "uri": "interactive-elements.html#facets-2"}, {"text": "The dialog element", "section": "4.11.4 - Interactive elements", "uri": "interactive-elements.html#the-dialog-element"}, {"text": "Scripting", "section": "4.12 - The elements of HTML", "uri": "scripting.html#scripting-3"}, {"text": "The script element", "section": "4.12.1 - Scripting", "uri": "scripting.html#the-script-element"}, {"text": "Scripting languages", "section": "4.12.1.1 - The script element", "uri": "scripting.html#scriptingLanguages"}, {"text": "Restrictions for contents of script elements", "section": "4.12.1.2 - The script element", "uri": "scripting.html#restrictions-for-contents-of-script-elements"}, {"text": "Inline documentation for external scripts", "section": "4.12.1.3 - The script element", "uri": "scripting.html#inline-documentation-for-external-scripts"}, {"text": "The noscript element", "section": "4.12.2 - Scripting", "uri": "scripting.html#the-noscript-element"}, {"text": "The template element", "section": "4.12.3 - Scripting", "uri": "scripting.html#the-template-element"}, {"text": "The slot element", "section": "4.12.4 - Scripting", "uri": "scripting.html#the-slot-element"}, {"text": "The canvas element", "section": "4.12.5 - Scripting", "uri": "canvas.html#the-canvas-element"}, {"text": "The 2D rendering context", "section": "4.12.5.1 - The canvas element", "uri": "canvas.html#2dcontext"}, {"text": "Implementation notes", "section": "4.12.5.1.1 - The 2D rendering context", "uri": "canvas.html#implementation-notes"}, {"text": "The canvas state", "section": "4.12.5.1.2 - The 2D rendering context", "uri": "canvas.html#the-canvas-state"}, {"text": "Line styles", "section": "4.12.5.1.3 - The 2D rendering context", "uri": "canvas.html#line-styles"}, {"text": "Text styles", "section": "4.12.5.1.4 - The 2D rendering context", "uri": "canvas.html#text-styles"}, {"text": "Building paths", "section": "4.12.5.1.5 - The 2D rendering context", "uri": "canvas.html#building-paths"}, {"text": "Path2D objects", "section": "4.12.5.1.6 - The 2D rendering context", "uri": "canvas.html#path2d-objects"}, {"text": "Transformations", "section": "4.12.5.1.7 - The 2D rendering context", "uri": "canvas.html#transformations"}, {"text": "Image sources for 2D rendering contexts", "section": "4.12.5.1.8 - The 2D rendering context", "uri": "canvas.html#image-sources-for-2d-rendering-contexts"}, {"text": "Fill and stroke styles", "section": "4.12.5.1.9 - The 2D rendering context", "uri": "canvas.html#fill-and-stroke-styles"}, {"text": "Drawing rectangles to the bitmap", "section": "4.12.5.1.10 - The 2D rendering context", "uri": "canvas.html#drawing-rectangles-to-the-bitmap"}, {"text": "Drawing text to the bitmap", "section": "4.12.5.1.11 - The 2D rendering context", "uri": "canvas.html#drawing-text-to-the-bitmap"}, {"text": "Drawing paths to the canvas", "section": "4.12.5.1.12 - The 2D rendering context", "uri": "canvas.html#drawing-paths-to-the-canvas"}, {"text": "Drawing focus rings and scrolling paths into view", "section": "4.12.5.1.13 - The 2D rendering context", "uri": "canvas.html#drawing-focus-rings-and-scrolling-paths-into-view"}, {"text": "Drawing images", "section": "4.12.5.1.14 - The 2D rendering context", "uri": "canvas.html#drawing-images"}, {"text": "Pixel manipulation", "section": "4.12.5.1.15 - The 2D rendering context", "uri": "canvas.html#pixel-manipulation"}, {"text": "Compositing", "section": "4.12.5.1.16 - The 2D rendering context", "uri": "canvas.html#compositing"}, {"text": "Image smoothing", "section": "4.12.5.1.17 - The 2D rendering context", "uri": "canvas.html#image-smoothing"}, {"text": "Shadows", "section": "4.12.5.1.18 - The 2D rendering context", "uri": "canvas.html#shadows"}, {"text": "Filters", "section": "4.12.5.1.19 - The 2D rendering context", "uri": "canvas.html#filters"}, {"text": "Working with externally-defined SVG filters", "section": "4.12.5.1.20 - The 2D rendering context", "uri": "canvas.html#working-with-externally-defined-svg-filters"}, {"text": "Best practices", "section": "4.12.5.1.21 - The 2D rendering context", "uri": "canvas.html#best-practices"}, {"text": "Examples", "section": "4.12.5.1.22 - The 2D rendering context", "uri": "canvas.html#examples"}, {"text": "The ImageBitmap rendering context", "section": "4.12.5.2 - The canvas element", "uri": "canvas.html#the-imagebitmap-rendering-context"}, {"text": "Introduction", "section": "4.12.5.2.1 - The ImageBitmap rendering context", "uri": "canvas.html#introduction-5"}, {"text": "The ImageBitmapRenderingContext interface", "section": "4.12.5.2.2 - The ImageBitmap rendering context", "uri": "canvas.html#the-imagebitmaprenderingcontext-interface"}, {"text": "The OffscreenCanvas interface", "section": "4.12.5.3 - The canvas element", "uri": "canvas.html#the-offscreencanvas-interface"}, {"text": "The offscreen 2D rendering context", "section": "4.12.5.3.1 - The OffscreenCanvas interface", "uri": "canvas.html#the-offscreen-2d-rendering-context"}, {"text": "Serializing bitmaps to a file", "section": "4.12.5.4 - The canvas element", "uri": "canvas.html#serialising-bitmaps-to-a-file"}, {"text": "Custom elements", "section": "4.13 - The elements of HTML", "uri": "custom-elements.html#custom-elements"}, {"text": "Introduction", "section": "4.13.1 - Custom elements", "uri": "custom-elements.html#custom-elements-intro"}, {"text": "Creating an autonomous custom element", "section": "4.13.1.1 - Introduction", "uri": "custom-elements.html#custom-elements-autonomous-example"}, {"text": "Creating a customized built-in element", "section": "4.13.1.2 - Introduction", "uri": "custom-elements.html#custom-elements-customized-builtin-example"}, {"text": "Drawbacks of autonomous custom elements", "section": "4.13.1.3 - Introduction", "uri": "custom-elements.html#custom-elements-autonomous-drawbacks"}, {"text": "Upgrading elements after their creation", "section": "4.13.1.4 - Introduction", "uri": "custom-elements.html#custom-elements-upgrades-examples"}, {"text": "Requirements for custom element constructors", "section": "4.13.2 - Custom elements", "uri": "custom-elements.html#custom-element-conformance"}, {"text": "Core concepts", "section": "4.13.3 - Custom elements", "uri": "custom-elements.html#custom-elements-core-concepts"}, {"text": "The CustomElementRegistry interface", "section": "4.13.4 - Custom elements", "uri": "custom-elements.html#custom-elements-api"}, {"text": "Upgrades", "section": "4.13.5 - Custom elements", "uri": "custom-elements.html#upgrades"}, {"text": "Custom element reactions", "section": "4.13.6 - Custom elements", "uri": "custom-elements.html#custom-element-reactions"}, {"text": "Common idioms without dedicated elements", "section": "4.14 - The elements of HTML", "uri": "semantics-other.html#common-idioms"}, {"text": "The main part of the content", "section": "4.14.1 - Common idioms without dedicated elements", "uri": "semantics-other.html#the-main-part-of-the-content"}, {"text": "Bread crumb navigation", "section": "4.14.2 - Common idioms without dedicated elements", "uri": "semantics-other.html#rel-up"}, {"text": "Tag clouds", "section": "4.14.3 - Common idioms without dedicated elements", "uri": "semantics-other.html#tag-clouds"}, {"text": "Conversations", "section": "4.14.4 - Common idioms without dedicated elements", "uri": "semantics-other.html#conversations"}, {"text": "Footnotes", "section": "4.14.5 - Common idioms without dedicated elements", "uri": "semantics-other.html#footnotes"}, {"text": "Disabled elements", "section": "4.15 - The elements of HTML", "uri": "semantics-other.html#disabled-elements"}, {"text": "Microdata", "section": "5", "uri": "microdata.html#microdata"}, {"text": "Introduction", "section": "5.1 - Microdata", "uri": "microdata.html#introduction-6"}, {"text": "Overview", "section": "5.1.1 - Introduction", "uri": "microdata.html#overview"}, {"text": "The basic syntax", "section": "5.1.2 - Introduction", "uri": "microdata.html#the-basic-syntax"}, {"text": "Typed items", "section": "5.1.3 - Introduction", "uri": "microdata.html#typed-items"}, {"text": "Global identifiers for items", "section": "5.1.4 - Introduction", "uri": "microdata.html#global-identifiers-for-items"}, {"text": "Selecting names when defining vocabularies", "section": "5.1.5 - Introduction", "uri": "microdata.html#selecting-names-when-defining-vocabularies"}, {"text": "Encoding microdata", "section": "5.2 - Microdata", "uri": "microdata.html#encoding-microdata"}, {"text": "The microdata model", "section": "5.2.1 - Encoding microdata", "uri": "microdata.html#the-microdata-model"}, {"text": "Items", "section": "5.2.2 - Encoding microdata", "uri": "microdata.html#items"}, {"text": "Names: the itemprop attribute", "section": "5.2.3 - Encoding microdata", "uri": "microdata.html#names:-the-itemprop-attribute"}, {"text": "Values", "section": "5.2.4 - Encoding microdata", "uri": "microdata.html#values"}, {"text": "Microdata and other namespaces", "section": "5.2.5 - Encoding microdata", "uri": "microdata.html#microdata-and-other-namespaces"}, {"text": "Sample microdata vocabularies", "section": "5.3 - Microdata", "uri": "microdata.html#mdvocabs"}, {"text": "vCard", "section": "5.3.1 - Sample microdata vocabularies", "uri": "microdata.html#vcard"}, {"text": "Conversion to vCard", "section": "5.3.1.1 - vCard", "uri": "microdata.html#conversion-to-vcard"}, {"text": "Examples", "section": "5.3.1.2 - vCard", "uri": "microdata.html#examples-2"}, {"text": "vEvent", "section": "5.3.2 - Sample microdata vocabularies", "uri": "microdata.html#vevent"}, {"text": "Conversion to iCalendar", "section": "5.3.2.1 - vEvent", "uri": "microdata.html#conversion-to-icalendar"}, {"text": "Examples", "section": "5.3.2.2 - vEvent", "uri": "microdata.html#examples-3"}, {"text": "Licensing works", "section": "5.3.3 - Sample microdata vocabularies", "uri": "microdata.html#licensing-works"}, {"text": "Examples", "section": "5.3.3.1 - Licensing works", "uri": "microdata.html#examples-4"}, {"text": "User interaction", "section": "6", "uri": "interaction.html#editing"}, {"text": "The hidden attribute", "section": "6.1 - User interaction", "uri": "interaction.html#the-hidden-attribute"}, {"text": "Inert subtrees", "section": "6.2 - User interaction", "uri": "interaction.html#inert-subtrees"}, {"text": "Activation", "section": "6.3 - User interaction", "uri": "interaction.html#activation"}, {"text": "Focus", "section": "6.4 - User interaction", "uri": "interaction.html#focus"}, {"text": "Introduction", "section": "6.4.1 - Focus", "uri": "interaction.html#introduction-7"}, {"text": "Data model", "section": "6.4.2 - Focus", "uri": "interaction.html#data-model"}, {"text": "The tabindex attribute", "section": "6.4.3 - Focus", "uri": "interaction.html#the-tabindex-attribute"}, {"text": "Focus management APIs", "section": "6.4.4 - Focus", "uri": "interaction.html#focus-management-apis"}, {"text": "Assigning keyboard shortcuts", "section": "6.5 - User interaction", "uri": "interaction.html#assigning-keyboard-shortcuts"}, {"text": "Introduction", "section": "6.5.1 - Assigning keyboard shortcuts", "uri": "interaction.html#introduction-8"}, {"text": "The accesskey attribute", "section": "6.5.2 - Assigning keyboard shortcuts", "uri": "interaction.html#the-accesskey-attribute"}, {"text": "Editing", "section": "6.6 - User interaction", "uri": "interaction.html#editing-2"}, {"text": "Making document regions editable: The contenteditable content attribute", "section": "6.6.1 - Editing", "uri": "interaction.html#contenteditable"}, {"text": "Making entire documents editable: the designMode IDL attribute", "section": "6.6.2 - Editing", "uri": "interaction.html#making-entire-documents-editable:-the-designmode-idl-attribute"}, {"text": "Best practices for in-page editors", "section": "6.6.3 - Editing", "uri": "interaction.html#best-practices-for-in-page-editors"}, {"text": "Spelling and grammar checking", "section": "6.6.4 - Editing", "uri": "interaction.html#spelling-and-grammar-checking"}, {"text": "Drag and drop", "section": "6.7 - User interaction", "uri": "dnd.html#dnd"}, {"text": "Introduction", "section": "6.7.1 - Drag and drop", "uri": "dnd.html#event-drag"}, {"text": "The drag data store", "section": "6.7.2 - Drag and drop", "uri": "dnd.html#the-drag-data-store"}, {"text": "The DataTransfer interface", "section": "6.7.3 - Drag and drop", "uri": "dnd.html#the-datatransfer-interface"}, {"text": "The DataTransferItemList interface", "section": "6.7.3.1 - The DataTransfer interface", "uri": "dnd.html#the-datatransferitemlist-interface"}, {"text": "The DataTransferItem interface", "section": "6.7.3.2 - The DataTransfer interface", "uri": "dnd.html#the-datatransferitem-interface"}, {"text": "The DragEvent interface", "section": "6.7.4 - Drag and drop", "uri": "dnd.html#the-dragevent-interface"}, {"text": "Events summary", "section": "6.7.5 - Drag and drop", "uri": "dnd.html#dndevents"}, {"text": "The draggable attribute", "section": "6.7.6 - Drag and drop", "uri": "dnd.html#the-draggable-attribute"}, {"text": "Loading Web pages", "section": "7", "uri": "browsers.html#browsers"}, {"text": "Browsing contexts", "section": "7.1 - Loading Web pages", "uri": "browsers.html#windows"}, {"text": "Nested browsing contexts", "section": "7.1.1 - Browsing contexts", "uri": "browsers.html#nested-browsing-contexts"}, {"text": "Navigating nested browsing contexts in the DOM", "section": "7.1.1.1 - Nested browsing contexts", "uri": "browsers.html#navigating-nested-browsing-contexts-in-the-dom"}, {"text": "Auxiliary browsing contexts", "section": "7.1.2 - Browsing contexts", "uri": "browsers.html#auxiliary-browsing-contexts"}, {"text": "Navigating auxiliary browsing contexts in the DOM", "section": "7.1.2.1 - Auxiliary browsing contexts", "uri": "browsers.html#navigating-auxiliary-browsing-contexts-in-the-dom"}, {"text": "Browsing context names", "section": "7.1.3 - Browsing contexts", "uri": "browsers.html#browsing-context-names"}, {"text": "The Window object", "section": "7.2 - Loading Web pages", "uri": "window-object.html#the-window-object"}, {"text": "APIs for creating and navigating browsing contexts by name", "section": "7.2.1 - The Window object", "uri": "window-object.html#apis-for-creating-and-navigating-browsing-contexts-by-name"}, {"text": "Accessing other browsing contexts", "section": "7.2.2 - The Window object", "uri": "window-object.html#accessing-other-browsing-contexts"}, {"text": "Named access on the Window object", "section": "7.2.3 - The Window object", "uri": "window-object.html#named-access-on-the-window-object"}, {"text": "Closing browsing contexts", "section": "7.2.4 - The Window object", "uri": "window-object.html#closing-browsing-contexts"}, {"text": "Browser interface elements", "section": "7.2.5 - The Window object", "uri": "window-object.html#browser-interface-elements"}, {"text": "Origin", "section": "7.3 - Loading Web pages", "uri": "origin.html#origin"}, {"text": "Relaxing the same-origin restriction", "section": "7.3.1 - Origin", "uri": "origin.html#relaxing-the-same-origin-restriction"}, {"text": "Sandboxing", "section": "7.4 - Loading Web pages", "uri": "origin.html#sandboxing"}, {"text": "Session history and navigation", "section": "7.5 - Loading Web pages", "uri": "history.html#history"}, {"text": "The session history of browsing contexts", "section": "7.5.1 - Session history and navigation", "uri": "history.html#the-session-history-of-browsing-contexts"}, {"text": "The History interface", "section": "7.5.2 - Session history and navigation", "uri": "history.html#the-history-interface"}, {"text": "The Location interface", "section": "7.5.3 - Session history and navigation", "uri": "history.html#the-location-interface"}, {"text": "Browsing the Web", "section": "7.6 - Loading Web pages", "uri": "browsing-the-web.html#browsing-the-web"}, {"text": "History traversal", "section": "7.6.1 - Browsing the Web", "uri": "browsing-the-web.html#history-traversal"}, {"text": "Persisted user state restoration", "section": "7.6.1.1 - History traversal", "uri": "browsing-the-web.html#persisted-user-state-restoration"}, {"text": "The PopStateEvent interface", "section": "7.6.1.2 - History traversal", "uri": "browsing-the-web.html#the-popstateevent-interface"}, {"text": "The HashChangeEvent interface", "section": "7.6.1.3 - History traversal", "uri": "browsing-the-web.html#the-hashchangeevent-interface"}, {"text": "The PageTransitionEvent interface", "section": "7.6.1.4 - History traversal", "uri": "browsing-the-web.html#the-pagetransitionevent-interface"}, {"text": "Unloading documents", "section": "7.6.2 - Browsing the Web", "uri": "browsing-the-web.html#unloading-documents"}, {"text": "The BeforeUnloadEvent interface", "section": "7.6.2.1 - Unloading documents", "uri": "browsing-the-web.html#the-beforeunloadevent-interface"}, {"text": "Offline Web applications", "section": "7.7 - Loading Web pages", "uri": "offline.html#offline"}, {"text": "Introduction", "section": "7.7.1 - Offline Web applications", "uri": "offline.html#introduction-9"}, {"text": "Supporting offline caching for legacy applications", "section": "7.7.1.1 - Introduction", "uri": "offline.html#supporting-offline-caching-for-legacy-applications"}, {"text": "Event summary", "section": "7.7.1.2 - Introduction", "uri": "offline.html#appcacheevents"}, {"text": "The cache manifest syntax", "section": "7.7.2 - Offline Web applications", "uri": "offline.html#manifests"}, {"text": "Some sample manifests", "section": "7.7.2.1 - The cache manifest syntax", "uri": "offline.html#some-sample-manifests"}, {"text": "Writing cache manifests", "section": "7.7.2.2 - The cache manifest syntax", "uri": "offline.html#writing-cache-manifests"}, {"text": "Security concerns with offline applications caches", "section": "7.7.3 - Offline Web applications", "uri": "offline.html#security-concerns-with-offline-applications-caches"}, {"text": "Application cache API", "section": "7.7.4 - Offline Web applications", "uri": "offline.html#application-cache-api"}, {"text": "Browser state", "section": "7.7.5 - Offline Web applications", "uri": "offline.html#navigator.online"}, {"text": "Web application APIs", "section": "8", "uri": "webappapis.html#webappapis"}, {"text": "Scripting", "section": "8.1 - Web application APIs", "uri": "webappapis.html#scripting"}, {"text": "Introduction", "section": "8.1.1 - Scripting", "uri": "webappapis.html#introduction-10"}, {"text": "Runtime script errors", "section": "8.1.1.1 - Introduction", "uri": "webappapis.html#runtime-script-errors"}, {"text": "Unhandled promise rejections", "section": "8.1.1.2 - Introduction", "uri": "webappapis.html#unhandled-promise-rejections"}, {"text": "HostPromiseRejectionTracker(promise, operation)", "section": "8.1.1.2.1 - Unhandled promise rejections", "uri": "webappapis.html#the-hostpromiserejectiontracker-implementation"}, {"text": "The PromiseRejectionEvent interface", "section": "8.1.1.2.2 - Unhandled promise rejections", "uri": "webappapis.html#the-promiserejectionevent-interface"}, {"text": "HostEnsureCanCompileStrings(callerRealm, calleeRealm)", "section": "8.1.1.3 - Introduction", "uri": "webappapis.html#hostensurecancompilestrings(callerrealm,-calleerealm)"}, {"text": "Events", "section": "8.1.2 - Scripting", "uri": "webappapis.html#events"}, {"text": "Event handlers", "section": "8.1.2.1 - Events", "uri": "webappapis.html#event-handler-attributes"}, {"text": "Event handlers on elements, Document objects, and Window objects", "section": "8.1.2.2 - Events", "uri": "webappapis.html#event-handlers-on-elements,-document-objects,-and-window-objects"}, {"text": "IDL definitions", "section": "8.1.2.2.1 - Event handlers on elements, Document objects, and Window objects", "uri": "webappapis.html#idl-definitions"}, {"text": "The WindowOrWorkerGlobalScope mixin", "section": "8.2 - Web application APIs", "uri": "webappapis.html#windoworworkerglobalscope-mixin"}, {"text": "Base64 utility methods", "section": "8.3 - Web application APIs", "uri": "webappapis.html#atob"}, {"text": "Dynamic markup insertion", "section": "8.4 - Web application APIs", "uri": "dynamic-markup-insertion.html#dynamic-markup-insertion"}, {"text": "Opening the input stream", "section": "8.4.1 - Dynamic markup insertion", "uri": "dynamic-markup-insertion.html#opening-the-input-stream"}, {"text": "Closing the input stream", "section": "8.4.2 - Dynamic markup insertion", "uri": "dynamic-markup-insertion.html#closing-the-input-stream"}, {"text": "document.write()", "section": "8.4.3 - Dynamic markup insertion", "uri": "dynamic-markup-insertion.html#document.write()"}, {"text": "document.writeln()", "section": "8.4.4 - Dynamic markup insertion", "uri": "dynamic-markup-insertion.html#document.writeln()"}, {"text": "Timers", "section": "8.5 - Web application APIs", "uri": "timers-and-user-prompts.html#timers"}, {"text": "User prompts", "section": "8.6 - Web application APIs", "uri": "timers-and-user-prompts.html#user-prompts"}, {"text": "Simple dialogs", "section": "8.6.1 - User prompts", "uri": "timers-and-user-prompts.html#simple-dialogs"}, {"text": "Printing", "section": "8.6.2 - User prompts", "uri": "timers-and-user-prompts.html#printing"}, {"text": "System state and capabilities", "section": "8.7 - Web application APIs", "uri": "system-state.html#system-state-and-capabilities"}, {"text": "The Navigator object", "section": "8.7.1 - System state and capabilities", "uri": "system-state.html#the-navigator-object"}, {"text": "Client identification", "section": "8.7.1.1 - The Navigator object", "uri": "system-state.html#client-identification"}, {"text": "Language preferences", "section": "8.7.1.2 - The Navigator object", "uri": "system-state.html#language-preferences"}, {"text": "Custom scheme and content handlers: the registerProtocolHandler() and registerContentHandler() methods", "section": "8.7.1.3 - The Navigator object", "uri": "system-state.html#custom-handlers"}, {"text": "Cookies", "section": "8.7.1.4 - The Navigator object", "uri": "system-state.html#cookies"}, {"text": "Plugins", "section": "8.7.1.5 - The Navigator object", "uri": "system-state.html#plugins-2"}, {"text": "Images", "section": "8.8 - Web application APIs", "uri": "imagebitmap-and-animations.html#images-2"}, {"text": "Animation Frames", "section": "8.9 - Web application APIs", "uri": "imagebitmap-and-animations.html#animation-frames"}, {"text": "Communication", "section": "9", "uri": "comms.html#comms"}, {"text": "The MessageEvent interfaces", "section": "9.1 - Communication", "uri": "comms.html#the-messageevent-interfaces"}, {"text": "Server-sent events", "section": "9.2 - Communication", "uri": "server-sent-events.html#server-sent-events"}, {"text": "Introduction", "section": "9.2.1 - Server-sent events", "uri": "server-sent-events.html#server-sent-events-intro"}, {"text": "The EventSource interface", "section": "9.2.2 - Server-sent events", "uri": "server-sent-events.html#the-eventsource-interface"}, {"text": "Processing model", "section": "9.2.3 - Server-sent events", "uri": "server-sent-events.html#sse-processing-model"}, {"text": "Parsing an event stream", "section": "9.2.4 - Server-sent events", "uri": "server-sent-events.html#parsing-an-event-stream"}, {"text": "Interpreting an event stream", "section": "9.2.5 - Server-sent events", "uri": "server-sent-events.html#event-stream-interpretation"}, {"text": "Authoring notes", "section": "9.2.6 - Server-sent events", "uri": "server-sent-events.html#authoring-notes"}, {"text": "Connectionless push and other features", "section": "9.2.7 - Server-sent events", "uri": "server-sent-events.html#eventsource-push"}, {"text": "Garbage collection", "section": "9.2.8 - Server-sent events", "uri": "server-sent-events.html#garbage-collection"}, {"text": "Implementation advice", "section": "9.2.9 - Server-sent events", "uri": "server-sent-events.html#implementation-advice"}, {"text": "Web sockets", "section": "9.3 - Communication", "uri": "web-sockets.html#network"}, {"text": "Introduction", "section": "9.3.1 - Web sockets", "uri": "web-sockets.html#network-intro"}, {"text": "The WebSocket interface", "section": "9.3.2 - Web sockets", "uri": "web-sockets.html#the-websocket-interface"}, {"text": "Feedback from the protocol", "section": "9.3.3 - Web sockets", "uri": "web-sockets.html#feedback-from-the-protocol"}, {"text": "Ping and Pong frames", "section": "9.3.4 - Web sockets", "uri": "web-sockets.html#ping-and-pong-frames"}, {"text": "The CloseEvent interfaces", "section": "9.3.5 - Web sockets", "uri": "web-sockets.html#the-closeevent-interfaces"}, {"text": "Garbage collection", "section": "9.3.6 - Web sockets", "uri": "web-sockets.html#garbage-collection-2"}, {"text": "Cross-document messaging", "section": "9.4 - Communication", "uri": "web-messaging.html#web-messaging"}, {"text": "Introduction", "section": "9.4.1 - Cross-document messaging", "uri": "web-messaging.html#introduction-11"}, {"text": "Security", "section": "9.4.2 - Cross-document messaging", "uri": "web-messaging.html#security-postmsg"}, {"text": "Posting messages", "section": "9.4.3 - Cross-document messaging", "uri": "web-messaging.html#posting-messages"}, {"text": "Channel messaging", "section": "9.5 - Communication", "uri": "web-messaging.html#channel-messaging"}, {"text": "Introduction", "section": "9.5.1 - Channel messaging", "uri": "web-messaging.html#introduction-12"}, {"text": "Examples", "section": "9.5.1.1 - Introduction", "uri": "web-messaging.html#examples-5"}, {"text": "Ports as the basis of an object-capability model on the Web", "section": "9.5.1.2 - Introduction", "uri": "web-messaging.html#ports-as-the-basis-of-an-object-capability-model-on-the-web"}, {"text": "Ports as the basis of abstracting out service implementations", "section": "9.5.1.3 - Introduction", "uri": "web-messaging.html#ports-as-the-basis-of-abstracting-out-service-implementations"}, {"text": "Message channels", "section": "9.5.2 - Channel messaging", "uri": "web-messaging.html#message-channels"}, {"text": "Message ports", "section": "9.5.3 - Channel messaging", "uri": "web-messaging.html#message-ports"}, {"text": "Broadcasting to many ports", "section": "9.5.4 - Channel messaging", "uri": "web-messaging.html#broadcasting-to-many-ports"}, {"text": "Ports and garbage collection", "section": "9.5.5 - Channel messaging", "uri": "web-messaging.html#ports-and-garbage-collection"}, {"text": "Broadcasting to other browsing contexts", "section": "9.6 - Communication", "uri": "web-messaging.html#broadcasting-to-other-browsing-contexts"}, {"text": "Web workers", "section": "10", "uri": "workers.html#workers"}, {"text": "Introduction", "section": "10.1 - Web workers", "uri": "workers.html#introduction-13"}, {"text": "Scope", "section": "10.1.1 - Introduction", "uri": "workers.html#scope-2"}, {"text": "Examples", "section": "10.1.2 - Introduction", "uri": "workers.html#examples-6"}, {"text": "A background number-crunching worker", "section": "10.1.2.1 - Examples", "uri": "workers.html#a-background-number-crunching-worker"}, {"text": "Worker used for background I/O", "section": "10.1.2.2 - Examples", "uri": "workers.html#worker-used-for-background-i/o"}, {"text": "Using a JavaScript module as a worker", "section": "10.1.2.3 - Examples", "uri": "workers.html#module-worker-example"}, {"text": "Shared workers introduction", "section": "10.1.2.4 - Examples", "uri": "workers.html#shared-workers-introduction"}, {"text": "Shared state using a shared worker", "section": "10.1.2.5 - Examples", "uri": "workers.html#shared-state-using-a-shared-worker"}, {"text": "Delegation", "section": "10.1.2.6 - Examples", "uri": "workers.html#delegation"}, {"text": "Providing libraries", "section": "10.1.2.7 - Examples", "uri": "workers.html#providing-libraries"}, {"text": "Tutorials", "section": "10.1.3 - Introduction", "uri": "workers.html#tutorials"}, {"text": "Creating a dedicated worker", "section": "10.1.3.1 - Tutorials", "uri": "workers.html#creating-a-dedicated-worker"}, {"text": "Communicating with a dedicated worker", "section": "10.1.3.2 - Tutorials", "uri": "workers.html#communicating-with-a-dedicated-worker"}, {"text": "Shared workers", "section": "10.1.3.3 - Tutorials", "uri": "workers.html#shared-workers"}, {"text": "Infrastructure", "section": "10.2 - Web workers", "uri": "workers.html#infrastructure-2"}, {"text": "The global scope", "section": "10.2.1 - Infrastructure", "uri": "workers.html#the-global-scope"}, {"text": "The WorkerGlobalScope common interface", "section": "10.2.1.1 - The global scope", "uri": "workers.html#the-workerglobalscope-common-interface"}, {"text": "Dedicated workers and the DedicatedWorkerGlobalScope interface", "section": "10.2.1.2 - The global scope", "uri": "workers.html#dedicated-workers-and-the-dedicatedworkerglobalscope-interface"}, {"text": "Shared workers and the SharedWorkerGlobalScope interface", "section": "10.2.1.3 - The global scope", "uri": "workers.html#shared-workers-and-the-sharedworkerglobalscope-interface"}, {"text": "The event loop", "section": "10.2.2 - Infrastructure", "uri": "workers.html#worker-event-loop"}, {"text": "Runtime script errors", "section": "10.2.3 - Infrastructure", "uri": "workers.html#runtime-script-errors-2"}, {"text": "Creating workers", "section": "10.2.4 - Infrastructure", "uri": "workers.html#creating-workers"}, {"text": "Properties present on both Worker and SharedWorker", "section": "10.2.4.1 - Creating workers", "uri": "workers.html#properties-present-on-both-worker-and-sharedworker"}, {"text": "Dedicated workers and the Worker interface", "section": "10.2.4.2 - Creating workers", "uri": "workers.html#dedicated-workers-and-the-worker-interface"}, {"text": "Shared workers and the SharedWorker interface", "section": "10.2.4.3 - Creating workers", "uri": "workers.html#shared-workers-and-the-sharedworker-interface"}, {"text": "Concurrent hardware capabilities", "section": "10.2.5 - Infrastructure", "uri": "workers.html#navigator.hardwareconcurrency"}, {"text": "APIs available to workers", "section": "10.3 - Web workers", "uri": "workers.html#apis-available-to-workers"}, {"text": "The WorkerNavigator interface", "section": "10.3.1 - APIs available to workers", "uri": "workers.html#the-workernavigator-object"}, {"text": "The WorkerLocation interface", "section": "10.3.2 - APIs available to workers", "uri": "workers.html#worker-locations"}, {"text": "Web storage", "section": "11", "uri": "webstorage.html#webstorage"}, {"text": "Introduction", "section": "11.1 - Web storage", "uri": "webstorage.html#introduction-14"}, {"text": "The API", "section": "11.2 - Web storage", "uri": "webstorage.html#storage"}, {"text": "The Storage interface", "section": "11.2.1 - The API", "uri": "webstorage.html#the-storage-interface"}, {"text": "The sessionStorage attribute", "section": "11.2.2 - The API", "uri": "webstorage.html#the-sessionstorage-attribute"}, {"text": "The localStorage attribute", "section": "11.2.3 - The API", "uri": "webstorage.html#the-localstorage-attribute"}, {"text": "The storage event", "section": "11.2.4 - The API", "uri": "webstorage.html#the-storage-event"}, {"text": "The StorageEvent interface", "section": "11.2.4.1 - The storage event", "uri": "webstorage.html#the-storageevent-interface"}, {"text": "Disk space", "section": "11.3 - Web storage", "uri": "webstorage.html#disk-space"}, {"text": "Privacy", "section": "11.4 - Web storage", "uri": "webstorage.html#privacy"}, {"text": "User tracking", "section": "11.4.1 - Privacy", "uri": "webstorage.html#user-tracking"}, {"text": "Sensitivity of data", "section": "11.4.2 - Privacy", "uri": "webstorage.html#sensitivity-of-data"}, {"text": "Security", "section": "11.5 - Web storage", "uri": "webstorage.html#security-storage"}, {"text": "DNS spoofing attacks", "section": "11.5.1 - Security", "uri": "webstorage.html#dns-spoofing-attacks"}, {"text": "Cross-directory attacks", "section": "11.5.2 - Security", "uri": "webstorage.html#cross-directory-attacks"}, {"text": "Implementation risks", "section": "11.5.3 - Security", "uri": "webstorage.html#implementation-risks"}, {"text": "The HTML syntax", "section": "12", "uri": "syntax.html#syntax"}, {"text": "Writing HTML documents", "section": "12.1 - The HTML syntax", "uri": "syntax.html#writing"}, {"text": "The DOCTYPE", "section": "12.1.1 - Writing HTML documents", "uri": "syntax.html#the-doctype"}, {"text": "Elements", "section": "12.1.2 - Writing HTML documents", "uri": "syntax.html#elements-2"}, {"text": "Start tags", "section": "12.1.2.1 - Elements", "uri": "syntax.html#start-tags"}, {"text": "End tags", "section": "12.1.2.2 - Elements", "uri": "syntax.html#end-tags"}, {"text": "Attributes", "section": "12.1.2.3 - Elements", "uri": "syntax.html#attributes-2"}, {"text": "Optional tags", "section": "12.1.2.4 - Elements", "uri": "syntax.html#optional-tags"}, {"text": "Restrictions on content models", "section": "12.1.2.5 - Elements", "uri": "syntax.html#element-restrictions"}, {"text": "Restrictions on the contents of raw text and escapable raw text elements", "section": "12.1.2.6 - Elements", "uri": "syntax.html#cdata-rcdata-restrictions"}, {"text": "Text", "section": "12.1.3 - Writing HTML documents", "uri": "syntax.html#text-2"}, {"text": "Newlines", "section": "12.1.3.1 - Text", "uri": "syntax.html#newlines"}, {"text": "Character references", "section": "12.1.4 - Writing HTML documents", "uri": "syntax.html#character-references"}, {"text": "CDATA sections", "section": "12.1.5 - Writing HTML documents", "uri": "syntax.html#cdata-sections"}, {"text": "Comments", "section": "12.1.6 - Writing HTML documents", "uri": "syntax.html#comments"}, {"text": "Named character references", "section": "12.2 - The HTML syntax", "uri": "named-characters.html#named-character-references"}, {"text": "The XML syntax", "section": "13", "uri": "xhtml.html#the-xhtml-syntax"}, {"text": "Obsolete features", "section": "14", "uri": "obsolete.html#obsolete"}, {"text": "Obsolete but conforming features", "section": "14.1 - Obsolete features", "uri": "obsolete.html#obsolete-but-conforming-features"}, {"text": "Non-conforming features", "section": "14.2 - Obsolete features", "uri": "obsolete.html#non-conforming-features"}, {"text": "IANA considerations", "section": "15", "uri": "iana.html#iana"}, {"text": "text/html", "section": "15.1 - IANA considerations", "uri": "iana.html#text/html"}, {"text": "multipart/x-mixed-replace", "section": "15.2 - IANA considerations", "uri": "iana.html#multipart/x-mixed-replace"}, {"text": "application/xhtml+xml", "section": "15.3 - IANA considerations", "uri": "iana.html#application/xhtml+xml"}, {"text": "text/cache-manifest", "section": "15.4 - IANA considerations", "uri": "iana.html#text/cache-manifest"}, {"text": "text/ping", "section": "15.5 - IANA considerations", "uri": "iana.html#text/ping"}, {"text": "application/microdata+json", "section": "15.6 - IANA considerations", "uri": "iana.html#application/microdata+json"}, {"text": "text/event-stream", "section": "15.7 - IANA considerations", "uri": "iana.html#text/event-stream"}, {"text": "`Ping-From`", "section": "15.8 - IANA considerations", "uri": "iana.html#ping-from"}, {"text": "`Ping-To`", "section": "15.9 - IANA considerations", "uri": "iana.html#ping-to"}, {"text": "`Last-Event-ID`", "section": "15.10 - IANA considerations", "uri": "iana.html#last-event-id"}, {"text": "web+ scheme prefix", "section": "15.11 - IANA considerations", "uri": "iana.html#web+-scheme-prefix"}, {"text": "Index", "section": "", "uri": "indices.html#index"}, {"text": "Elements", "section": " - Index", "uri": "indices.html#elements-3"}, {"text": "Element content categories", "section": " - Index", "uri": "indices.html#element-content-categories"}, {"text": "Attributes", "section": " - Index", "uri": "indices.html#attributes-3"}, {"text": "Element Interfaces", "section": " - Index", "uri": "indices.html#element-interfaces"}, {"text": "All Interfaces", "section": " - Index", "uri": "indices.html#all-interfaces"}, {"text": "Events", "section": " - Index", "uri": "indices.html#events-2"}, {"text": "MIME Types", "section": " - Index", "uri": "indices.html#mime-types-2"}, {"text": "References", "section": "", "uri": "references.html#references"}, {"text": "Acknowledgments", "section": "", "uri": "acknowledgements.html#acknowledgments"}] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# -*- coding: utf-8 -*- | |
from lxml import html | |
import json | |
def strip_span(element): | |
""" | |
Strips the span tag from any element. | |
I've tried to use `strip_elements` from the lxml API but for some reason it strips everything | |
inside the parent, including the text. That's why this function exists. | |
""" | |
li = element.text_content().split() | |
return (' ').join(li[1:]) if len(li) > 1 else (' ').join(li) | |
def form_dict(link): | |
""" | |
Returns a dictionary created with scrapped data from a section link. | |
""" | |
section = link.cssselect('span') | |
section_text = section[0].text if section else '' | |
text = strip_span(link) if section else link.text_content() | |
parent_section = link.getparent().getparent().getparent() | |
parent_section_title = strip_span(parent_section.cssselect('a')[0]) | |
if parent_section.tag == 'li': | |
section_text = '{0} - {1}'.format(section_text, parent_section_title) | |
return dict( | |
uri=link.get('href'), | |
text=text, | |
section=section_text, | |
) | |
def write_json(filename, data): | |
"""Writes the JSON file.""" | |
with open(filename, "w") as json_file: | |
json_file.write(json.dumps(data)) | |
def main(): | |
with open('./output/dev/index.html', 'r') as file: | |
page_html = html.fromstring(file.read()) | |
index = page_html.cssselect('ol.toc li a') | |
write_json( | |
'./search_index.json', | |
[form_dict(link) for link in index] | |
) | |
if __name__ == "__main__": | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment