Lines Matching full:href
25 function showAlert(s, href) {
45 if (href) {
47 link.href = href;
48 link.textContent = href;
83 </script><link href=/style/specification rel=stylesheet><link href=/images/icon rel=icon><style>
172 </style><link href=data:text/css, id=complete rel=stylesheet title="Complete specification"><link href=data:text/css,.impl%20{%20display:%20none;%20}%0Ahtml%20{%20border:%20solid%20yellow;%20}%20.domintro:before%20{%20display:%20none;%20} id=author rel="alternate stylesheet" title="Author documentation only"><link href=data:text/css,.impl%20{%20background:%20%23FFEEEE;%20}%20.domintro:before%20{%20background:%20%23FFEEEE;%20} id=highlight rel="alternate stylesheet" title="Highlight implementation requirements"><link href=status.css rel=stylesheet><script>
191 <header class=head id=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
194 </hgroup><p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
195 <p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
196 <!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
198 <dd><strong><a href=http://www.whatwg.org/specs/web-apps/current-work/multipage/>http://whatwg.org/html5</a></strong></dd>
200 <dd><a href=http://www.whatwg.org/specs/web-apps/current-work/>http://www.whatwg.org/specs/web-apps/current-work/</a></dd>
202 <dd>A4: <a href=http://www.whatwg.org/specs/web-apps/current-work/html5-a4.pdf>http://www.whatwg.org/specs/web-apps/current-work/html5-a4.pdf</a></dd>
203 <dd>Letter: <a href=http://www.whatwg.org/specs/web-apps/current-work/html5-letter.pdf>http://www.whatwg.org/specs/web-apps/current-work/html5-letter.pdf</a></dd>
205 <dd>Twitter messages (non-editorial changes only): <a href=http://twitter.com/WHATWG>http://twitter.com/WHATWG</a></dd>
206 <dd>Commit-Watchers mailing list: <a href=http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org>http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org</a></dd>
207 <dd>Interactive Web interface: <a href=http://html5.org/tools/web-apps-tracker>http://html5.org/tools/web-apps-tracker</a></dd>
208 <dd>Subversion interface: <a href=http://svn.whatwg.org/>http://svn.whatwg.org/</a></dd>
210 <dd>To view the open bugs: <a href="http://www.w3.org/Bugs/Public/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=HTML+WG&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailtype1=exact&email1=ian%40hixie.ch&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0=">HTML5 bug list</a></dd>
212 <dd>To send feedback by e-mail: <a href=http://www.whatwg.org/mailing-list>whatwg@whatwg.org</a></dd>
213 <dd>To view and vote on e-mail feedback: <a href=http://www.whatwg.org/issues/>http://www.whatwg.org/issues/</a></dd>
224 include a <code><a href=#devices>device</a></code> element to enable video conferencing,
234 welcome, please send them to <a href=mailto:whatwg@whatwg.org>whatwg@whatwg.org</a>. Thank
237 <p><a href=http://www.whatwg.org/issues/>Outstanding feedback</a>
239 level of outstanding feedback is <a href=http://www.whatwg.org/issues/data.html>charted</a> to allow
247 call for implementations should join the <a href=/mailing-list>WHATWG mailing list</a> and take part in the
260 <li><a href=#introduction><span class=secno>1 </span>Introduction</a>
262 <li><a href=#is-this-html5?><span class=secno>1.1 </span>Is this HTML5?</a></li>
263 <li><a href=#background><span class=secno>1.2 </span>Background</a></li>
264 <li><a href=#audience><span class=secno>1.3 </span>Audience</a></li>
265 <li><a href
266 <li><a href=#history-1><span class=secno>1.5 </span>History</a></li>
267 <li><a href=#design-notes><span class=secno>1.6 </span>Design notes</a>
269 <li><a href=#serializability-of-script-execution><span class=secno>1.6.1 </span>Serializability of script execution</a></li>
270 <li><a href=#compliance-with-other-specifications><span class=secno>1.6.2 </span>Compliance with other specifications</a></ol></li>
271 <li><a href=#html-vs-xhtml><span class=secno>1.7 </span>HTML vs XHTML</a></li>
272 <li><a href=#structure-of-this-specification><span class=secno>1.8 </span>Structure of this specification</a>
274 <li><a href=#how-to-read-this-specification><span class=secno>1.8.1 </span>How to read this specification</a></li>
275 <li><a href=#typographic-conventions><span class=secno>1.8.2 </span>Typographic conventions</a></ol></li>
276 <li><a href=#a-quick-introduction-to-html><span class=secno>1.9 </span>A quick introduction to HTML</a></li>
277 <li><a href=#conformance-requirements-for-authors><span class=secno>1.10 </span>Conformance requirements for authors</a>
279 <li><a href=#presentational-markup><span class=secno>1.10.1 </span>Presentational markup</a></li>
280 <li><a href=#syntax-errors><span class=secno>1.10.2 </span>Syntax errors</a></li>
281 <li><a href=#restrictions-on-content-models-and-on-attribute-values><span class=secno>1.10.3 </span>Restrictions on content models and on attribute values</a></ol></li>
282 <li><a href=#recommended-reading><span class=secno>1.11 </span>Recommended reading</a></ol></li>
283 <li><a href=#infrastructure><span class=secno>2 </span>Common infrastructure</a>
285 <li><a href=#terminology><span class=secno>2.1 </span>Terminology</a>
287 <li><a href=#resources><span class=secno>2.1.1 </span>Resources</a></li>
288 <li><a href=#xml><span class=secno>2.1.2 </span>XML</a></li>
289 <li><a href=#dom-trees><span class=secno>2.1.3 </span>DOM trees</a></li>
290 <li><a href=#scripting-0><span class=secno>2.1.4 </span>Scripting</a></li>
291 <li><a href=#plugins><span class=secno>2.1.5 </span>Plugins</a></li>
292 <li><a href=#character-encodings><span class=secno>2.1.6 </span>Character encodings</a></ol></li>
293 <li><a href=#conformance-requirements><span class=secno>2.2 </span>Conformance requirements</a>
295 <li><a href=#dependencies><span class=secno>2.2.1 </span>Dependencies</a></li>
296 <li><a href=#extensibility><span class=secno>2.2.2 </span>Extensibility</a></ol></li>
297 <li><a href=#case-sensitivity-and-string-comparison><span class=secno>2.3 </span>Case-sensitivity and string comparison</a></li>
298 <li><a href=#common-microsyntaxes><span class=secno>2.4 </span>Common microsyntaxes</a>
300 <li><a href=#common-parser-idioms><span class=secno>2.4.1 </span>Common parser idioms</a></li>
301 <li><a href=#boolean-attributes><span class=secno>2.4.2 </span>Boolean attributes</a></li>
302 <li><a href=#keywords-and-enumerated-attributes><span class=secno>2.4.3 </span>Keywords and enumerated attributes</a></li>
303 <li><a href=#numbers><span class=secno>2.4.4 </span>Numbers</a>
305 <li><a href=#non-negative-integers><span class=secno>2.4.4.1 </span>Non-negative integers</a></li>
306 <li><a href=#signed-integers><span class=secno>2.4.4.2 </span>Signed integers</a></li>
307 <li><a href=#real-numbers><span class=secno>2.4.4.3 </span>Real numbers</a></li>
308 <li><a href=#percentages-and-dimensions><span class=secno>2.4.4.4 </span>Percentages and lengths</a></li>
309 <li><a href=#lists-of-integers><span class=secno>2.4.4.5 </span>Lists of integers</a></li>
310 <li><a href=#lists-of-dimensions><span class=secno>2.4.4.6 </span>Lists of dimensions</a></ol></li>
311 <li><a href=#dates-and-times><span class=secno>2.4.5 </span>Dates and times</a>
313 <li><a href=#months><span class=secno>2.4.5.1 </span>Months</a></li>
314 <li><a href=#dates><span class=secno>2.4.5.2 </span>Dates</a></li>
315 <li><a href=#times><span class=secno>2.4.5.3 </span>Times</a></li>
316 <li><a href=#local-dates-and-times><span class=secno>2.4.5.4 </span>Local dates and times</a></li>
317 <li><a href=#global-dates-and-times><span class=secno>2.4.5.5 </span>Global dates and times</a></li>
318 <li><a href=#weeks><span class=secno>2.4.5.6 </span>Weeks</a></li>
319 <li><a href=#vaguer-moments-in-time><span class=secno>2.4.5.7 </span>Vaguer moments in time</a></ol></li>
320 <li><a href=#colors><span class=secno>2.4.6 </span>Colors</a></li>
321 <li><a href=#space-separated-tokens><span class=secno>2.4.7 </span>Space-separated tokens</a></li>
322 <li><a href=#comma-separated-tokens><span class=secno>2.4.8 </span>Comma-separated tokens</a></li>
323 <li><a href=#syntax-references><span class=secno>2.4.9 </span>References</a></li>
324 <li><a href=#mq><span class=secno>2.4.10 </span>Media queries</a></ol></li>
325 <li><a href=#urls><span class=secno>2.5 </span>URLs</a>
327 <li><a href=#terminology-0><span class=secno>2.5.1 </span>Terminology</a></li>
328 <li><a href=#dynamic-changes-to-base-urls><span class=secno>2.5.2 </span>Dynamic changes to base URLs</a></li>
329 <li><a href=#interfaces-for-url-manipulation><span class=secno>2.5.3 </span>Interfaces for URL manipulation</a></ol></li>
330 <li><a href=#fetching-resources><span class=secno>2.6 </span>Fetching resources</a>
332 <li><a href=#concept-http-equivalent><span class=secno>2.6.1 </span>Protocol concepts</a></li>
333 <li><a href=#encrypted-http-and-related-security-concerns><span class=secno>2.6.2 </span>Encrypted HTTP and related security concerns</a></li>
334 <li><a href=#content-type-sniffing><span class=secno>2.6.3 </span>Determining the type of a resource</a></ol></li>
335 <li><a href=#common-dom-interfaces><span class=secno>2.7 </span>Common DOM interfaces</a>
337 <li><a href=#reflecting-content-attributes-in-idl-attributes><span class=secno>2.7.1 </span>Reflecting content attributes in IDL attributes</a></li>
338 <li><a href=#collections-0><span class=secno>2.7.2 </span>Collections</a>
340 <li><a href=#htmlcollection-0><span class=secno>2.7.2.1 </span>HTMLCollection</a></li>
341 <li><a href=#htmlallcollection-0><span class=secno>2.7.2.2 </span>HTMLAllCollection</a></li>
342 <li><a href=#htmlformcontrolscollection-0><span class=secno>2.7.2.3 </span>HTMLFormControlsCollection</a></li>
343 <li><a href=#htmloptionscollection-0><span class=secno>2.7.2.4 </span>HTMLOptionsCollection</a></li>
344 <li><a href=#htmlpropertiescollection-0><span class=secno>2.7.2.5 </span>HTMLPropertiesCollection</a></ol></li>
345 <li><a href=#domtokenlist-0><span class=secno>2.7.3 </span>DOMTokenList</a></li>
346 <li><a href=#domsettabletokenlist-0><span class=secno>2.7.4 </span>DOMSettableTokenList</a></li>
347 <li><a href=#safe-passing-of-structured-data><span class=secno>2.7.5 </span>Safe passing of structured data</a></li>
348 <li><a href=#domstringmap-0><span class=secno>2.7.6 </span>DOMStringMap</a></li>
349 <li><a href=#dom-feature-strings><span class=secno>2.7.7 </span>DOM feature strings</a></li>
350 <li><a href=#exceptions><span class=secno>2.7.8 </span>Exceptions</a></li>
351 <li><a href=#garbage-collection><span class=secno>2.7.9 </span>Garbage collection</a></ol></li>
352 <li><a href=#namespaces><span class=secno>2.8 </span>Namespaces</a></ol></li>
353 <li><a href=#dom><span class=secno>3 </span>Semantics, structure, and APIs of HTML documents</a>
355 <li><a href=#documents><span class=secno>3.1 </span>Documents</a>
357 <li><a href=#documents-in-the-dom><span class=secno>3.1.1 </span>Documents in the DOM</a></li>
358 <li><a href=#security-document><span class=secno>3.1.2 </span>Security</a></li>
359 <li><a href=#resource-metadata-management><span class=secno>3.1.3 </span>Resource metadata management</a></li>
360 <li><a href=#dom-tree-accessors><span class=secno>3.1.4 </span>DOM tree accessors</a></li>
361 <li><a href=#creating-documents><span class=secno>3.1.5 </span>Creating documents</a></ol></li>
362 <li><a href=#elements><span class=secno>3.2 </span>Elements</a>
364 <li><a href=#semantics-0><span class=secno>3.2.1 </span>Semantics</a></li>
365 <li><a href=#elements-in-the-dom><span class=secno>3.2.2 </span>Elements in the DOM</a></li>
366 <li><a href=#global-attributes><span class=secno>3.2.3 </span>Global attributes</a>
368 <li><a href=#the-id-attribute><span class=secno>3.2.3.1 </span>The <code>id</code> attribute</a></li>
369 <li><a href=#the-title-attribute><span class=secno>3.2.3.2 </span>The <code>title</code> attribute</a></li>
370 <li><a href=#the-lang-and-xml:lang-attributes><span class=secno>3.2.3.3 </span>The <code title=attr-lang>lang</code> and <code title=attr-xml-lang>xml:lang</code> attributes</a></li>
371 <li><a href=#the-xml:base-attribute-(xml-only)><span class=secno>3.2.3.4 </span>The <code>xml:base</code>
373 <li><a href=#the-dir-attribute><span class=secno>3.2.3.5 </span>The <code>dir</code> attribute</a></li>
374 <li><a href=#classes><span class=secno>3.2.3.6 </span>The <code>class</code> attribute</a></li>
375 <li><a href=#the-style-attribute><span class=secno>3.2.3.7 </span>The <code>style</code> attribute</a></li>
376 <li><a href=#embedding-custom-non-visible-data><span class=secno>3.2.3.8 </span>Embedding custom non-visible data</a></ol></li>
377 <li><a href=#element-definitions><span class=secno>3.2.4 </span>Element definitions</a>
379 <li><a href=#attributes><span class=secno>3.2.4.1 </span>Attributes</a></ol></li>
380 <li><a href=#content-models><span class=secno>3.2.5 </span>Content models</a>
382 <li><a href=#kinds-of-content><span class=secno>3.2.5.1 </span>Kinds of content</a>
384 <li><a href=#metadata-content-0><span class=secno>3.2.5.1.1 </span>Metadata content</a></li>
385 <li><a href=#flow-content-0><span class=secno>3.2.5.1.2 </span>Flow content</a></li>
386 <li><a href=#sectioning-content-0><span class=secno>3.2.5.1.3 </span>Sectioning content</a></li>
387 <li><a href=#heading-content-0><span class=secno>3.2.5.1.4 </span>Heading content</a></li>
388 <li><a href=#phrasing-content-0><span class=secno>3.2.5.1.5 </span>Phrasing content</a></li>
389 <li><a href=#embedded-content-0><span class=secno>3.2.5.1.6 </span>Embedded content</a></li>
390 <li><a href=#interactive-content-0><span class=secno>3.2.5.1.7 </span>Interactive content</a></ol></li>
391 <li><a href=#transparent-content-models><span class=secno>3.2.5.2 </span>Transparent content models</a></li>
392 <li><a href=#paragraphs><span class=secno>3.2.5.3 </span>Paragraphs</a></ol></li>
393 <li><a href=#annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.6 </span>Annotations for assistive technology products (ARIA)</a></ol></li>
394 <li><a href=#apis-in-html-documents><span class=secno>3.3 </span>APIs in HTML documents</a></li>
395 <li><a href=#interactions-with-xpath-and-xslt><span class=secno>3.4 </span>Interactions with XPath and XSLT</a></li>
396 <li><a href=#dynamic-markup-insertion><span class=secno>3.5 </span>Dynamic markup insertion</a>
398 <li><a href=#opening-the-input-stream><span class=secno>3.5.1 </span>Opening the input stream</a></li>
399 <li><a href=#closing-the-input-stream><span class=secno>3.5.2 </span>Closing the input stream</a></li>
400 <li><a href=#document.write()><span class=secno>3.5.3 </span><code title=dom-document-write>document.write()</code></a></li>
401 <li><a href=#document.writeln()><span class=secno>3.5.4 </span><code title=dom-document-writeln>document.writeln()</code></a></li>
402 <li><a href=#innerhtml><span class=secno>3.5.5 </span><code title=dom-innerHTML>innerHTML</code></a></li>
403 <li><a href=#outerhtml><span class=secno>3.5.6 </span><code title=dom-outerHTML>outerHTML</code></a></li>
404 <li><a href=#insertadjacenthtml()><span class=secno>3.5.7 </span><code title=dom-insertAdjacentHTML>insertAdjacentHTML()</code></a></ol></ol></li>
405 <li><a href=#semantics><span class=secno>4 </span>The elements of HTML</a>
407 <li><a href=#the-root-element><span class=secno>4.1 </span>The root element</a>
409 <li><a href=#the-html-element-0><span class=secno>4.1.1 </span>The <code>html</code> element</a></ol></li>
410 <li><a href=#document-metadata><span class=secno>4.2 </span>Document metadata</a>
412 <li><a href=#the-head-element-0><span class=secno>4.2.1 </span>The <code>head</code> element</a></li>
413 <li><a href=#the-title-element-0><span class=secno>4.2.2 </span>The <code>title</code> element</a></li>
414 <li><a href=#the-base-element><span class=secno>4.2.3 </span>The <code>base</code> element</a></li>
415 <li><a href=#the-link-element><span class=secno>4.2.4 </span>The <code>link</code> element</a></li>
416 <li><a href=#meta><span class=secno>4.2.5 </span>The <code>meta</code> element</a>
418 <li><a href=#standard-metadata-names><span class=secno>4.2.5.1 </span>Standard metadata names</a></li>
419 <li><a href=#other-metadata-names><span class=secno>4.2.5.2 </span>Other metadata names</a></li>
420 <li><a href=#pragma-directives><span class=secno>4.2.5.3 </span>Pragma directives</a></li>
421 <li><a href=#other-pragma-directives><span class=secno>4.2.5.4 </span>Other pragma directives</a></li>
422 <li><a href=#charset><span class=secno>4.2.5.5 </span>Specifying the document's character encoding</a></ol></li>
423 <li><a href=#the-style-element><span class=secno>4.2.6 </span>The <code>style</code> element</a></li>
424 <li><a href=#styling><span class=secno>4.2.7 </span>Styling</a></ol></li>
425 <li><a href=#scripting-1><span class=secno>4.3 </span>Scripting</a>
427 <li><a href=#script><span class=secno>4.3.1 </span>The <code>script</code> element</a>
429 <li><a href=#scriptingLanguages><span class=secno>4.3.1.1 </span>Scripting languages</a></li>
430 <li><a href=#restrictions-for-contents-of-script-elements><span class=secno>4.3.1.2 </span>Restrictions for contents of <code>script</code> elements</a></li>
431 <li><a href=#inline-documentation-for-external-scripts><span class=secno>4.3.1.3 </span>Inline documentation for external scripts</a></ol></li>
432 <li><a href=#the-noscript-element><span class=secno>4.3.2 </span>The <code>noscript</code> element</a></ol></li>
433 <li><a href=#sections><span class=secno>4.4 </span>Sections</a>
435 <li><a href=#the-body-element-0><span class=secno>4.4.1 </span>The <code>body</code> element</a></li>
436 <li><a href=#the-section-element><span class=secno>4.4.2 </span>The <code>section</code> element</a></li>
437 <li><a href=#the-nav-element><span class=secno>4.4.3 </span>The <code>nav</code> element</a></li>
438 <li><a href=#the-article-element><span class=secno>4.4.4 </span>The <code>article</code> element</a></li>
439 <li><a href=#the-aside-element><span class=secno>4.4.5 </span>The <code>aside</code> element</a></li>
440 <li><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements><span class=secno>4.4.6 </span>The <code>h1</code>, <code>h2</code>,
444 <li><a href=#the-hgroup-element><span class=secno>4.4.7 </span>The <code>hgroup</code> element</a></li>
445 <li><a href=#the-header-element><span class=secno>4.4.8 </span>The <code>header</code> element</a></li>
446 <li><a href=#the-footer-element><span class=secno>4.4.9 </span>The <code>footer</code> element</a></li>
447 <li><a href=#the-address-element><span class=secno>4.4.10 </span>The <code>address</code> element</a></li>
448 <li><a href=#headings-and-sections><span class=secno>4.4.11 </span>Headings and sections</a>
450 <li><a href=#outlines><span class=secno>4.4.11.1 </span>Creating an outline</a></ol></ol></li>
451 <li><a href=#grouping-content><span class=secno>4.5 </span>Grouping content</a>
453 <li><a href=#the-p-element><span class=secno>4.5.1 </span>The <code>p</code> element</a></li>
454 <li><a href=#the-hr-element><span class=secno>4.5.2 </span>The <code>hr</code> element</a></li>
455 <li><a href=#the-pre-element><span class=secno>4.5.3 </span>The <code>pre</code> element</a></li>
456 href=#the-blockquote-element><span class=secno>4.5.4 </span>The <code>blockquote</code> element</a></li>
457 <li><a href=#the-ol-element><span class=secno>4.5.5 </span>The <code>ol</code> element</a></li>
458 <li><a href=#the-ul-element><span class=secno>4.5.6 </span>The <code>ul</code> element</a></li>
459 <li><a href=#the-li-element><span class=secno>4.5.7 </span>The <code>li</code> element</a></li>
460 <li><a href=#the-dl-element><span class=secno>4.5.8 </span>The <code>dl</code> element</a></li>
461 <li><a href=#the-dt-element><span class=secno>4.5.9 </span>The <code>dt</code> element</a></li>
462 <li><a href=#the-dd-element><span class=secno>4.5.10 </span>The <code>dd</code> element</a></li>
463 <li><a href=#the-figure-element><span class=secno>4.5.11 </span>The <code>figure</code> element</a></li>
464 <li><a href=#the-figcaption-element><span class=secno>4.5.12 </span>The <code>figcaption</code> element</a></li>
465 <li><a href=#the-div-element><span class=secno>4.5.13 </span>The <code>div</code> element</a></ol></li>
466 <li><a href=#text-level-semantics><span class=secno>4.6 </span>Text-level semantics</a>
468 <li><a href=#the-a-element><span class=secno>4.6.1 </span>The <code>a</code> element</a></li>
469 <li><a href=#the-em-element><span class=secno>4.6.2 </span>The <code>em</code> element</a></li>
470 <li><a href=#the-strong-element><span class=secno>4.6.3 </span>The <code>strong</code> element</a></li>
471 <li><a href=#the-small-element><span class=secno>4.6.4 </span>The <code>small</code> element</a></li>
472 <li><a href=#the-cite-element><span class=secno>4.6.5 </span>The <code>cite</code> element</a></li>
473 <li><a href=#the-q-element><span class=secno>4.6.6 </span>The <code>q</code> element</a></li>
474 <li><a href=#the-dfn-element><span class=secno>4.6.7 </span>The <code>dfn</code> element</a></li>
475 <li><a href=#the-abbr-element><span class=secno>4.6.8 </span>The <code>abbr</code> element</a></li>
476 <li><a href=#the-time-element><span class=secno>4.6.9 </span>The <code>time</code> element</a></li>
477 <li><a href=#the-code-element><span class=secno>4.6.10 </span>The <code>code</code> element</a></li>
478 <li><a href=#the-var-element><span class=secno>4.6.11 </span>The <code>var</code> element</a></li>
479 <li><a href=#the-samp-element><span class=secno>4.6.12 </span>The <code>samp</code> element</a></li>
480 <li><a href=#the-kbd-element><span class=secno>4.6.13 </span>The <code>kbd</code> element</a></li>
481 <li><a href=#the-sub-and-sup-elements><span class=secno>4.6.14 </span>The <code>sub</code> and <code>sup</code> elements</a></li>
482 <li><a href=#the-i-element><span class=secno>4.6.15 </span>The <code>i</code> element</a></li>
483 <li><a href=#the-b-element><span class=secno>4.6.16 </span>The <code>b</code> element</a></li>
484 <li><a href=#the-mark-element><span class=secno>4.6.17 </span>The <code>mark</code> element</a></li>
485 <li><a href=#the-ruby-element><span class=secno>4.6.18 </span>The <code>ruby</code> element</a></li>
486 <li><a href=#the-rt-element><span class=secno>4.6.19 </span>The <code>rt</code> element</a></li>
487 <li><a href=#the-rp-element><span class=secno>4.6.20 </span>The <code>rp</code> element</a></li>
488 <li><a href=#the-bdo-element><span class=secno>4.6.21 </span>The <code>bdo</code> element</a></li>
489 <li><a href=#the-span-element><span class=secno>4.6.22 </span>The <code>span</code> element</a></li>
490 <li><a href=#the-br-element><span class=secno>4.6.23 </span>The <code>br</code> element</a></li>
491 <li><a href=#the-wbr-element><span class=secno>4.6.24 </span>The <code>wbr</code> element</a></li>
492 <li><a href=#usage-summary><span class=secno>4.6.25 </span>Usage summary</a></ol></li>
493 <li><a href=#edits><span class=secno>4.7 </span>Edits</a>
495 <li><a href=#the-ins-element><span class=secno>4.7.1 </span>The <code>ins</code> element</a></li>
496 <li><a href=#the-del-element><span class=secno>4.7.2 </span>The <code>del</code> element</a></li>
497 <li><a href=#attributes-common-to-ins-and-del-elements><span class=secno>4.7.3 </span>Attributes common to <code>ins</code> and <code>del</code> elements</a></li>
498 <li><a href=#edits-and-paragraphs><span class=secno>4.7.4 </span>Edits and paragraphs</a></li>
499 <li><a href=#edits-and-lists><span class=secno>4.7.5 </span>Edits and lists</a></ol></li>
500 <li><a href=#embedded-content-1><span class=secno>4.8 </span>Embedded content</a>
502 <li><a href=#the-img-element><span class=secno>4.8.1 </span>The <code>img</code> element</a>
504 <li><a href=#alt><span class=secno>4.8.1.1 </span>Requirements for providing text to act as an alternative for images</a>
506 <li><a href=#a-link-or-button-containing-nothing-but-the-image><span class=secno>4.8.1.1.1 </span>A link or button containing nothing but the image</a></li>
507 <li><a href=#a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts,-diagrams,-graphs,-maps,-illustrations><span class=secno>4.8.1.1.2 </span>A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations</a></li>
508 <li><a href=#a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons,-logos><span class=secno>4.8.1.1.3 </span>A short phrase or label with an alternative graphical representation: icons, logos</a></li>
509 <li><a href=#text-that-has-been-rendered-to-a-graphic-for-typographical-effect><span class=secno>4.8.1.1.4 </span>Text that has been rendered to a graphic for typographical effect</a></li>
510 <li><a href=#a-graphical-representation-of-some-of-the-surrounding-text><span class=secno>4.8.1.1.5 </span>A graphical representation of some of the surrounding text</a></li>
511 <li><a href="#a-purely-decorative-image-that-doesn't-add-any-information"><span class=secno>4.8.1.1.6 </span>A purely decorative image that doesn't add any information</a></li>
512 <li><a href=#a-group-of-images-that-form-a-single-larger-picture-with-no-links><span class=secno>4.8.1.1.7 </span>A group of images that form a single larger picture with no links</a></li>
513 <li><a href=#a-group-of-images-that-form-a-single-larger-picture-with-links><span class=secno>4.8.1.1.8 </span>A group of images that form a single larger picture with links</a></li>
514 <li><a href=#a-key-part-of-the-content><span class=secno>4.8.1.1.9 </span>A key part of the content</a></li>
515 <li><a href=#an-image-not-intended-for-the-user><span class=secno>4.8.1.1.10 </span>An image not intended for the user</a></li>
516 <li><a href=#an-image-in-an-e-mail-or-private-document-intended-for-a-specific-person-who-is-known-to-be-able-to-view-images><span class=secno>4.8.1.1.11 </span>An image in an e-mail or private document intended for a specific person who is known to be able to view images</a></li>
517 <li><a href=#general-guidelines><span class=secno>4.8.1.1.12 </span>General guidelines</a></li>
518 <li><a href=#guidance-for-markup-generators><span class=secno>4.8.1.1.13 </span>Guidance for markup generators</a></li>
519 <li><a href=#guidance-for-conformance-checkers><span class=secno>4.8.1.1.14 </span>Guidance for conformance checkers</a></ol></ol></li>
520 <li><a href=#the-iframe-element><span class=secno>4.8.2 </span>The <code>iframe</code> element</a></li>
521 <li><a href=#the-embed-element><span class=secno>4.8.3 </span>The <code>embed</code> element</a></li>
522 <li><a href=#the-object-element><span class=secno>4.8.4 </span>The <code>object</code> element</a></li>
523 <li><a href=#the-param-element><span class=secno>4.8.5 </span>The <code>param</code> element</a></li>
524 <li><a href=#video><span class=secno>4.8.6 </span>The <code>video</code> element</a></li>
525 <li><a href=#audio><span class=secno>4.8.7 </span>The <code>audio</code> element</a></li>
526 <li><a href=#the-source-element><span class=secno>4.8.8 </span>The <code>source</code> element</a></li>
527 <li><a href=#the-track-element><span class=secno>4.8.9 </span>The <code>track</code> element</a></li>
528 <li><a href=#media-elements><span class=secno>4.8.10 </span>Media elements</a>
530 <li><a href=#error-codes><span class=secno>4.8.10.1 </span>Error codes</a></li>
531 <li><a href=#location-of-the-media-resource><span class=secno>4.8.10.2 </span>Location of the media resource</a></li>
532 <li><a href=#mime-types><span class=secno>4.8.10.3 </span>MIME types</a></li>
533 <li><a href=#network-states><span class=secno>4.8.10.4 </span>Network states</a></li>
534 <li><a href=#loading-the-media-resource><span class=secno>4.8.10.5 </span>Loading the media resource</a></li>
535 <li><a href=#offsets-into-the-media-resource><span class=secno>4.8.10.6 </span>Offsets into the media resource</a></li>
536 <li><a href=#the-ready-states><span class=secno>4.8.10.7 </span>The ready states</a></li>
537 <li><a href=#playing-the-media-resource><span class=secno>4.8.10.8 </span>Playing the media resource</a></li>
538 <li><a href=#seeking><span class=secno>4.8.10.9 </span>Seeking</a></li>
539 <li><a href=#timed-tracks><span class=secno>4.8.10.10 </span>Timed tracks</a>
541 <li><a href=#timed-track-model><span class=secno>4.8.10.10.1 </span>Timed track model</a></li>
542 <li><a href=#sourcing-in-band-timed-tracks><span class=secno>4.8.10.10.2 </span>Sourcing in-band timed tracks</a></li>
543 <li><a href=#sourcing-out-of-band-timed-tracks><span class=secno>4.8.10.10.3 </span>Sourcing out-of-band timed tracks</a></li>
544 <li><a href=#guidelines-for-exposing-cues-in-various-formats-as-timed-track-cues><span class=secno>4.8.10.10.4 </span>Guidelines for exposing cues in various formats as
546 <li><a href=#timed-track-api><span class=secno>4.8.10.10.5 </span>Timed track API</a></li>
547 <li><a href=#cue-events><span class=secno>4.8.10.10.6 </span>Event definitions</a></ol></li>
548 <li><a href=#websrt><span class=secno>4.8.10.11 </span>WebSRT</a>
550 <li><a href=#syntax-0><span class=secno>4.8.10.11.1 </span>Syntax</a></li>
551 <li><a href=#parsing-0><span class=secno>4.8.10.11.2 </span>Parsing</a></ol></li>
552 <li><a href=#user-interface><span class=secno>4.8.10.12 </span>User interface</a></li>
553 <li><a href=#time-ranges><span class=secno>4.8.10.13 </span>Time ranges</a></li>
554 <li><a href=#mediaevents><span class=secno>4.8.10.14 </span>Event summary</a></li>
555 <li><a href=#security-and-privacy-considerations><span class=secno>4.8.10.15 </span>Security and privacy considerations</a></ol></li>
556 <li><a href=#the-canvas-element><span class=secno>4.8.11 </span>The <code>canvas</code> element</a>
558 <li><a href=#2dcontext><span class=secno>4.8.11.1 </span>The 2D context</a>
560 <li><a href=#the-canvas-state><span class=secno>4.8.11.1.1 </span>The canvas state</a></li>
561 <li><a href=#transformations><span class=secno>4.8.11.1.2 </span>Transformations</a></li>
562 <li><a href=#compositing><span class=secno>4.8.11.1.3 </span>Compositing</a></li>
563 <li><a href=#colors-and-styles><span class=secno>4.8.11.1.4 </span>Colors and styles</a></li>
564 <li><a href=#line-styles><span class=secno>4.8.11.1.5 </span>Line styles</a></li>
565 <li><a href=#shadows><span class=secno>4.8.11.1.6 </span>Shadows</a></li>
566 <li><a href=#simple-shapes-(rectangles)><span class=secno>4.8.11.1.7 </span>Simple shapes (rectangles)</a></li>
567 <li><a href=#complex-shapes-(paths)><span class=secno>4.8.11.1.8 </span>Complex shapes (paths)</a></li>
568 <li><a href=#focus-management-0><span class=secno>4.8.11.1.9 </span>Focus management</a></li>
569 <li><a href=#text-0><span class=secno>4.8.11.1.10 </span>Text</a></li>
570 <li><a href=#images><span class=secno>4.8.11.1.11 </span>Images</a></li>
571 <li><a href=#pixel-manipulation><span class=secno>4.8.11.1.12 </span>Pixel manipulation</a></li>
572 <li><a href=#drawing-model><span class=secno>4.8.11.1.13 </span>Drawing model</a></li>
573 <li><a href=#examples><span class=secno>4.8.11.1.14 </span>Examples</a></ol></li>
574 <li><a href=#color-spaces-and-color-correction><span class=secno>4.8.11.2 </span>Color spaces and color correction</a></li>
575 <li><a href=#security-with-canvas-elements><span class=secno>4.8.11.3 </span>Security with <code>canvas</code> elements</a></ol></li>
576 <li><a href=#the-map-element><span class=secno>4.8.12 </span>The <code>map</code> element</a></li>
577 <li><a href=#the-area-element><span class=secno>4.8.13 </span>The <code>area</code> element</a></li>
578 <li><a href=#image-maps><span class=secno>4.8.14 </span>Image maps</a>
580 <li><a href=#authoring><span class=secno>4.8.14.1 </span>Authoring</a></li>
581 <li><a href=#processing-model><span class=secno>4.8.14.2 </span>Processing model</a></ol></li>
582 <li><a href=#mathml><span class=secno>4.8.15 </span>MathML</a></li>
583 <li><a href=#svg-0><span class=secno>4.8.16 </span>SVG</a></li>
584 <li><a href=#dimension-attributes><span class=secno>4.8.17 </span>Dimension attributes</a></ol></li>
585 <li><a href=#tabular-data><span class=secno>4.9 </span>Tabular data</a>
587 <li><a href=#the-table-element><span class=secno>4.9.1 </span>The <code>table</code> element</a></li>
588 <li><a href=#the-caption-element><span class=secno>4.9.2 </span>The <code>caption</code> element</a></li>
589 <li><a href=#the-colgroup-element><span class=secno>4.9.3 </span>The <code>colgroup</code> element</a></li>
590 <li><a href=#the-col-element><span class=secno>4.9.4 </span>The <code>col</code> element</a></li>
591 <li><a href=#the-tbody-element><span class=secno>4.9.5 </span>The <code>tbody</code> element</a></li>
592 <li><a href=#the-thead-element><span class=secno>4.9.6 </span>The <code>thead</code> element</a></li>
593 <li><a href=#the-tfoot-element><span class=secno>4.9.7 </span>The <code>tfoot</code> element</a></li>
594 <li><a href=#the-tr-element><span class=secno>4.9.8 </span>The <code>tr</code> element</a></li>
595 <li><a href=#the-td-element><span class=secno>4.9.9 </span>The <code>td</code> element</a></li>
596 <li><a href=#the-th-element><span class=secno>4.9.10 </span>The <code>th</code> element</a></li>
597 <li><a href=#attributes-common-to-td-and-th-elements><span class=secno>4.9.11 </span>Attributes common to <code>td</code> and <code>th</code> elements</a></li>
598 <li><a href=#processing-model-0><span class=secno>4.9.12 </span>Processing model</a>
600 <li><a href=#forming-a-table><span class=secno>4.9.12.1 </span>Forming a table</a></li>
601 <li><a href=#header-and-data-cell-semantics><span class=secno>4.9.12.2 </span>Forming relationships between data cells and header cells</a></ol></li>
602 <li><a href=#examples-0><span class=secno>4.9.13 </span>Examples</a></ol></li>
603 <li><a href=#forms><span class=secno>4.10 </span>Forms</a>
605 <li><a href=#introduction-0><span class=secno>4.10.1 </span>Introduction</a>
607 <li><a href="#writing-a-form's-user-interface"><span class=secno>4.10.1.1 </span>Writing a form's user interface</a></li>
608 <li><a href=#implementing-the-server-side-processing-for-a-form><span class=secno>4.10.1.2 </span>Implementing the server-side processing for a form</a></li>
609 <li><a href=#configuring-a-form-to-communicate-with-a-server><span class=secno>4.10.1.3 </span>Configuring a form to communicate with a server</a></li>
610 <li><a href=#client-side-form-validation><span class=secno>4.10.1.4 </span>Client-side form validation</a></ol></li>
611 <li><a href=#categories><span class=secno>4.10.2 </span>Categories</a></li>
612 <li><a href=#the-form-element><span class=secno>4.10.3 </span>The <code>form</code> element</a></li>
613 <li><a href=#the-fieldset-element><span class=secno>4.10.4 </span>The <code>fieldset</code> element</a></li>
614 <li><a href=#the-legend-element><span class=secno>4.10.5 </span>The <code>legend</code> element</a></li>
615 <li><a href=#the-label-element><span class=secno>4.10.6 </span>The <code>label</code> element</a></li>
616 <li><a href
618 <li><a href=#states-of-the-type-attribute><span class=secno>4.10.7.1 </span>States of the <code title=attr-input-type>type</code> attribute</a>
620 <li><a href=#hidden-state><span class=secno>4.10.7.1.1 </span>Hidden state</a></li>
621 <li><a href=#text-state-and-search-state><span class=secno>4.10.7.1.2 </span>Text state and Search state</a></li>
622 <li><a href=#telephone-state><span class=secno>4.10.7.1.3 </span>Telephone state</a></li>
623 <li><a href=#url-state><span class=secno>4.10.7.1.4 </span>URL state</a></li>
624 <li><a href=#e-mail-state><span class=secno>4.10.7.1.5 </span>E-mail state</a></li>
625 <li><a href=#password-state><span class=secno>4.10.7.1.6 </span>Password state</a></li>
626 <li><a href=#date-and-time-state><span class=secno>4.10.7.1.7 </span>Date and Time state</a></li>
627 <li><a href=#date-state><span class=secno>4.10.7.1.8 </span>Date state</a></li>
628 <li><a href=#month-state><span class=secno>4.10.7.1.9 </span>Month state</a></li>
629 <li><a href=#week-state><span class=secno>4.10.7.1.10 </span>Week state</a></li>
630 <li><a href=#time-state><span class=secno>4.10.7.1.11 </span>Time state</a></li>
631 <li><a href=#local-date-and-time-state><span class=secno>4.10.7.1.12 </span>Local Date and Time state</a></li>
632 <li><a href=#number-state><span class=secno>4.10.7.1.13 </span>Number state</a></li>
633 <li><a href=#range-state><span class=secno>4.10.7.1.14 </span>Range state</a></li>
634 <li><a href=#color-state><span class=secno>4.10.7.1.15 </span>Color state</a></li>
635 <li><a href=#checkbox-state><span class=secno>4.10.7.1.16 </span>Checkbox state</a></li>
636 <li><a href=#radio-button-state><span class=secno>4.10.7.1.17 </span>Radio Button state</a></li>
637 <li><a href=#file-upload-state><span class=secno>4.10.7.1.18 </span>File Upload state</a></li>
638 <li><a href=#submit-button-state><span class=secno>4.10.7.1.19 </span>Submit Button state</a></li>
639 <li><a href=#image-button-state><span class=secno>4.10.7.1.20 </span>Image Button state</a></li>
640 <li><a href=#reset-button-state><span class=secno>4.10.7.1.21 </span>Reset Button state</a></li>
641 <li><a href=#button-state><span class=secno>4.10.7.1.22 </span>Button state</a></ol></li>
642 <li><a href=#common-input-element-attributes><span class=secno>4.10.7.2 </span>Common <code>input</code> element attributes</a>
644 <li><a href=#the-autocomplete-attribute><span class=secno>4.10.7.2.1 </span>The <code title=attr-input-autocomplete>autocomplete</code> attribute</a></li>
645 <li><a href=#the-list-attribute><span class=secno>4.10.7.2.2 </span>The <code title=attr-input-list>list</code> attribute</a></li>
646 <li><a href=#the-readonly-attribute><span class=secno>4.10.7.2.3 </span>The <code title=attr-input-readonly>readonly</code> attribute</a></li>
647 <li><a href=#the-size-attribute><span class=secno>4.10.7.2.4 </span>The <code title=attr-input-size>size</code> attribute</a></li>
648 <li><a href=#the-required-attribute><span class=secno>4.10.7.2.5 </span>The <code title=attr-input-required>required</code> attribute</a></li>
649 <li><a href=#the-multiple-attribute><span class=secno>4.10.7.2.6 </span>The <code title=attr-input-multiple>multiple</code> attribute</a></li>
650 <li><a href=#the-maxlength-attribute><span class=secno>4.10.7.2.7 </span>The <code title=attr-input-maxlength>maxlength</code> attribute</a></li>
651 <li><a href=#the-pattern-attribute><span class=secno>4.10.7.2.8 </span>The <code title=attr-input-pattern>pattern</code> attribute</a></li>
652 <li><a href=#the-min-and-max-attributes><span class=secno>4.10.7.2.9 </span>The <code title=attr-input-min>min</code> and <code title=attr-input-max>max</code> attributes</a></li>
653 <li><a href=#the-step-attribute><span class=secno>4.10.7.2.10 </span>The <code title=attr-input-step>step</code> attribute</a></li>
654 <li><a href=#the-placeholder-attribute><span class=secno>4.10.7.2.11 </span>The <code title=attr-input-placeholder>placeholder</code> attribute</a></ol></li>
655 <li><a href=#common-input-element-apis><span class=secno>4.10.7.3 </span>Common <code>input</code> element APIs</a></li>
656 <li><a href=#common-event-behaviors><span class=secno>4.10.7.4 </span>Common event behaviors</a></ol></li>
657 <li><a href=#the-button-element><span class=secno>4.10.8 </span>The <code>button</code> element</a></li>
658 <li><a href=#the-select-element><span class=secno>4.10.9 </span>The <code>select</code> element</a></li>
659 <li><a href=#the-datalist-element><span class=secno>4.10.10 </span>The <code>datalist</code> element</a></li>
660 <li><a href=#the-optgroup-element><span class=secno>4.10.11 </span>The <code>optgroup</code> element</a></li>
661 <li><a href=#the-option-element><span class=secno>4.10.12 </span>The <code>option</code> element</a></li>
662 <li><a href=#the-textarea-element><span class=secno>4.10.13 </span>The <code>textarea</code> element</a></li>
663 <li><a href=#the-keygen-element><span class=secno>4.10.14 </span>The <code>keygen</code> element</a></li>
664 <li><a href=#the-output-element><span class=secno>4.10.15 </span>The <code>output</code> element</a></li>
665 <li><a href=#the-progress-element><span class=secno>4.10.16 </span>The <code>progress</code> element</a></li>
666 <li><a href=#the-meter-element><span class=secno>4.10.17 </span>The <code>meter</code> element</a></li>
667 <li><a href=#association-of-controls-and-forms><span class=secno>4.10.18 </span>Association of controls and forms</a></li>
668 <li><a href=#attributes-common-to-form-controls><span class=secno>4.10.19 </span>Attributes common to form controls</a>
670 <li><a href=#naming-form-controls><span class=secno>4.10.19.1 </span>Naming form controls</a></li>
671 <li><a href=#enabling-and-disabling-form-controls><span class=secno>4.10.19.2 </span>Enabling and disabling form controls</a></li>
672 <li><a href="#a-form-control's-value"><span class=secno>4.10.19.3 </span>A form control's value</a></li>
673 <li><a href=#autofocusing-a-form-control><span class=secno>4.10.19.4 </span>Autofocusing a form control</a></li>
674 <li><a href=#limiting-user-input-length><span class=secno>4.10.19.5 </span>Limiting user input length</a></li>
675 <li><a href=#form-submission-0><span class=secno>4.10.19.6 </span>Form submission</a></ol></li>
676 <li><a href=#constraints><span class=secno>4.10.20 </span>Constraints</a>
678 <li><a href=#definitions><span class=secno>4.10.20.1 </span>Definitions</a></li>
679 <li><a href=#constraint-validation><span class=secno>4.10.20.2 </span>Constraint validation</a></li>
680 <li><a href=#the-constraint-validation-api><span class=secno>4.10.20.3 </span>The constraint validation API</a></li>
681 <li><a href=#security-forms><span class=secno>4.10.20.4 </span>Security</a></ol></li>
682 <li><a href=#form-submission><span class=secno>4.10.21 </span>Form submission</a>
684 <li><a href=#introduction-1><span class=secno>4.10.21.1 </span>Introduction</a></li>
685 <li><a href=#implicit-submission><span class=secno>4.10.21.2 </span>Implicit submission</a></li>
686 <li><a href=#form-submission-algorithm><span class=secno>4.10.21.3 </span>Form submission algorithm</a></li>
687 <li><a href=#url-encoded-form-data><span class=secno>4.10.21.4 </span>URL-encoded form data</a></li>
688 <li><a href=#multipart-form-data><span class=secno>4.10.21.5 </span>Multipart form data</a></li>
689 <li><a href=#plain-text-form-data><span class=secno>4.10.21.6 </span>Plain text form data</a></ol></li>
690 <li><a href=#resetting-a-form><span class=secno>4.10.22 </span>Resetting a form</a></li>
691 <li><a href=#event-dispatch><span class=secno>4.10.23 </span>Event dispatch</a></ol></li>
692 <li><a href=#interactive-elements><span class=secno>4.11 </span>Interactive elements</a>
694 <li><a href=#the-details-element><span class=secno>4.11.1 </span>The <code>details</code> element</a></li>
695 <li><a href=#the-summary-element><span class=secno>4.11.2 </span>The <code>summary</code> element</a></li>
696 <li><a href=#the-command><span class=secno>4.11.3 </span>The <code>command</code> element</a></li>
697 <li><a href=#menus><span class=secno>4.11.4 </span>The <code>menu</code> element</a>
699 <li><a href=#menus-intro><span class=secno>4.11.4.1 </span>Introduction</a></li>
700 <li><a href=#building-menus-and-toolbars><span class=secno>4.11.4.2 </span>Building menus and toolbars</a></li>
701 <li><a href=#context-menus><span class=secno>4.11.4.3 </span>Context menus</a></li>
702 <li><a href=#toolbars><span class=secno>4.11.4.4 </span>Toolbars</a></ol></li>
703 <li><a href=#commands><span class=secno>4.11.5 </span>Commands</a>
705 <li><a href=#using-the-a-element-to-define-a-command><span class=secno>4.11.5.1 </span>Using the <code>a</code> element to define a command</a></li>
706 <li><a href=#using-the-button-element-to-define-a-command><span class=secno>4.11.5.2 </span>Using the <code>button</code> element to define a command</a></li>
707 <li><a href=#using-the-input-element-to-define-a-command><span class=secno>4.11.5.3 </span>Using the <code>input</code> element to define a command</a></li>
708 <li><a href=#using-the-option-element-to-define-a-command><span class=secno>4.11.5.4 </span>Using the <code>option</code> element to define a command</a></li>
709 <li><a href=#using-the-command-element-to-define-a-command><span class=secno>4.11.5.5 </span>Using the <code>command</code> element to define
711 <li><a href=#using-the-accesskey-attribute-on-a-label-element-to-define-a-command><span class=secno>4.11.5.6 </span>Using the <code title=attr-accesskey>accesskey</code> attribute on a <code>label</code> element to define a command</a></li>
712 <li><a href=#using-the-accesskey-attribute-on-a-legend-element-to-define-a-command><span class=secno>4.11.5.7 </span>Using the <code title=attr-accesskey>accesskey</code> attribute on a <code>legend</code> element to define a command</a></li>
713 <li><a href=#using-the-accesskey-attribute-to-define-a-command-on-other-elements><span class=secno>4.11.5.8 </span>Using the <code title=attr-accesskey>accesskey</code> attribute to define a command on other elements</a></ol></li>
714 <li><a href=#devices><span class=secno>4.11.6 </span>The <code>device</code> element</a>
716 <li><a href=#stream-api><span class=secno>4.11.6.1 </span>Stream API</a></li>
717 <li><a href=#peer-to-peer-connections><span class=secno>4.11.6.2 </span>Peer-to-peer connections</a></ol></ol></li>
718 <li><a href=#links><span class=secno>4.12 </span>Links</a>
720 <li><a href=#hyperlink-elements><span class=secno>4.12.1 </span>Hyperlink elements</a></li>
721 <li><a href=#following-hyperlinks><span class=secno>4.12.2 </span>Following hyperlinks</a>
723 <li><a href=#hyperlink-auditing><span class=secno>4.12.2.1 </span>Hyperlink auditing</a></ol></li>
724 <li><a href=#linkTypes><span class=secno>4.12.3 </span>Link types</a>
726 <li><a href=#link-type-alternate><span class=secno>4.12.3.1 </span>Link type "<code>alternate</code>"</a></li>
727 <li><a href=#link-type-archives><span class=secno>4.12.3.2 </span>Link type "<code>archives</code>"</a></li>
728 <li><a href=#link-type-author><span class=secno>4.12.3.3 </span>Link type "<code>author</code>"</a></li>
729 <li><a href=#link-type-bookmark><span class=secno>4.12.3.4 </span>Link type "<code>bookmark</code>"</a></li>
730 <li><a href=#link-type-external><span class=secno>4.12.3.5 </span>Link type "<code>external</code>"</a></li>
731 <li><a href=#link-type-help><span class=secno>4.12.3.6 </span>Link type "<code>help</code>"</a></li>
732 <li><a href=#rel-icon><span class=secno>4.12.3.7 </span>Link type "<code>icon</code>"</a></li>
733 <li><a href=#link-type-license><span class=secno>4.12.3.8 </span>Link type "<code>license</code>"</a></li>
734 <li><a href=#link-type-nofollow><span class=secno>4.12.3.9 </span>Link type "<code>nofollow</code>"</a></li>
735 <li><a href=#link-type-noreferrer><span class=secno>4.12.3.10 </span>Link type "<code>noreferrer</code>"</a></li>
736 <li><a href=#link-type-pingback><span class=secno>4.12.3.11 </span>Link type "<code>pingback</code>"</a></li>
737 <li><a href=#link-type-prefetch><span class=secno>4.12.3.12 </span>Link type "<code>prefetch</code>"</a></li>
738 <li><a href=#link-type-search><span class=secno>4.12.3.13 </span>Link type "<code>search</code>"</a></li>
739 <li><a href=#link-type-stylesheet><span class=secno>4.12.3.14 </span>Link type "<code>stylesheet</code>"</a></li>
740 <li><a href=#link-type-sidebar><span class=secno>4.12.3.15 </span>Link type "<code>sidebar</code>"</a></li>
741 <li><a href=#link-type-tag><span class=secno>4.12.3.16 </span>Link type "<code>tag</code>"</a></li>
742 <li><a href=#hierarchical-link-types><span class=secno>4.12.3.17 </span>Hierarchical link types</a>
744 <li><a href=#link-type-index><span class=secno>4.12.3.17.1 </span>Link type "<code>index</code>"</a></li>
745 <li><a href=#link-type-up><span class=secno>4.12.3.17.2 </span>Link type "<code>up</code>"</a></ol></li>
746 <li><a href=#sequential-link-types><span class=secno>4.12.3.18 </span>Sequential link types</a>
748 <li><a href=#link-type-first><span class=secno>4.12.3.18.1 </span>Link type "<code>first</code>"</a></li>
749 <li><a href=#link-type-last><span class=secno>4.12.3.18.2 </span>Link type "<code>last</code>"</a></li>
750 <li><a href=#link-type-next><span class=secno>4.12.3.18.3 </span>Link type "<code>next</code>"</a></li>
751 <li><a href=#link-type-prev><span class=secno>4.12.3.18.4 </span>Link type "<code>prev</code>"</a></ol></li>
752 <li><a href=#other-link-types><span class=secno>4.12.3.19 </span>Other link types</a></ol></ol></li>
753 <li><a href=#common-idioms-without-dedicated-elements><span class=secno>4.13 </span>Common idioms without dedicated elements</a>
755 <li><a href=#tag-clouds><span class=secno>4.13.1 </span>Tag clouds</a></li>
756 <li><a href=#conversations><span class=secno>4.13.2 </span>Conversations</a></li>
757 <li><a href=#footnotes><span class=secno>4.13.3 </span>Footnotes</a></ol></li>
758 <li><a href=#matching-html-elements-using-selectors><span class=secno>4.14 </span>Matching HTML elements using selectors</a>
760 <li><a href=#selectors><span class=secno>4.14.1 </span>Case-sensitivity</a></li>
761 <li><a href=#pseudo-classes><span class=secno>4.14.2 </span>Pseudo-classes</a></ol></ol></li>
762 <li><a href=#microdata><span class=secno>5 </span>Microdata</a>
764 <li><a href=#introduction-2><span class=secno>5.1 </span>Introduction</a>
766 <li><a href=#overview><span class=secno>5.1.1 </span>Overview</a></li>
767 <li><a href=#the-basic-syntax><span class=secno>5.1.2 </span>The basic syntax</a></li>
768 <li><a href=#typed-items><span class=secno>5.1.3 </span>Typed items</a></li>
769 <li><a href=#global-identifiers-for-items><span class=secno>5.1.4 </span>Global identifiers for items</a></li>
770 <li><a href=#selecting-names-when-defining-vocabularies><span class=secno>5.1.5 </span>Selecting names when defining vocabularies</a></li>
771 <li><a href=#using-the-microdata-dom-api><span class=secno>5.1.6 </span>Using the microdata DOM API</a></ol></li>
772 <li><a href=#encoding-microdata><span class=secno>5.2 </span>Encoding microdata</a>
774 <li><a href=#the-microdata-model><span class=secno>5.2.1 </span>The microdata model</a></li>
775 <li><a href=#items><span class=secno>5.2.2 </span>Items</a></li>
776 <li><a href=#names:-the-itemprop-attribute><span class=secno>5.2.3 </span>Names: the <code>itemprop</code> attribute</a></li>
777 <li><a href=#values><span class=secno>5.2.4 </span>Values</a></li>
778 <li><a href=#associating-names-with-items><span class=secno>5.2.5 </span>Associating names with items</a></ol></li>
779 <li><a href=#microdata-dom-api><span class=secno>5.3 </span>Microdata DOM API</a></li>
780 <li><a href
782 <li><a href=#vcard><span class=secno>5.4.1 </span>vCard</a>
784 <li><a href=#conversion-to-vcard><span class=secno>5.4.1.1 </span>Conversion to vCard</a></li>
785 <li><a href=#examples-1><span class=secno>5.4.1.2 </span>Examples</a></ol></li>
786 <li><a href=#vevent><span class=secno>5.4.2 </span>vEvent</a>
788 <li><a href=#conversion-to-icalendar><span class=secno>5.4.2.1 </span>Conversion to iCalendar</a></li>
789 <li><a href=#examples-2><span class=secno>5.4.2.2 </span>Examples</a></ol></li>
790 <li><a href=#licensing-works><span class=secno>5.4.3 </span>Licensing works</a>
792 <li><a href=#conversion-to-rdf><span class=secno>5.4.3.1 </span>Conversion to RDF</a></li>
793 <li><a href=#examples-3><span class=secno>5.4.3.2 </span>Examples</a></ol></ol></li>
794 <li><a href=#converting-html-to-other-formats><span class=secno>5.5 </span>Converting HTML to other formats</a>
796 <li><a href=#json><span class=secno>5.5.1 </span>JSON</a></li>
797 <li><a href=#rdf><span class=secno>5.5.2 </span>RDF</a>
799 <li><a href=#examples-4><span class=secno>5.5.2.1 </span>Examples</a></ol></li>
800 <li><a href=#atom><span class=secno>5.5.3 </span>Atom</a></ol></ol></li>
801 <li><a href=#browsers><span class=secno>6 </span>Loading Web pages</a>
803 <li><a href=#windows><span class=secno>6.1 </span>Browsing contexts</a>
805 <li><a href=#nested-browsing-contexts><span class=secno>6.1.1 </span>Nested browsing contexts</a>
807 <li><a href=#navigating-nested-browsing-contexts-in-the-dom><span class=secno>6.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></ol></li>
808 <li><a href=#auxiliary-browsing-contexts><span class=secno>6.1.2 </span>Auxiliary browsing contexts</a>
810 <li><a href=#navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></ol></li>
811 <li><a href=#secondary-browsing-contexts><span class=secno>6.1.3 </span>Secondary browsing contexts</a></li>
812 <li><a href=#security-nav><span class=secno>6.1.4 </span>Security</a></li>
813 <li><a href=#groupings-of-browsing-contexts><span class=secno>6.1.5 </span>Groupings of browsing contexts</a></li>
814 <li><a href=#browsing-context-names><span class=secno>6.1.6 </span>Browsing context names</a></ol></li>
815 <li><a href=#the-window-object><span class=secno>6.2 </span>The <code>Window</code> object</a>
817 <li><a href=#security-window><span class=secno>6.2.1 </span>Security</a></li>
818 <li><a href=#apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>6.2.2 </span>APIs for creating and navigating browsing contexts by name</a></li>
819 <li><a href=#accessing-other-browsing-contexts><span class=secno>6.2.3 </span>Accessing other browsing contexts</a></li>
820 <li><a href=#named-access-on-the-window-object><span class=secno>6.2.4 </span>Named access on the <code>Window</code> object</a></li>
821 <li><a href=#garbage-collection-and-browsing-contexts><span class=secno>6.2.5 </span>Garbage collection and browsing contexts</a></li>
822 <li><a href=#browser-interface-elements><span class=secno>6.2.6 </span>Browser interface elements</a></li>
823 <li><a href=#the-windowproxy-object><span class=secno>6.2.7 </span>The <code>WindowProxy</code> object</a></ol></li>
824 <li><a href=#origin-0><span class=secno>6.3 </span>Origin</a>
826 <li><a href=#relaxing-the-same-origin-restriction><span class=secno>6.3.1 </span>Relaxing the same-origin restriction</a></ol></li>
827 <li><a href=#history><span class=secno>6.4 </span>Session history and navigation</a>
829 <li><a href=#the-session-history-of-browsing-contexts><span class=secno>6.4.1 </span>The session history of browsing contexts</a></li>
830 <li><a href=#the-history-interface><span class=secno>6.4.2 </span>The <code>History</code> interface</a></li>
831 <li><a href=#the-location-interface><span class=secno>6.4.3 </span>The <code>Location</code> interface</a>
833 <li><a href=#security-location><span class=secno>6.4.3.1 </span>Security</a></ol></li>
834 <li><a href=#history-notes><span class=secno>6.4.4 </span>Implementation notes for session history</a></ol></li>
835 <li><a href=#browsing-the-web><span class=secno>6.5 </span>Browsing the Web</a>
837 <li><a href=#navigating-across-documents><span class=secno>6.5.1 </span>Navigating across documents</a></li>
838 <li><a href=#read-html><span class=secno>6.5.2 </span>Page load processing model for HTML files</a></li>
839 <li><a href=#read-xml><span class=secno>6.5.3 </span>Page load processing model for XML files</a></li>
840 <li><a href=#read-text><span class=secno>6.5.4 </span>Page load processing model for text files</a></li>
841 <li><a href=#read-image><span class=secno>6.5.5 </span>Page load processing model for images</a></li>
842 <li><a href=#read-plugin><span class=secno>6.5.6 </span>Page load processing model for content that uses plugins</a></li>
843 <li><a href=#read-ua-inline><span class=secno>6.5.7 </span>Page load processing model for inline content that doesn't have a DOM</a></li>
844 <li><a href=#scroll-to-fragid><span class=secno>6.5.8 </span>Navigating to a fragment identifier</a></li>
845 <li><a href=#history-traversal><span class=secno>6.5.9 </span>History traversal</a>
847 <li><a href=#event-definitions><span class=secno>6.5.9.1 </span>Event definitions</a></ol></li>
848 <li><a href=#unloading-documents><span class=secno>6.5.10 </span>Unloading documents</a>
850 <li><a href=#event-definition><span class=secno>6.5.10.1 </span>Event definition</a></ol></li>
851 <li><a href=#aborting-a-document-load><span class=secno>6.5.11 </span>Aborting a document load</a></ol></li>
852 <li><a href=#offline><span class=secno>6.6 </span>Offline Web applications</a>
854 <li><a href=#introduction-3><span class=secno>6.6.1 </span>Introduction</a>
856 <li><a href=#appcacheevents><span class=secno>6.6.1.1 </span>Event summary</a></ol></li>
857 <li><a href=#appcache><span class=secno>6.6.2 </span>Application caches</a></li>
858 <li><a href=#manifests><span class=secno>6.6.3 </span>The cache manifest syntax</a>
860 <li><a href=#a-sample-manifest><span class=secno>6.6.3.1 </span>A sample manifest</a></li>
861 <li><a href=#writing-cache-manifests><span class=secno>6.6.3.2 </span>Writing cache manifests</a></li>
862 <li><a href=#parsing-cache-manifests><span class=secno>6.6.3.3 </span>Parsing cache manifests</a></ol></li>
863 <li><a href=#downloading-or-updating-an-application-cache><span class=secno>6.6.4 </span>Downloading or updating an application cache</a></li>
864 <li><a href=#the-application-cache-selection-algorithm><span class=secno>6.6.5 </span>The application cache selection algorithm</a></li>
865 <li><a href=#changesToNetworkingModel><span class=secno>6.6.6 </span>Changes to the networking model</a></li>
866 <li><a href=#expiring-application-caches><span class=secno>6.6.7 </span>Expiring application caches</a></li>
867 <li><a href=#application-cache-api><span class=secno>6.6.8 </span>Application cache API</a></li>
868 <li><a href=#browser-state><span class=secno>6.6.9 </span>Browser state</a></ol></ol></li>
869 <li><a href=#webappapis><span class=secno>7 </span>Web application APIs</a>
871 <li><a href=#scripting><span class=secno>7.1 </span>Scripting</a>
873 <li><a href=#introduction-4><span class=secno>7.1.1 </span>Introduction</a></li>
874 <li><a href=#enabling-and-disabling-scripting><span class=secno>7.1.2 </span>Enabling and disabling scripting</a></li>
875 <li><a href=#processing-model-1><span class=secno>7.1.3 </span>Processing model</a>
877 <li><a href=#definitions-0><span class=secno>7.1.3.1 </span>Definitions</a></li>
878 <li><a href=#calling-scripts><span class=secno>7.1.3.2 </span>Calling scripts</a></li>
879 <li><a href=#creating-scripts><span class=secno>7.1.3.3 </span>Creating scripts</a></li>
880 <li><a href=#killing-scripts><span class=secno>7.1.3.4 </span>Killing scripts</a></ol></li>
881 <li><a href=#event-loops><span class=secno>7.1.4 </span>Event loops</a>
883 <li><a href=#definitions-1><span class=secno>7.1.4.1 </span>Definitions</a></li>
884 <li><a href=#processing-model-2><span class=secno>7.1.4.2 </span>Processing model</a></li>
885 <li><a href=#generic-task-sources><span class=secno>7.1.4.3 </span>Generic task sources</a></ol></li>
886 <li><a href=#javascript-protocol><span class=secno>7.1.5 </span>The <code title="">javascript:</code> protocol</a></li>
887 <li><a href=#events><span class=secno>7.1.6 </span>Events</a>
889 <li><a href=#event-handler-attributes><span class=secno>7.1.6.1 </span>Event handlers</a></li>
890 <li><a href=#event-handlers-on-elements,-document-objects,-and-window-objects><span class=secno>7.1.6.2 </span>Event handlers on elements, <code>Document</code> objects, and <code>Window</code> objects</a></li>
891 <li><a href=#event-firing><span class=secno>7.1.6.3 </span>Event firing</a></li>
892 <li><a href=#events-and-the-window-object><span class=secno>7.1.6.4 </span>Events and the <code>Window</code> object</a></li>
893 <li><a href=#runtime-script-errors><span class=secno>7.1.6.5 </span>Runtime script errors</a></ol></ol></li>
894 <li><a href=#timers><span class=secno>7.2 </span>Timers</a></li>
895 <li><a href=#user-prompts><span class=secno>7.3 </span>User prompts</a>
897 <li><a href=#simple-dialogs><span class=secno>7.3.1 </span>Simple dialogs</a></li>
898 <li><a href=#printing><span class=secno>7.3.2 </span>Printing</a></li>
899 <li><a href=#dialogs-implemented-using-separate-documents><span class=secno>7.3.3 </span>Dialogs implemented using separate documents</a></ol></li>
900 <li><a href=#system-state-and-capabilities><span class=secno>7.4 </span>System state and capabilities</a>
902 <li><a href=#client-identification><span class=secno>7.4.1 </span>Client identification</a></li>
903 <li><a href=#custom-handlers><span class=secno>7.4.2 </span>Custom scheme and content handlers</a>
905 <li><a href=#security-and-privacy><span class=secno>7.4.2.1 </span>Security and privacy</a></li>
906 <li><a href=#sample-handler-impl><span class=secno>7.4.2.2 </span>Sample user interface</a></ol></li>
907 <li><a href=#manually-releasing-the-storage-mutex><span class=secno>7.4.3 </span>Manually releasing the storage mutex</a></ol></ol></li>
908 <li><a href=#editing><span class=secno>8 </span>User interaction</a>
910 <li><a href=#the-hidden-attribute><span class=secno>8.1 </span>The <code>hidden</code> attribute</a></li>
911 <li><a href=#activation><span class=secno>8.2 </span>Activation</a></li>
912 <li><a href=#scrolling-elements-into-view><span class=secno>8.3 </span>Scrolling elements into view</a></li>
913 <li><a href=#focus><span class=secno>8.4 </span>Focus</a>
915 <li><a href=#sequential-focus-navigation><span class=secno>8.4.1 </span>Sequential focus navigation</a></li>
916 <li><a href=#focus-management><span class=secno>8.4.2 </span>Focus management</a></li>
917 <li><a href=#document-level-focus-apis><span class=secno>8.4.3 </span>Document-level focus APIs</a></li>
918 <li><a href=#element-level-focus-apis><span class=secno>8.4.4 </span>Element-level focus APIs</a></ol></li>
919 <li><a href=#the-accesskey-attribute><span class=secno>8.5 </span>The <code>accesskey</code> attribute</a></li>
920 <li><a href=#selection><span class=secno>8.6 </span>The text selection APIs</a>
922 <li><a href=#documentSelection><span class=secno>8.6.1 </span>APIs for the browsing context selection</a></li>
923 <li><a href=#textFieldSelection><span class=secno>8.6.2 </span>APIs for the text field selections</a></ol></li>
924 <li><a href=#contenteditable><span class=secno>8.7 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
926 <li><a href=#user-editing-actions><span class=secno>8.7.1 </span>User editing actions</a></li>
927 <li><a href=#making-entire-documents-editable><span class=secno>8.7.2 </span>Making entire documents editable</a></ol></li>
928 <li><a href=#spelling-and-grammar-checking><span class=secno>8.8 </span>Spelling and grammar checking</a></li>
929 <li><a href=#dnd><span class=secno>8.9 </span>Drag and drop</a>
931 <li><a href=#introduction-5><span class=secno>8.9.1 </span>Introduction</a></li>
932 <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>8.9.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
933 <li><a href=#dndevents><span class=secno>8.9.3 </span>Events fired during a drag-and-drop action</a></li>
934 <li><a href=#drag-and-drop-processing-model><span class=secno>8.9.4 </span>Drag-and-drop processing model</a>
936 <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>8.9.4.1 </span>When the drag-and-drop operation starts or ends in another
938 <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>8.9.4.2 </span>When the drag-and-drop operation starts or ends in another
940 <li><a href=#the-draggable-attribute><span class=secno>8.9.5 </span>The <code>draggable</code> attribute</a></li>
941 <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>8.9.6 </span>Security risks in the drag-and-drop model</a></ol></li>
942 <li><a href=#undo><span class=secno>8.10 </span>Undo history</a>
944 <li><a href=#definitions-2><span class=secno>8.10.1 </span>Definitions</a></li>
945 <li><a href=#the-undomanager-interface><span class=secno>8.10.2 </span>The <code>UndoManager</code> interface</a></li>
946 <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>8.10.3 </span>Undo: moving back in the undo transaction history</a></li>
947 <li><a href=#redo:-moving-forward-in-the-undo-transaction-history><span class=secno>8.10.4 </span>Redo: moving forward in the undo transaction history</a></li>
948 <li><a href=#the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>8.10.5 </span>The <code>UndoManagerEvent</code> interface and the <code title=event-undo>undo</code> and <code title=event-redo>redo</code> events</a></li>
949 <li><a href=#implementation-notes><span class=secno>8.10.6 </span>Implementation notes</a></ol></li>
950 <li><a href=#editing-apis><span class=secno>8.11 </span>Editing APIs</a></ol></li>
951 <li><a href=#comms><span class=secno>9 </span>Communication</a>
953 <li><a href=#event-definitions-0><span class=secno>9.1 </span>Event definitions</a></li>
954 <li><a href=#web-messaging><span class=secno>9.2 </span>Cross-document messaging</a>
956 <li><a href=#introduction-6><span class=secno>9.2.1 </span>Introduction</a></li>
957 <li><a href=#security-postmsg><span class=secno>9.2.2 </span>Security</a>
959 <li><a href=#authors><span class=secno>9.2.2.1 </span>Authors</a></li>
960 <li><a href=#user-agents><span class=secno>9.2.2.2 </span>User agents</a></ol></li>
961 <li><a href=#posting-messages><span class=secno>9.2.3 </span>Posting messages</a></ol></li>
962 <li><a href=#channel-messaging><span class=secno>9.3 </span>Channel messaging</a>
964 <li><a href=#introduction-7><span class=secno>9.3.1 </span>Introduction</a></li>
965 <li><a href=#message-channels><span class=secno>9.3.2 </span>Message channels</a></li>
966 <li><a href=#message-ports><span class=secno>9.3.3 </span>Message ports</a>
968 <li><a href=#ports-and-garbage-collection><span class=secno>9.3.3.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
969 <li><a href=#syntax><span class=secno>10 </span>The HTML syntax</a>
971 <li><a href=#writing><span class=secno>10.1 </span>Writing HTML documents</a>
973 <li><a href=#the-doctype><span class=secno>10.1.1 </span>The DOCTYPE</a></li>
974 <li><a href=#elements-0><span class=secno>10.1.2 </span>Elements</a>
976 <li><a href
977 <li><a href=#end-tags><span class=secno>10.1.2.2 </span>End tags</a></li>
978 <li><a href=#attributes-0><span class=secno>10.1.2.3 </span>Attributes</a></li>
979 <li><a href=#optional-tags><span class=secno>10.1.2.4 </span>Optional tags</a></li>
980 <li><a href=#element-restrictions><span class=secno>10.1.2.5 </span>Restrictions on content models</a></li>
981 <li><a href=#cdata-rcdata-restrictions><span class=secno>10.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</a></ol></li>
982 <li><a href=#text-1><span class=secno>10.1.3 </span>Text</a>
984 <li><a href=#newlines><span class=secno>10.1.3.1 </span>Newlines</a></ol></li>
985 <li><a href=#character-references><span class=secno>10.1.4 </span>Character references</a></li>
986 <li><a href=#cdata-sections><span class=secno>10.1.5 </span>CDATA sections</a></li>
987 <li><a href=#comments><span class=secno>10.1.6 </span>Comments</a></ol></li>
988 <li><a href=#parsing><span class=secno>10.2 </span>Parsing HTML documents</a>
990 <li><a href=#overview-of-the-parsing-model><span class=secno>10.2.1 </span>Overview of the parsing model</a></li>
991 <li><a href=#the-input-stream><span class=secno>10.2.2 </span>The input stream</a>
993 <li><a href=#determining-the-character-encoding><span class=secno>10.2.2.1 </span>Determining the character encoding</a></li>
994 <li><a href=#character-encodings-0><span class=secno>10.2.2.2 </span>Character encodings</a></li>
995 <li><a href=#preprocessing-the-input-stream><span class=secno>10.2.2.3 </span>Preprocessing the input stream</a></li>
996 <li><a href=#changing-the-encoding-while-parsing><span class=secno>10.2.2.4 </span>Changing the encoding while parsing</a></ol></li>
997 <li><a href=#parse-state><span class=secno>10.2.3 </span>Parse state</a>
999 <li><a href=#the-insertion-mode><span class=secno>10.2.3.1 </span>The insertion mode</a></li>
1000 <li><a href=#the-stack-of-open-elements><span class=secno>10.2.3.2 </span>The stack of open elements</a></li>
1001 <li><a href=#the-list-of-active-formatting-elements><span class=secno>10.2.3.3 </span>The list of active formatting elements</a></li>
1002 <li><a href=#the-element-pointers><span class=secno>10.2.3.4 </span>The element pointers</a></li>
1003 <li><a href=#other-parsing-state-flags><span class=secno>10.2.3.5 </span>Other parsing state flags</a></ol></li>
1004 <li><a href=#tokenization><span class=secno>10.2.4 </span>Tokenization</a>
1006 <li><a href=#data-state><span class=secno>10.2.4.1 </span>Data state</a></li>
1007 <li><a href=#character-reference-in-data-state><span class=secno>10.2.4.2 </span>Character reference in data state</a></li>
1008 <li><a href=#rcdata-state><span class=secno>10.2.4.3 </span>RCDATA state</a></li>
1009 <li><a href=#character-reference-in-rcdata-state><span class=secno>10.2.4.4 </span>Character reference in RCDATA state</a></li>
1010 <li><a href=#rawtext-state><span class=secno>10.2.4.5 </span>RAWTEXT state</a></li>
1011 <li><a href=#script-data-state><span class=secno>10.2.4.6 </span>Script data state</a></li>
1012 <li><a href=#plaintext-state><span class=secno>10.2.4.7 </span>PLAINTEXT state</a></li>
1013 <li><a href=#tag-open-state><span class=secno>10.2.4.8 </span>Tag open state</a></li>
1014 <li><a href=#end-tag-open-state><span class=secno>10.2.4.9 </span>End tag open state</a></li>
1015 <li><a href=#tag-name-state><span class=secno>10.2.4.10 </span>Tag name state</a></li>
1016 <li><a href=#rcdata-less-than-sign-state><span class=secno>10.2.4.11 </span>RCDATA less-than sign state</a></li>
1017 <li><a href=#rcdata-end-tag-open-state><span class=secno>10.2.4.12 </span>RCDATA end tag open state</a></li>
1018 <li><a href=#rcdata-end-tag-name-state><span class=secno>10.2.4.13 </span>RCDATA end tag name state</a></li>
1019 <li><a href=#rawtext-less-than-sign-state><span class=secno>10.2.4.14 </span>RAWTEXT less-than sign state</a></li>
1020 <li><a href=#rawtext-end-tag-open-state><span class=secno>10.2.4.15 </span>RAWTEXT end tag open state</a></li>
1021 <li><a href=#rawtext-end-tag-name-state><span class=secno>10.2.4.16 </span>RAWTEXT end tag name state</a></li>
1022 <li><a href=#script-data-less-than-sign-state><span class=secno>10.2.4.17 </span>Script data less-than sign state</a></li>
1023 <li><a href=#script-data-end-tag-open-state><span class=secno>10.2.4.18 </span>Script data end tag open state</a></li>
1024 <li><a href=#script-data-end-tag-name-state><span class=secno>10.2.4.19 </span>Script data end tag name state</a></li>
1025 <li><a href=#script-data-escape-start-state><span class=secno>10.2.4.20 </span>Script data escape start state</a></li>
1026 <li><a href=#script-data-escape-start-dash-state><span class=secno>10.2.4.21 </span>Script data escape start dash state</a></li>
1027 <li><a href=#script-data-escaped-state><span class=secno>10.2.4.22 </span>Script data escaped state</a></li>
1028 <li><a href=#script-data-escaped-dash-state><span class=secno>10.2.4.23 </span>Script data escaped dash state</a></li>
1029 <li><a href=#script-data-escaped-dash-dash-state><span class=secno>10.2.4.24 </span>Script data escaped dash dash state</a></li>
1030 <li><a href=#script-data-escaped-less-than-sign-state><span class=secno>10.2.4.25 </span>Script data escaped less-than sign state</a></li>
1031 <li><a href=#script-data-escaped-end-tag-open-state><span class=secno>10.2.4.26 </span>Script data escaped end tag open state</a></li>
1032 <li><a href=#script-data-escaped-end-tag-name-state><span class=secno>10.2.4.27 </span>Script data escaped end tag name state</a></li>
1033 <li><a href=#script-data-double-escape-start-state><span class=secno>10.2.4.28 </span>Script data double escape start state</a></li>
1034 <li><a href=#script-data-double-escaped-state><span class=secno>10.2.4.29 </span>Script data double escaped state</a></li>
1035 <li><a href=#script-data-double-escaped-dash-state><span class=secno>10.2.4.30 </span>Script data double escaped dash state</a></li>
1036 <li><a href=#script-data-double-escaped-dash-dash-state><span class=secno>10.2.4.31 </span>Script data double escaped dash dash state</a></li>
1037 <li><a href=#script-data-double-escaped-less-than-sign-state><span class=secno>10.2.4.32 </span>Script data double escaped less-than sign state</a></li>
1038 <li><a href=#script-data-double-escape-end-state><span class=secno>10.2.4.33 </span>Script data double escape end state</a></li>
1039 <li><a href=#before-attribute-name-state><span class=secno>10.2.4.34 </span>Before attribute name state</a></li>
1040 <li><a href=#attribute-name-state><span class=secno>10.2.4.35 </span>Attribute name state</a></li>
1041 <li><a href=#after-attribute-name-state><span class=secno>10.2.4.36 </span>After attribute name state</a></li>
1042 <li><a href=#before-attribute-value-state><span class=secno>10.2.4.37 </span>Before attribute value state</a></li>
1043 <li><a href=#attribute-value-(double-quoted)-state><span class=secno>10.2.4.38 </span>Attribute value (double-quoted) state</a></li>
1044 <li><a href=#attribute-value-(single-quoted)-state><span class=secno>10.2.4.39 </span>Attribute value (single-quoted) state</a></li>
1045 <li><a href=#attribute-value-(unquoted)-state><span class=secno>10.2.4.40 </span>Attribute value (unquoted) state</a></li>
1046 <li><a href=#character-reference-in-attribute-value-state><span class=secno>10.2.4.41 </span>Character reference in attribute value state</a></li>
1047 <li><a href=#after-attribute-value-(quoted)-state><span class=secno>10.2.4.42 </span>After attribute value (quoted) state</a></li>
1048 <li><a href=#self-closing-start-tag-state><span class=secno>10.2.4.43 </span>Self-closing start tag state</a></li>
1049 <li><a href=#bogus-comment-state><span class=secno>10.2.4.44 </span>Bogus comment state</a></li>
1050 <li><a href=#markup-declaration-open-state><span class=secno>10.2.4.45 </span>Markup declaration open state</a></li>
1051 <li><a href=#comment-start-state><span class=secno>10.2.4.46 </span>Comment start state</a></li>
1052 <li><a href=#comment-start-dash-state><span class=secno>10.2.4.47 </span>Comment start dash state</a></li>
1053 <li><a href=#comment-state><span class=secno>10.2.4.48 </span>Comment state</a></li>
1054 <li><a href=#comment-end-dash-state><span class=secno>10.2.4.49 </span>Comment end dash state</a></li>
1055 <li><a href=#comment-end-state><span class=secno>10.2.4.50 </span>Comment end state</a></li>
1056 <li><a href=#comment-end-bang-state><span class=secno>10.2.4.51 </span>Comment end bang state</a></li>
1057 <li><a href=#comment-end-space-state><span class=secno>10.2.4.52 </span>Comment end space state</a></li>
1058 <li><a href=#doctype-state><span class=secno>10.2.4.53 </span>DOCTYPE state</a></li>
1059 <li><a href=#before-doctype-name-state><span class=secno>10.2.4.54 </span>Before DOCTYPE name state</a></li>
1060 <li><a href=#doctype-name-state><span class=secno>10.2.4.55 </span>DOCTYPE name state</a></li>
1061 <li><a href=#after-doctype-name-state><span class=secno>10.2.4.56 </span>After DOCTYPE name state</a></li>
1062 <li><a href=#after-doctype-public-keyword-state><span class=secno>10.2.4.57 </span>After DOCTYPE public keyword state</a></li>
1063 <li><a href=#before-doctype-public-identifier-state><span class=secno>10.2.4.58 </span>Before DOCTYPE public identifier state</a></li>
1064 <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>10.2.4.59 </span>DOCTYPE public identifier (double-quoted) state</a></li>
1065 <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>10.2.4.60 </span>DOCTYPE public identifier (single-quoted) state</a></li>
1066 <li><a href=#after-doctype-public-identifier-state><span class=secno>10.2.4.61 </span>After DOCTYPE public identifier state</a></li>
1067 <li><a href=#between-doctype-public-and-system-identifiers-state><span class=secno>10.2.4.62 </span>Between DOCTYPE public and system identifiers state</a></li>
1068 <li><a href=#after-doctype-system-keyword-state><span class=secno>10.2.4.63 </span>After DOCTYPE system keyword state</a></li>
1069 <li><a href=#before-doctype-system-identifier-state><span class=secno>10.2.4.64 </span>Before DOCTYPE system identifier state</a></li>
1070 <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>10.2.4.65 </span>DOCTYPE system identifier (double-quoted) state</a></li>
1071 <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>10.2.4.66 </span>DOCTYPE system identifier (single-quoted) state</a></li>
1072 <li><a href=#after-doctype-system-identifier-state><span class=secno>10.2.4.67 </span>After DOCTYPE system identifier state</a></li>
1073 <li><a href=#bogus-doctype-state><span class=secno>10.2.4.68 </span>Bogus DOCTYPE state</a></li>
1074 <li><a href=#cdata-section-state><span class=secno>10.2.4.69 </span>CDATA section state</a></li>
1075 <li><a href=#tokenizing-character-references><span class=secno>10.2.4.70 </span>Tokenizing character references</a></ol></li>
1076 <li><a href=#tree-construction><span class=secno>10.2.5 </span>Tree construction</a>
1078 <li><a href=#creating-and-inserting-elements><span class=secno>10.2.5.1 </span>Creating and inserting elements</a></li>
1079 <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>10.2.5.2 </span>Closing elements that have implied end tags</a></li>
1080 <li><a href=#foster-parenting><span class=secno>10.2.5.3 </span>Foster parenting</a></li>
1081 <li><a href=#the-initial-insertion-mode><span class=secno>10.2.5.4 </span>The "initial" insertion mode</a></li>
1082 <li><a href=#the-before-html-insertion-mode><span class=secno>10.2.5.5 </span>The "before html" insertion mode</a></li>
1083 <li><a href=#the-before-head-insertion-mode><span class=secno>10.2.5.6 </span>The "before head" insertion mode</a></li>
1084 <li><a href=#parsing-main-inhead><span class=secno>10.2.5.7 </span>The "in head" insertion mode</a></li>
1085 <li><a href=#parsing-main-inheadnoscript><span class=secno>10.2.5.8 </span>The "in head noscript" insertion mode</a></li>
1086 <li><a href=#the-after-head-insertion-mode><span class=secno>10.2.5.9 </span>The "after head" insertion mode</a></li>
1087 <li><a href=#parsing-main-inbody><span class=secno>10.2.5.10 </span>The "in body" insertion mode</a></li>
1088 <li><a href=#parsing-main-incdata><span class=secno>10.2.5.11 </span>The "text" insertion mode</a></li>
1089 <li><a href=#parsing-main-intable><span class=secno>10.2.5.12 </span>The "in table" insertion mode</a></li>
1090 <li><a href=#parsing-main-intabletext><span class=secno>10.2.5.13 </span>The "in table text" insertion mode</a></li>
1091 <li><a href=#parsing-main-incaption><span class=secno>10.2.5.14 </span>The "in caption" insertion mode</a></li>
1092 <li><a href=#parsing-main-incolgroup><span class=secno>10.2.5.15 </span>The "in column group" insertion mode</a></li>
1093 <li><a href=#parsing-main-intbody><span class=secno>10.2.5.16 </span>The "in table body" insertion mode</a></li>
1094 <li><a href=#parsing-main-intr><span class=secno>10.2.5.17 </span>The "in row" insertion mode</a></li>
1095 <li><a href=#parsing-main-intd><span class=secno>10.2.5.18 </span>The "in cell" insertion mode</a></li>
1096 <li><a href=#parsing-main-inselect><span class=secno>10.2.5.19 </span>The "in select" insertion mode</a></li>
1097 <li><a href=#parsing-main-inselectintable><span class=secno>10.2.5.20 </span>The "in select in table" insertion mode</a></li>
1098 <li><a href=#parsing-main-inforeign><span class=secno>10.2.5.21 </span>The "in foreign content" insertion mode</a></li>
1099 <li><a href=#parsing-main-afterbody><span class=secno>10.2.5.22 </span>The "after body" insertion mode</a></li>
1100 <li><a href=#parsing-main-inframeset><span class=secno>10.2.5.23 </span>The "in frameset" insertion mode</a></li>
1101 <li><a href=#parsing-main-afterframeset><span class=secno>10.2.5.24 </span>The "after frameset" insertion mode</a></li>
1102 <li><a href=#the-after-after-body-insertion-mode><span class=secno>10.2.5.25 </span>The "after after body" insertion mode</a></li>
1103 <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>10.2.5.26 </span>The "after after frameset" insertion mode</a></ol></li>
1104 <li><a href=#the-end><span class=secno>10.2.6 </span>The end</a></li>
1105 <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>10.2.7 </span>Coercing an HTML DOM into an infoset</a></li>
1106 <li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser><span class=secno>10.2.8 </span>An introduction to error handling and strange cases in the parser</a>
1108 <li><a href=#misnested-tags:-b-i-/b-/i><span class=secno>10.2.8.1 </span>Misnested tags: <b><i></b></i></a></li>
1109 <li><a href=#misnested-tags:-b-p-/b-/p><span class=secno>10.2.8.2 </span>Misnested tags: <b><p></b></p></a></li>
1110 <li><a href=#unexpected-markup-in-tables><span class=secno>10.2.8.3 </span>Unexpected markup in tables</a></li>
1111 <li><a href=#scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>10.2.8.4 </span>Scripts that modify the page as it is being parsed</a></ol></ol></li>
1112 <li><a href=#serializing-html-fragments><span class=secno>10.3 </span>Serializing HTML fragments</a></li>
1113 <li><a href=#parsing-html-fragments><span class=secno>10.4 </span>Parsing HTML fragments</a></li>
1114 <li><a href=#named-character-references><span class=secno>10.5 </span>Named character references</a></ol></li>
1115 <li><a href=#the-xhtml-syntax><span class=secno>11 </span>The XHTML syntax</a>
1117 <li><a href=#writing-xhtml-documents><span class=secno>11.1 </span>Writing XHTML documents</a></li>
1118 <li><a href=#parsing-xhtml-documents><span class=secno>11.2 </span>Parsing XHTML documents</a></li>
1119 <li><a href=#serializing-xhtml-fragments><span class=secno>11.3 </span>Serializing XHTML fragments</a></li>
1120 <li><a href=#parsing-xhtml-fragments><span class=secno>11.4 </span>Parsing XHTML fragments</a></ol></li>
1121 href=#rendering><span class=secno>12 </span>Rendering</a>
1123 <li><a href=#introduction-8><span class=secno>12.1 </span>Introduction</a></li>
1124 <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>12.2 </span>The CSS user agent style sheet and presentational hints</a>
1126 <li><a href=#introduction-9><span class=secno>12.2.1 </span>Introduction</a></li>
1127 <li><a href=#display-types><span class=secno>12.2.2 </span>Display types</a></li>
1128 <li><a href=#margins-and-padding><span class=secno>12.2.3 </span>Margins and padding</a></li>
1129 <li><a href=#alignment><span class=secno>12.2.4 </span>Alignment</a></li>
1130 <li><a href=#fonts-and-colors><span class=secno>12.2.5 </span>Fonts and colors</a></li>
1131 <li><a href=#punctuation-and-decorations><span class=secno>12.2.6 </span>Punctuation and decorations</a></li>
1132 <li><a href=#resetting-rules-for-inherited-properties><span class=secno>12.2.7 </span>Resetting rules for inherited properties</a></li>
1133 <li><a href=#the-hr-element-0><span class=secno>12.2.8 </span>The <code>hr</code> element</a></li>
1134 <li><a href=#the-fieldset-element-0><span class=secno>12.2.9 </span>The <code>fieldset</code> element</a></ol></li>
1135 <li><a href=#replaced-elements><span class=secno>12.3 </span>Replaced elements</a>
1137 <li><a href=#embedded-content-2><span class=secno>12.3.1 </span>Embedded content</a></li>
1138 <li><a href=#timed-tracks-0><span class=secno>12.3.2 </span>Timed tracks</a></li>
1139 <li><a href=#images-0><span class=secno>12.3.3 </span>Images</a></li>
1140 <li><a href=#attributes-for-embedded-content-and-images><span class=secno>12.3.4 </span>Attributes for embedded content and images</a></li>
1141 <li><a href=#image-maps-0><span class=secno>12.3.5 </span>Image maps</a></li>
1142 <li><a href=#toolbars-0><span class=secno>12.3.6 </span>Toolbars</a></ol></li>
1143 <li><a href=#bindings><span class=secno>12.4 </span>Bindings</a>
1145 <li><a href=#introduction-10><span class=secno>12.4.1 </span>Introduction</a></li>
1146 <li><a href=#the-button-element-0><span class=secno>12.4.2 </span>The <code>button</code> element</a></li>
1147 <li><a href=#the-details-element-0><span class=secno>12.4.3 </span>The <code>details</code> element</a></li>
1148 <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>12.4.4 </span>The <code>input</code> element as a text entry widget</a></li>
1149 <li><a href=#the-input-element-as-domain-specific-widgets><span class=secno>12.4.5 </span>The <code>input</code> element as domain-specific widgets</a></li>
1150 <li><a href=#the-input-element-as-a-range-control><span class=secno>12.4.6 </span>The <code>input</code> element as a range control</a></li>
1151 <li><a href=#the-input-element-as-a-color-well><span class=secno>12.4.7 </span>The <code>input</code> element as a color well</a></li>
1152 <li><a href=#the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>12.4.8 </span>The <code>input</code> element as a check box and radio button widgets</a></li>
1153 <li><a href=#the-input-element-as-a-file-upload-control><span class=secno>12.4.9 </span>The <code>input</code> element as a file upload control</a></li>
1154 <li><a href=#the-input-element-as-a-button><span class=secno>12.4.10 </span>The <code>input</code> element as a button</a></li>
1155 <li><a href=#the-marquee-element-0><span class=secno>12.4.11 </span>The <code>marquee</code> element</a></li>
1156 <li><a href=#the-meter-element-0><span class=secno>12.4.12 </span>The <code>meter</code> element</a></li>
1157 <li><a href=#the-progress-element-0><span class=secno>12.4.13 </span>The <code>progress</code> element</a></li>
1158 <li><a href=#the-select-element-0><span class=secno>12.4.14 </span>The <code>select</code> element</a></li>
1159 <li><a href=#the-textarea-element-0><span class=secno>12.4.15 </span>The <code>textarea</code> element</a></li>
1160 <li><a href=#the-keygen-element-0><span class=secno>12.4.16 </span>The <code>keygen</code> element</a></li>
1161 <li><a href=#the-time-element-0><span class=secno>12.4.17 </span>The <code>time</code> element</a></ol></li>
1162 <li><a href=#frames-and-framesets><span class=secno>12.5 </span>Frames and framesets</a></li>
1163 <li><a href=#interactive-media><span class=secno>12.6 </span>Interactive media</a>
1165 <li><a href=#links,-forms,-and-navigation><span class=secno>12.6.1 </span>Links, forms, and navigation</a></li>
1166 <li><a href=#the-title-attribute-0><span class=secno>12.6.2 </span>The <code title=attr-title>title</code> attribute</a></li>
1167 <li><a href=#editing-hosts><span class=secno>12.6.3 </span>Editing hosts</a></ol></li>
1168 <li><a href=#print-media><span class=secno>12.7 </span>Print media</a></ol></li>
1169 <li><a href=#obsolete><span class=secno>13 </span>Obsolete features</a>
1171 <li><a href=#obsolete-but-conforming-features><span class=secno>13.1 </span>Obsolete but conforming features</a>
1173 <li><a href=#warnings-for-obsolete-but-conforming-features><span class=secno>13.1.1 </span>Warnings for obsolete but conforming features</a></ol></li>
1174 <li><a href=#non-conforming-features><span class=secno>13.2 </span>Non-conforming features</a></li>
1175 <li><a href=#requirements-for-implementations><span class=secno>13.3 </span>Requirements for implementations</a>
1177 <li><a href=#the-applet-element><span class=secno>13.3.1 </span>The <code>applet</code> element</a></li>
1178 <li><a href=#the-marquee-element><span class=secno>13.3.2 </span>The <code>marquee</code> element</a></li>
1179 <li><a href=#frames><span class=secno>13.3.3 </span>Frames</a></li>
1180 <li><a href=#other-elements,-attributes-and-apis><span class=secno>13.3.4 </span>Other elements, attributes and APIs</a></ol></ol></li>
1181 <li><a href=#iana><span class=secno>14 </span>IANA considerations</a>
1183 <li><a href=#text/html><span class=secno>14.1 </span><code>text/html</code></a></li>
1184 <li><a href=#text/html-sandboxed><span class=secno>14.2 </span><code>text/html-sandboxed</code></a></li>
1185 <li><a href=#application/xhtml+xml><span class=secno>14.3 </span><code>application/xhtml+xml</code></a></li>
1186 <li><a href=#text/cache-manifest><span class=secno>14.4 </span><code>text/cache-manifest</code></a></li>
1187 <li><a href=#text/ping><span class=secno>14.5 </span><code>text/ping</code></a></li>
1188 <li><a href=#text/srt><span class=secno>14.6 </span><code>text/srt</code></a></li>
1189 <li><a href=#application/microdata+json><span class=secno>14.7 </span><code>application/microdata+json</code></a></li>
1190 <li><a href=#ping-from><span class=secno>14.8 </span><code>Ping-From</code></a></li>
1191 <li><a href=#ping-to><span class=secno>14.9 </span><code>Ping-To</code></a></ol></li>
1192 <li><a class=no-num href=#index>Index</a>
1194 <li><a class=no-num href=#elements-1>Elements</a></li>
1195 <li><a class=no-num href=#element-content-categories>Element content categories</a></li>
1196 <li><a class=no-num href=#attributes-1>Attributes</a></li>
1197 <li><a class=no-num href=#interfaces>Interfaces</a></li>
1198 <li><a class=no-num href=#events-0>Events</a></ol></li>
1199 <li><a class=no-num href=#references>References</a></li>
1200 <li><a class=no-num href=#acknowledgements>Acknowledgements</a></ol>
1236 <ul class=brief><li>The <code><a href=#devices>device</a></code> element.</li>
1237 <li>The <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute and related <a href=#hyperlink-auditing>hyperlink auditing</a> features.</li>
1242 <ul class=brief><li><a href=#2dcontext>Canvas 2D Graphics Context</a>
1243 <li><a href=#microdata>Microdata</a>
1244 <li><a href=#mdvocabs>Microdata vocabularies</a>
1245 <li><a href=#crossDocumentMessages>Cross-document messaging</a> (also known as Communications)
1246 <li><a href=#channel-messaging>Channel messaging</a> (also known as Communications)
1247 <li><a href=#forms>Forms</a> (previously known as Web Forms 2)
1252 <ul class=brief><li><a href=http://www.whatwg.org/specs/web-workers/current-work/>Web Workers</a>
1253 <li><a href=http://dev.w3.org/html5/webstorage/>Web Storage</a>
1254 <li><a href=http://dev.w3.org/html5/websockets/>WebSocket API</a>
1255 <li><a href=http://www.whatwg.org/specs/web-socket-protocol/>WebSocket protocol</a>
1257 <li><a href="http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol">WebSocket protocol</a>
1259 <li><a href=http://dev.w3.org/html5/eventsource/>Server-sent Events</a>
1260 <li><a href=http://dev.w3.org/html5/webdatabase/>Web SQL Database</a>
1261 <li><a href=http://dev.w3.org/geo/api/spec-source.html>Geolocation API</a>
1262 <li><a href=http://www.w3.org/TR/SVG/>SVG</a>
1263 <li><a href=http://www.w3.org/TR/MathML/>MathML</a>
1264 <li><a href=http://dev.w3.org/2006/webapi/XMLHttpRequest-2/>XMLHttpRequest</a>
1425 language described in the HTML4 specification. <a href=#refsHTMLDIFF>[HTMLDIFF]</a></p>
1462 completely serializing the execution of all scripts in all <a href=#browsing-context title="browsing context">browsing contexts</a>.</p>
1464 <p class=note>The <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
1502 Web browsers. If a document is transmitted with an <a href=#html-mime-type>HTML MIME
1503 type</a>, such as <code><a href=#text/html>text/html</a></code>, then it will be
1513 application of XML. When a document is transmitted with an <a href=#xml-mime-type>XML
1514 MIME type</a>, such as <code><a href=#application/xhtml+xml>application/xhtml+xml</a></code>, then
1530 Similarly, documents that use the <code><a href=#the-noscript-element>noscript</a></code> feature can
1543 <dl><dt><a href=#infrastructure>Common infrastructure</a></dt>
1549 <dt><a href=#dom>Semantics, structure, and APIs of HTML documents</a></dt>
1557 <dt><a href=#semantics>The elements of HTML</a></dt>
1564 <dt><a href=#microdata>Microdata</a></dt>
1579 <dt><a href=#browsers>Loading Web pages</a></dt>
1585 <dt><a href=#webappapis>Web application APIs</a></dt>
1590 <dt><a href=#editing>User interaction</a></dt>
1599 <dt><a href=#comms>The communication APIs</a></dt>
1608 <dt><a href=#syntax>The HTML syntax</a></dt>
1609 <dt><a href=#xhtml>The XHTML syntax</a></dt>
1617 </dl><p>There are also some appendices, defining <a href=#rendering>rendering rules</a> for Web browsers and listing
1618 <a href=#obsolete>obsolete features</a> and <a href=#iana>IANA
1660 <a href=#x-this title=x-this>this</a> or like <i title=x-this><a href=#x-this>this</a></i>.</p>
1664 that element, attribute, or API are marked up like <code title=x-that><a href=#x-that>this</a></code>.</p>
1688 <p>This is a <a href="demo.html">simple</a> sample.</p>
1694 element is denoted in the source by a <a href=#syntax-start-tag title=syntax-start-tag>start tag</a>, such as "<code title=""><body></code>", and an <a href=#syntax-end-tag title=syntax-end-tag>end
1696 start tags and end tags can in certain cases be <a href=#syntax-tag-omission title=syntax-tag-omission>omitted</a> and are implied by other
1710 work. In the example below, there is a <a href=#hyperlink>hyperlink</a>,
1711 formed using the <code><a href=#the-a-element>a</a></code> element and its <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute:</p>
1713 <pre><a href="demo.html">simple</a></pre>
1715 <p><a href=#syntax-attributes title=syntax-attributes>Attributes</a> are placed
1716 inside the start tag, and consist of a <a href=#syntax-attribute-name title=syntax-attribute-name>name</a> and a <a href=#syntax-attribute-value title=syntax-attribute-value>value</a>, separated by an "<code title="">=</code>" character. The attribute value can remain <a href=#unquoted>unquoted</a> if it doesn't contain spaces or any of
1738 <p>The <a href=#intro-early-example>markup snippet at the top of
1741 <ul class=domTree><li class=t10>DOCTYPE: <code><a href=#the-html-element-0>html</a></code><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><ul><li class=t3><code>#text</code>: <span title="">⏎␣␣</span><li class=t1><code><a href=#the-title-element-0>title</a></code><ul><li class=t3><code>#text</code>: <span title="">Sample page</span></ul><li class=t3><code>#text</code>: <span title="">⏎␣</span></ul><li class=t3><code>#text</code>: <span title="">⏎␣</span><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t3><code>#text</code>: <span title="">⏎␣␣</span><li class=t1><code><a hrefhref=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">This is a </span><li class=t1><code><a href=#the-a-element>a</a></code> <span class=t2 title=""><code class="attribute name">href</code>="<code class="attribute value">demo.html</code>"</span><ul><li class=t3><code>#text</code>: <span title="">simple</span></ul><li class=t3><code>#text</code>: <span title=""> sample.</span></ul><li class=t3><code>#text</code>: <span title="">⏎␣␣</span><li class=t8><code>#comment</code>: <span title=""> this is a comment </span><li class=t3><code>#text</code>: <span title="">⏎␣⏎</span></ul></ul></ul><p>The <a href=#root-element>root element</a> of this tree is the
1742 <code><a href=#the-html-element-0>html</a></code> element, which is the element always found at the
1743 root of HTML documents. It contains two elements, <code><a href=#the-head-element-0>head</a></code>
1744 and <code><a href=#the-body-element-0>body</a></code>, as well as a text node between them.</p>
1751 <p>The <code><a href=#the-head-element-0>head</a></code> element contains a <code><a href=#the-title-element-0>title</a></code>
1753 page". Similarly, the <code><a href=#the-body-element-0>body</a></code> element contains an
1754 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> element, a <code><a href=#the-p-element>p</a></code> element, and a
1759 be embedded using the <code><a href=#script>script</a></code> element or using
1760 <a href=#event-handler-content-attributes>event handler content attributes</a>. For example, here is
1762 <code><a href=#the-output-element>output</a></code> element to say "Hello World":</p>
1764 <pre><<a href=#the-form-element>form</a> <a href=#attr-form-name title=attr-form-name>name</a>="main">
1765 Result: <<a href=#the-output-element>output</a> <a href=#attr-fe-name title=attr-fe-name>name</a>="result"></output>
1766 <<a href=#script>script</a>>
1767 <a href=#htmldocument title=HTMLDocument>document</a>.<a href=#dom-document-forms title=dom-document-forms>forms</a>.main.<a href=#dom-form-elements title=dom-form-elements>elements</a>.result.<a href=#dom-output-value title=dom-output-value>value</a> = 'Hello World';
1773 instance, a link (e.g. the <code><a href=#the-a-element>a</a></code> element in the tree above)
1774 can have its "<code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>"
1777 <pre>var a = <a href=#htmldocument title=HTMLDocument>document</a>.<a href=#dom-document-links title=dom-document-links>links</a>[0]; // obtain the first link in the document
1778 a.<a href=#dom-a-href title=dom-a-href>href</a> = 'sample.html'; // change the destination URL of the link
1779 a.<a href=#dom-uda-protocol title=dom-uda-protocol>protocol</a> = 'https'; // change just the scheme part of the URL
1780 a.setAttribute('href', 'http://example.com/'); // change the content attribute directly</pre>
1897 <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute and the
1898 <code><a href=#the-style-element>style</a></code> element. Use of the <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute is somewhat discouraged in
1903 <code><a href=#the-style-element>style</a></code> element can be useful in syndication or for
1910 media-independent: <code><a href=#the-b-element>b</a></code>, <code><a href=#the-i-element>i</a></code>, <code><a href=#the-hr-element>hr</a></code>,
1911 and <code><a href=#the-small-element>small</a></code>.</p>
1931 with an <code><a href=#the-hr-element>hr</a></code> element that is an <em>earlier</em>
1932 sibling of the corresponding <code><a href=#the-table-element>table</a></code> element:</p>
1948 encountering a <a href=#parse-error>parse error</a>.</p>
2022 <pre class=bad><a href="?hello=1&world=2">Demo</a></pre>
2028 <pre class=bad><a href="?original=1&copy=2">Compare</a></pre>
2037 <pre><a href="?hello=1&world=2">Demo</a> <!-- &world is ok, since it's not a named character reference --></pre>
2038 <pre><a href="?original=1&amp;copy=2">Compare</a> <!-- the & has to be escaped, since &copy <em>is</em> a named character reference --></pre>
2065 trigger <a href=#no-quirks-mode>no-quirks mode</a>, because the behavior of
2066 legacy user agents in <a href=#quirks-mode>quirks mode</a> is often largely
2103 following to be an <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> heading or an <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>
2180 nesting a <code><a href=#the-section-element>section</a></code> element inside a <code><a href=#the-kbd-element>kbd</a></code>
2207 content models of the <code><a href=#the-ul-element>ul</a></code> element, which only allows
2208 <code><a href=#the-li-element>li</a></code> element children. Lists by definition consist just
2209 of zero or more list items, so if a <code><a href=#the-ul-element>ul</a></code> element
2210 contains something other than an <code><a href=#the-li-element>li</a></code> element, it's not
2225 <p class=example>For example, <code><a href=#the-div-element>div</a></code> elements are
2226 rendered as block boxes, and <code><a href=#the-span-element>span</a></code> elements as inline
2228 confusing; since either nesting just <code><a href=#the-div-element>div</a></code> elements, or
2229 nesting just <code><a href=#the-span-element>span</a></code> elements, or nesting
2230 <code><a href=#the-span-element>span</a></code> elements inside <code><a href=#the-div-element>div</a></code> elements all
2231 serve the same purpose as nesting a <code><a href=#the-div-element>div</a></code> element in a
2232 <code><a href=#the-span-element>span</a></code> element, but only the latter involves a block
2236 <a href=#interactive-content>interactive content</a> cannot be nested. For example, a
2237 <code><a href=#the-button-element>button</a></code> element cannot contain a <code><a href=#the-textarea-element>textarea</a></code>
2252 <p class=example>For example, setting the <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute to the value
2269 <p class=example>For example, the <code><a href=#the-area-element>area</a></code> element's
2270 <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute, despite
2271 accepting both <code title=attr-area-shape-keyword-circ><a href=#attr-area-shape-keyword-circ>circ</a></code> and <code title=attr-area-shape-keyword-circle><a href=#attr-area-shape-keyword-circle>circle</a></code> values in
2272 practice as synonyms, disallows the use of the <code title=attr-area-shape-keyword-circ><a href=#attr-area-shape-keyword-circ>circ</a></code> value, so as to
2291 <p>For example, a <code><a href=#the-form-element>form</a></code> element isn't allowed inside
2292 <a href=#phrasing-content>phrasing content</a>, because when parsed as HTML, a
2293 <code><a href=#the-form-element>form</a></code> element's start tag will imply a <code><a href=#the-p-element>p</a></code>
2295 <a href=#paragraph title=paragraph>paragraphs</a>, not one:</p>
2316 to have two <code title=attr-id><a href=#the-id-attribute>id</a></code> attributes with the
2333 <p class=example>For example, a <code><a href=#script>script</a></code> element's
2334 <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute causes the
2340 non-conforming to have executable script in a <code><a href=#script>script</a></code>
2341 element when the <code title=attr-script-src><a href=#attr-script-src>src</a></code>
2363 rules surrounding the <code title=attr-lang><a href=#attr-lang>lang</a></code> and
2364 <code title=attr-xml-lang><a href=#attr-xml-lang>xml:lang</a></code> attributes intended
2385 <p class=example>For example, limiting the values of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute that start
2414 <dl><dt><cite>Character Model for the World Wide Web 1.0: Fundamentals</cite> <a href=#refsCHARMOD>[CHARMOD]</a></dt>
2426 <dt><cite>Unicode Security Considerations</cite> <a href=#refsUTR36>[UTR36]</a></dt>
2438 <dt><cite>Web Content Accessibility Guidelines (WCAG) 2.0</cite> <a href=#refsWCAG>[WCAG]</a></dt>
2450 <dt class=impl><cite>Authoring Tool Accessibility Guidelines (ATAG) 2.0</cite> <a href=#refsATAG>[ATAG]</a></dt>
2460 <dt class=impl><cite>User Agent Accessibility Guidelines (UAAG) 2.0</cite> <a href=#refsUAAG>[UAAG]</a></dt>
2488 to <a href=#syntax>the HTML syntax</a> or <a href=#the-xhtml-syntax>the XHTML syntax</a>, it
2537 in this specification as a <dfn title="">resource</dfn>. <a href=#refsHTTP>[HTTP]</a> <a href=#refsRFC3986>[RFC3986]</a></p>
2543 the CSS specifications. <a href=#refsRFC2046>[RFC2046]</a> <a href=#refsMQ>[MQ]</a></p>
2546 of RFC 2616. In particular, a <a href=#valid-mime-type>valid MIME type</a> may
2547 include MIME type parameters. <a href=#refsHTTP>[HTTP]</a></p>
2553 type and subtype, with no MIME Type parameters. <a href=#refsHTTP>[HTTP]</a></p>
2555 <p>The term <dfn id=html-mime-type>HTML MIME type</dfn> is used to refer to the <a href=#mime-type title="MIME type">MIME types</a> <code><a href=#text/html>text/html</a></code> and
2556 <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>.</p>
2562 only <code title="">@import</code> rules introduce <a href=#critical-subresources>critical
2584 match the <a href=http://www.w3.org/TR/REC-xml/#NT-Name><code title="">Name</code></a> production defined in XML, they contain no
2586 not an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string
2587 "<code title="">xml</code>". <a href=#refsXML>[XML]</a></p>
2589 <p>The term <dfn id=xml-mime-type>XML MIME type</dfn> is used to refer to the <a href=#mime-type title="MIME type">MIME types</a> <code title="">text/xml</code>,
2590 <code title="">application/xml</code>, and any <a href=#mime-type>MIME
2591 type</a> whose subtype ends with the four characters "<code title="">+xml</code>". <a href=#refsRFC3023>[RFC3023]</a></p>
2600 document, then the node's <a href=#root-element>root element</a> is indeed the
2604 <p>When an element's <a href=#root-element>root element</a> is the root element
2605 of a <code><a href=#document>Document</a></code>, it is said to be <dfn id=in-a-document>in a
2607 document</dfn> when its <a href=#root-element>root element</a> changes and is now
2608 the document's <a href=#root-element>root element</a>. Analogously, an element is
2610 document">removed from a document</dfn> when its <a href=#root-element>root
2611 element</a> changes from being the document's <a href=#root-element>root
2615 node's <a href=#root-element>root element</a>. When a node is <a href=#in-a-document>in a
2616 <code>Document</code></a>, its <a href=#home-subtree>home subtree</a> is that
2617 <code><a href=#document>Document</a></code>'s tree.</p>
2619 <p>The <code><a href=#document>Document</a></code> of a <code><a href=#node>Node</a></code> (such as an
2620 element) is the <code><a href=#document>Document</a></code> that the <code><a href=#node>Node</a></code>'s
2622 <code><a href=#node>Node</a></code> is <a href=#in-a-document>in a <code>Document</code></a> then
2623 that <code><a href=#document>Document</a></code> is always the <code><a href=#node>Node</a></code>'s
2624 <code><a href=#document>Document</a></code>, and the <code><a href=#node>Node</a></code>'s <code title="">ownerDocument</code> IDL attribute thus always returns that
2625 <code><a href=#document>Document</a></code>.</p>
2628 traversal of DOM nodes involved (through the <code title=dom-Node-parentNode><a href=#dom-node-parentnode>parentNode</a></code>/<code title=dom-Node-childNodes><a href=#dom-node-childnodes>childNodes</a></code> relationship).</p>
2635 <p>The term <dfn id=text-node>text node</dfn> refers to any <code><a href=#text>Text</a></code>
2636 node, including <code><a href=#cdatasection>CDATASection</a></code> nodes; specifically, any
2637 <code><a href=#node>Node</a></code> with node type <code title="">TEXT_NODE</code> (3)
2638 or <code title="">CDATA_SECTION_NODE</code> (4). <a href=#refsDOMCORE>[DOMCORE]</a></p>
2665 http://krijnhoetmer.nl/irc-logs/webapps/20091218 --> <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
2672 user agent's rendering of a <code><a href=#document>Document</a></code> object, but that
2673 neither act as <a href=#child-browsing-context title="child browsing context">child browsing
2674 contexts</a> of the <code><a href=#document>Document</a></code> nor introduce any
2675 <code><a href=#node>Node</a></code> objects to the <code><a href=#document>Document</a></code>'s DOM.</p>
2683 <a href=#plugin>plugin</a>.</p> <!-- because of the way <object> handles
2688 that is instantiated in a <a href=#browsing-context>browsing context</a> when the
2700 converters or have built-in support for certain types. <a href=#refsNPAPI>[NPAPI]</a></p>
2703 interacting with external content intended for <a href=#plugin title=plugin>plugins</a>. When third-party software is run with
2714 encoding's name, if none of the aliases are so labeled. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
2723 characters as those bytes in ANSI_X3.4-1968 (US-ASCII). <a href=#refsRFC1345>[RFC1345]</a></p>
2739 that is not a surrogate code point). <a href=#refsUNICODE>[UNICODE]</a></p>
2759 not appear in all uppercase letters in this specification. <a href=#refsRFC2119>[RFC2119]</a></p>
2796 <p>Web browsers that support <a href=#the-xhtml-syntax>the XHTML syntax</a> must
2797 process elements and attributes from the <a href=#html-namespace-0>HTML
2804 finding an XHTML <code><a href=#script>script</a></code> element in an XML document,
2808 would instead treat the <code><a href=#script>script</a></code> element as an opaque
2811 <p>Web browsers that support <a href=#syntax>the HTML syntax</a> must
2812 process documents labeled with an <a href=#html-mime-type>HTML MIME type</a> as
2818 described in the Web IDL specification. <a href=#refsWEBIDL>[WEBIDL]</a></p>
2823 example, the <code><a href=#script>script</a></code> element in the example above
2824 would still implement the <code><a href=#htmlscriptelement>HTMLScriptElement</a></code>
2841 presentation user agents will also opt to <a href=#non-scripted>lack scripting support</a>.</p>
2879 content of a <code><a href=#the-blockquote-element>blockquote</a></code> element is not a quote,
2881 do not have to check that <code><a href=#the-blockquote-element>blockquote</a></code> elements only
2885 conforms when parsed without a <a href=#browsing-context>browsing context</a>
2887 <a href=#scripting-flag>scripting flag</a> is disabled), and should also check
2888 that the input document conforms when parsed with a <a href=#browsing-context>browsing
2892 "MUST" requirement because it has been proven to be impossible. <a href=#refsCOMPUTABLE>[COMPUTABLE]</a>)</p>
2935 <p class=example>A tool that generates <a href=#outline title=outline>document outlines</a> but increases the nesting
2946 <a href=#conforming-documents>conforming documents</a>. Conformance criteria that apply
2956 <code><a href=#the-address-element>address</a></code> element for arbitrary contact information;
2961 mean, though, that authoring tools can use <code><a href=#the-address-element>address</a></code>
2993 elements, like <code><a href=#the-div-element>div</a></code>, <code><a href=#the-b-element>b</a></code>, <code><a href=#the-i-element>i</a></code>,
2994 and <code><a href=#the-span-element>span</a></code> and making liberal use of the <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute.</p>
3038 (referred to as <a href=#the-xhtml-syntax>the XHTML syntax</a>), and one using a <a href=#writing>custom format</a> inspired by SGML (referred to as
3039 <a href=#syntax>the HTML syntax</a>). <span class=impl>Implementations
3068 <p>Implementations that support <a href=#the-xhtml-syntax>the XHTML syntax</a> must
3071 serialization with namespaces. <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a></p>
3083 <a href=#refsDOMCORE>[DOMCORE]</a></p>
3088 interfaces. <a href=#refsDOMCORE>[DOMCORE]</a> <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
3091 Core specification: <a href=#refsDOMCORE>[DOMCORE]</a></p>
3118 specification: <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
3130 Range specification: <a href=#refsDOMRANGE>[DOMRANGE]</a></p>
3153 specification. <a href=#refsWEBIDL>[WEBIDL]</a></p>
3157 (NaN) value, a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be
3163 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised.</p>
3172 support JavaScript as the underlying scripting language. <a href=#refsECMA262>[ECMA262]</a></p>
3176 JavaScript is more widely known. Similarly, the <a href=#mime-type>MIME
3179 commonly used type, <a href=#willful-violation title="willful violation">despite it
3181 4329. <a href=#refsRFC4329>[RFC4329]</a></p>
3190 language. <a href=#refsMQ>[MQ]</a></p>
3198 <p>Implementations must support the semantics of <a href=#url title=URL>URLs</a> defined in the URI and IRI specifications,
3201 (IDNA)</cite> specification. <a href=#refsRFC3986>[RFC3986]</a>
3202 <a href=#refsRFC3987>[RFC3987]</a> <a href=#refsRFC3490>[RFC3490]</a>
3227 <ul><li>Authors can use the <code title=attr-class><a href=#classes>class</a></code>
3235 server-side site-wide scripts to process using the <code title=attr-data-*><a href=#attr-data-*>data-*=""</a></code> attributes. These are
3240 <li>Authors can use the <code title=meta><a href=#meta><meta name=""
3242 registering <a href=#concept-meta-extensions title=concept-meta-extensions>extensions to the
3245 <li>Authors can use the <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel=""</a></code> mechanism to annotate
3246 links with specific meanings by registering <a href=#concept-rel-extensions title=concept-rel-extensions> extensions to the predefined set of
3249 <li>Authors can embed raw data using the <code title=script><a href=#script><script type=""></a></code> mechanism with a custom
3252 <li>Authors can create <a href=#plugin title=plugin>plugins</a> and
3253 invoke them using the <code><a href=#the-embed-element>embed</a></code> element. This is how Flash
3260 <li>Authors can use the microdata feature (the <code title=attr-item>item=""</code> and <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop=""</a></code> attributes) to embed
3283 <a href=#syntax>the HTML syntax</a>, extensions should be limited to new
3329 appears in a form's <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code>
3331 violate the definition of <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> given in this
3380 operation to compare the two strings. <a href=#refsUNICODE>[UNICODE]</a></p>
3438 <code title="">PropList.txt</code> data file. <a href=#refsUNICODE>[UNICODE]</a></p>
3470 must <a href=#collect-a-sequence-of-characters>collect a sequence of characters</a> that are <a href=#space-character title="space character">space characters</a>. The step <dfn id=skip-white_space-characters>skip
3472 <a href=#collect-a-sequence-of-characters>collect a sequence of characters</a> that are
3473 <a href=#white_space>White_Space</a> characters. In both cases, the collected
3474 characters are not used. <a href=#refsUNICODE>[UNICODE]</a></p>
3481 whitespace</dfn> from a string, the user agent must remove all <a href=#space-character title="space character">space characters</a> that are at the
3499 string or a value that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a>
3523 must be an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for one of the
3527 <p>When the attribute is specified, if its value is an <a href=#ascii-case-insensitive>ASCII
3554 <p>A <a href=#valid-non-negative-integer>valid non-negative integer</a> represents the number
3572 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
3589 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
3605 <p>A <a href=#valid-integer>valid integer</a> without a U+002D HYPHEN-MINUS (-)
3607 string of digits. A <a href=#valid-integer>valid integer</a> <em>with</em> a
3615 <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative integers">rules for
3632 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
3667 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
3709 </ol><p>A <a href=#valid-floating-point-number>valid floating point number</a> represents the number
3724 <a href=#valid-floating-point-number title="valid floating point number">valid floating point
3756 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
3782 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
3855 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
3914 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
3921 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are
3934 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
3987 <p>A <dfn id=valid-list-of-integers>valid list of integers</dfn> is a number of <a href=#valid-integer title="valid integer">valid integers</a> separated by U+002C
3988 COMMA characters, with no other characters (e.g. no <a href=#space-character title="space character">space characters</a>). In addition, there
4272 <li><p><a href=#split-a-string-on-commas title="split a string on commas">Split the string <var title="">raw input</var> on commas</a>. Let <var title="">raw
4297 (9), <a href=#collect-a-sequence-of-characters>collect a sequence of characters</a> in the range
4306 <ol><li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> consisting
4307 of <a href=#space-character title="space character">space characters</a> and
4312 <li><p>Remove all <a href=#space-character title="space character">space
4334 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
4367 Gregorian calendar. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4382 in exactly the same manner. <a href=#refsISO8601>[ISO8601]</a></p>
4391 information beyond a year and a month. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4397 <ol><li>Four or more <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>, representing <var title="">year</var>, where <var title="">year</var> > 0</li>
4401 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4418 <li><p><a href=#parse-a-month-component>Parse a month component</a> to obtain <var title="">year</var> and <var title="">month</var>. If this returns
4431 <ol><li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4444 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4463 of a year, a month, and a day. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4470 <ol><li>A <a href=#valid-month-string>valid month string</a>, representing <var title="">year</var> and <var title="">month</var></li>
4474 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4476 1 ≤ <var title="">day</var> ≤ <var title="">maxday</var> where <var title="">maxday</var> is the <a href=#number-of-days-in-month-month-of-year-year title="number of days in month month of year year">number of days
4492 <li><p><a href=#parse-a-date-component>Parse a date component</a> to obtain <var title="">year</var>, <var title="">month</var>, and <var title="">day</var>. If this returns nothing, then fail.</p>
4506 <ol><li><p><a href=#parse-a-month-component>Parse a month component</a> to obtain <var title="">year</var> and <var title="">month</var>. If this returns
4509 <li><p>Let <var title="">maxday</var> be the <a href=#number-of-days-in-month-month-of-year-year>number of days
4516 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4542 <ol><li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4548 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4557 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4566 <li>One or more <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>, representing the
4589 <li><p><a href=#parse-a-time-component>Parse a time component</a> to obtain <var title="">hour</var>, <var title="">minute</var>, and <var title="">second</var>. If this returns nothing, then fail.</p>
4604 <ol><li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4618 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4645 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are
4674 a time zone. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4680 <ol><li>A <a href=#valid-date-string>valid date string</a> representing the date.</li>
4684 <li>A <a href=#valid-time-string>valid time string</a> representing the time.</li>
4699 <li><p><a href=#parse-a-date-component>Parse a date component</a> to obtain <var title="">year</var>, <var title="">month</var>, and <var title="">day</var>. If this returns nothing, then fail.</p>
4704 <li><p><a href=#parse-a-time-component>Parse a time component</a> to obtain <var title="">hour</var>, <var title="">minute</var>, and <var title="">second</var>. If this returns nothing, then fail.</p>
4727 minutes. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4733 <ol><li>A <a href=#valid-date-string>valid date string</a> representing the date</li>
4737 <li>A <a href=#valid-time-string>valid time string</a> representing the time</li>
4750 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4756 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4771 <p>The following are some examples of dates written as <a href=#valid-global-date-and-time-string title="valid global date and time string">valid global date and
4821 string</dfn> <var title="">datetime</var> is the <a href=#valid-global-date-and-time-string>valid global
4840 <li><p><a href=#parse-a-date-component>Parse a date component</a> to obtain <var title="">year</var>, <var title="">month</var>, and <var title="">day</var>. If this returns nothing, then fail.</p>
4845 <li><p><a href=#parse-a-time-component>Parse a time component</a> to obtain <var title="">hour</var>, <var title="">minute</var>, and <var title="">second</var>. If this returns nothing, then fail.</p>
4849 <li><p><a href=#parse-a-time-zone-offset-component>Parse a time-zone offset component</a> to obtain
4898 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4913 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
4944 week-year, and vice versa. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
4968 <ol><li>Four or more <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>, representing <var title="">year</var>, where <var title="">year</var> > 0</li>
4974 <li>Two <a href=#concept-datetime-digit title=concept-datetime-digit>digits</a>,
4977 <a href=#week-number-of-the-last-day>week number of the last day</a> of week-year <var title="">year</var></li>
4992 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
5008 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
5014 <li><p>Let <var title="">maxweek</var> be the <a href=#week-number-of-the-last-day>week number of
5034 <ul><li>A <a href=#valid-date-string>valid date string</a>.</li>
5036 <li>A <a href=#valid-time-string>valid time string</a>.</li>
5038 <li>A <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</li>
5041 it consists of zero or more <a href=#white_space>White_Space</a> characters,
5042 followed by a <a href=#valid-date-or-time-string>valid date or time string</a>, followed by
5043 zero or more further <a href=#white_space>White_Space</a> characters.</p>
5048 <ul><li>A <a href=#valid-date-string>valid date string</a>.</li>
5050 <li>A <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</li>
5053 time</dfn> if it consists of zero or more <a href=#white_space>White_Space</a>
5054 characters, followed by a <a href=#valid-date-string-with-optional-time>valid date string with optional
5056 <a href=#white_space>White_Space</a> characters.</p>
5063 be used. The algorithm will return either a <a href=#concept-date title=concept-date>date</a>, a <a href=#concept-time title=concept-time>time</a>, a <a href=#concept-datetime title=concept-datetime>global date and time</a>, or nothing. If
5073 <li><p>For the <i>in content</i> variant: <a href=#skip-white_space-characters>skip White_Space
5081 <li><p><a href=#parse-a-date-component>Parse a date component</a> to obtain <var title="">year</var>, <var title="">month</var>, and <var title="">day</var>. If this fails, then set the <var title="">date
5101 <a href=#parse-a-time-component>parse a time component</a> to obtain <var title="">hour</var>, <var title="">minute</var>, and <var title="">second</var>. If this returns nothing, then fail.</li>
5105 <li><p>If the <var title="">date present</var> and <var title="">time present</var> flags are both true, <a href=#parse-a-time-zone-offset-component>parse a
5109 <li><p>For the <i>in content</i> variant: <a href=#skip-white_space-characters>skip White_Space
5143 the color respectively, in the sRGB color space. <a href=#refsSRGB>[SRGB]</a></p>
5156 <a href=#valid-simple-color>valid simple color</a> and doesn't use any characters in
5165 value. This algorithm will return either a <a href=#simple-color>simple color</a>
5183 <li><p>Let <var title="">result</var> be a <a href=#simple-color>simple
5198 <a href=#simple-color>simple color</a> are as given in the following
5212 <a href=#valid-lowercase-simple-color>valid lowercase simple color</a>.</li>
5219 either a <a href=#simple-color>simple color</a> or an error.</p>
5227 <li><p>If <var title="">input</var> is an <a href=#ascii-case-insensitive>ASCII
5230 <li><p>If <var title="">input</var> is an <a href=#ascii-case-insensitive>ASCII
5232 <a href=http://www.w3.org/TR/css3-color/#svg-color>SVG color
5233 keywords</a> or <a href=http://www.w3.org/TR/css3-color/#css2-system>CSS2 System
5235 the <a href=#simple-color>simple color</a> corresponding to that keyword. <a href=#refsCSSCOLOR>[CSSCOLOR]</a></li>
5246 <ol><li><p>Let <var title="">result</var> be a <a href=#simple-color>simple
5303 <li><p>Let <var title="">result</var> be a <a href=#simple-color>simple
5322 <hr><p class=note>The <a href=#canvas-context-2d title=canvas-context-2d>2D graphics
5332 zero or more words separated by one or more <a href=#space-character title="space
5334 string of one or more characters, none of which are <a href=#space-character title="space character">space characters</a>.</p>
5336 <p>A string containing a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a>
5337 may have leading or trailing <a href=#space-character title="space character">space
5341 <a href=#set-of-space-separated-tokens>set of space-separated tokens</a> where none of the words
5345 <a href=#set-of-space-separated-tokens>set of space-separated tokens</a> where none of the words
5348 <p><a href=#set-of-space-separated-tokens title="set of space-separated tokens">Sets of
5369 <li><p><a href=#skip-whitespace>Skip whitespace</a></li>
5374 <ol><li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are not
5375 <a href=#space-character title="space character">space characters</a>.</li>
5379 <li><p><a href=#skip-whitespace>Skip whitespace</a></li>
5392 will not contain any <a href=#space-character title="space character">space
5405 <a href=#space-character>space character</a>:</p>
5418 the first character of a token. <a href=#collect-a-sequence-of-characters>Collect a sequence of
5419 characters</a> that are not <a href=#space-character title="space character">space
5424 <ol><li><p><a href=#skip-whitespace>Skip whitespace</a> (in <var title="">input</var>).</li>
5426 <li><p>Remove any <a href=#space-character title="space character">space
5454 more characters, neither beginning nor ending with <a href=#space-character title="space character">space characters</a>, nor containing any
5455 U+002C COMMA characters (,), and optionally surrounded by <a href=#space-character title="space character">space characters</a>.</p>
5462 <p><a href=#set-of-comma-separated-tokens title="set of comma-separated tokens">Sets of
5486 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are not
5490 <li><p>Remove any leading or trailing sequence of <a href=#space-character title="space character">space characters</a> from <var title="">s</var>.</li>
5528 that has an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute whose value
5529 is a <a href=#case-sensitive>case-sensitive</a> match for <var title="">s</var> or
5531 href=#compatibility-caseless>compatibility caseless</a> match for <var title="">s</var>.</li>
5536 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cmap%20name%3D%22T%26eacute%3B%26%23x01F1%3B%26%23x2075%3B%22%3E%3Carea%20href%3D%22%2F%22%20shape%3Drect%20coords%3D0%2C0%2C200%2C200%3E%3C%2Fmap%3E%0A%3Cimg%20usemap%3D%22%23t%26Eacute%3BDZ5%22%20src%3Dimage%3E
5538 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cmap%20name%3D%22T%26eacute%3B%26%23x01F1%3B%26%23x2075%3B%26%23xFB01%3B%22%3E%3Carea%20href%3D%22%2F%22%20shape%3Drect%20coords%3D0%2C0%2C200%2C200%3E%3C%2Fmap%3E%0A%3Cimg%20usemap%3D%22%23t%26Eacute%3BDZ5F%26%23x0131%3B%26%23x0307%3B%22%20src%3Dimage%3E
5549 Queries specification. <a href=#refsMQ>[MQ]</a></p>
5552 the empty string, a string consisting of only <a href=#space-character title="space
5555 Media Queries specification. <a href=#refsMQ>[MQ]</a></p>
5568 <p>A <a href=#url>URL</a> is a <dfn id=valid-url>valid URL</dfn> if at least one of
5571 <ul><li><p>The <a href=#url>URL</a> is a valid URI reference <a href=#refsRFC3986>[RFC3986]</a>.</li>
5573 <li><p>The <a href=#url>URL</a> is a valid IRI reference and it has no
5574 query component. <a href=#refsRFC3987>[RFC3987]</a></li>
5576 <li><p>The <a href=#url>URL</a> is a valid IRI reference and its query
5577 component contains no unescaped non-ASCII characters. <a href=#refsRFC3987>[RFC3987]</a></li>
5579 <li><p>The <a href=#url>URL</a> is a valid IRI reference and the <a href="#document's-character-encoding" title="document's character encoding">character encoding</a> of
5580 the URL's <code><a href=#document>Document</a></code> is UTF-8 or UTF-16. <a href=#refsRFC3987>[RFC3987]</a></li>
5583 <a href=#valid-url>valid URL</a> but it is not the empty string.</p>
5586 spaces</dfn> if, after <a href=#strip-leading-and-trailing-whitespace title="strip leading and trailing
5588 it, it is a <a href=#valid-url>valid URL</a>.</p>
5591 spaces</dfn> if, after <a href=#strip-leading-and-trailing-whitespace title="strip leading and trailing
5593 it, it is a <a href=#valid-non-empty-url>valid non-empty URL</a>.</p>
5599 an address</span> algorithm defined by the IRI specification. <a href=#refsRFC3987>[RFC3987]</a></p>
5612 </ul><hr><p>To <dfn id=resolve-a-url>resolve a URL</dfn> to an <a href=#absolute-url>absolute URL</a>
5613 relative to either another <a href=#absolute-url>absolute URL</a> or an element,
5617 <ol><li><p>Let <var title="">url</var> be the <a href=#url>URL</a> being
5632 <dd>The URL character encoding is the <a href="#script's-url-character-encoding">script's URL character
5637 <dd>The node has a <code><a href=#document>Document</a></code>, and the URL character
5638 encoding is the <a href="#document's-character-encoding">document's character encoding</a>.</dd>
5647 <p>If the algorithm was invoked with an <a href=#absolute-url>absolute URL</a>
5649 <a href=#absolute-url>absolute URL</a>.</p>
5654 <a href=#document-base-url>document base URL</a> of the <code><a href=#document>Document</a></code> that
5655 owns the element. <a href=#refsXMLBASE>[XMLBASE]</a></p>
5658 must act as if all <code><a href=#document>Document</a></code> objects represented XML
5661 <p class=note>It is possible for <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attributes to be present
5664 however, as <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attributes
5665 are not allowed in <a href=#html-documents>HTML documents</a>.)</p>
5667 <p>The <dfn id=document-base-url>document base URL</dfn> of a <code><a href=#document>Document</a></code>
5668 object is the <a href=#absolute-url>absolute URL</a> obtained by running these
5671 <ol><li><p>Let <var title="">fallback base url</var> be <a href="#the-document's-address">the
5684 <code><a href=#about:blank>about:blank</a></code>, and the <code><a href=#document>Document</a></code>'s
5685 <a href=#browsing-context>browsing context</a> has a <a href=#creator-browsing-context>creator browsing
5687 be the <a href=#document-base-url>document base URL</a> of the <a href=#creator-document>creator
5692 <li><p>If there is no <code><a href=#the-base-element>base</a></code> element that is both a
5693 child of <a href=#the-head-element>the <code>head</code> element</a> and has an
5694 <code title=attr-base-href><a href=#attr-base-href>href</a></code> attribute, then the
5695 <a href=#document-base-url>document base URL</a> is <var title="">fallback base
5699 <code title=attr-base-href><a href=#attr-base-href>href</a></code> attribute of the first
5702 <li><p><a href=#resolve-a-url title="resolve a URL">Resolve</a> <var title="">url</var> relative to <var title="">fallback base
5703 url</var> (thus, the <code><a href=#the-base-element>base</a></code> <code title=attr-base-href><a href=#attr-base-href>href</a></code> attribute isn't affected by
5704 <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attributes).</li>
5706 <li><p>The <a href=#document-base-url>document base URL</a> is the result of the
5713 resolve <var title="">url</var> relative to <var title="">base</var> using encoding <var title="">encoding</var>. <a href=#refsRFC3987>[RFC3987]</a></li>
5717 <p>A <a href=#url>URL</a> is an <dfn id=absolute-url>absolute URL</dfn> if <a href=#resolve-a-url title="resolve a url">resolving</a> it results in the same output
5721 <p>An <a href=#absolute-url>absolute URL</a> is a <dfn id=hierarchical-url>hierarchical URL</dfn> if,
5722 when <a href=#resolve-a-url title="resolve a url">resolved</a> and then <a href=#parse-a-url title="parse a url">parsed</a>, there is a character immediately
5723 after the <a href=#url-scheme title=url-scheme><scheme></a> component
5726 <p>An <a href=#absolute-url>absolute URL</a> is an <dfn id=authority-based-url>authority-based URL</dfn>
5727 if, when <a href=#resolve-a-url title="resolve a url">resolved</a> and then <a href=#parse-a-url title="parse a url">parsed</a>, there are two characters
5728 immediately after the <a href=#url-scheme title=url-scheme><scheme></a>
5733 unresolvable, <code title="">about:</code> URI, for use in <a href=#syntax-doctype title=syntax-doctype>DOCTYPE</a>s in <a href=#html-documents>HTML
5734 documents</a> when needed for compatibility with XML tools. <a href=#refsABOUT>[ABOUT]</a></p>
5739 <a href="#the-document's-address">the document's address</a> of <a href=#an-iframe-srcdoc-document title="an iframe srcdoc
5740 document"><code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> documents</a>. <a href=#refsABOUT>[ABOUT]</a></p>
5747 <a href=#willful-violation>willful violation</a> of RFC 3986. <a href=#refsRFC3986>[RFC3986]</a></p>
5754 <p>When an <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute
5756 <a href=#affected-by-a-base-url-change>affected by a base URL change</a>.</p>
5758 <p>When a document's <a href=#document-base-url>document base URL</a> changes, all
5759 elements in that document are <a href=#affected-by-a-base-url-change>affected by a base URL
5763 documents have different <a href=#document-base-url title="document base URL">base
5765 <a href=#affected-by-a-base-url-change>affected by a base URL change</a>.</p>
5770 <dl class=switch><dt>If the element is a <a href=#hyperlink title=hyperlink>hyperlink
5775 <p>If the <a href=#absolute-url>absolute URL</a> identified by the hyperlink is
5777 affecting the display, then the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute should be <a href=#resolve-a-url title="resolve a url">re-resolved</a> relative to the element
5780 <p class=example>For example, the CSS <code title=selector-link><a href=#selector-link>:link</a></code>/<code title=selector-visited><a href=#selector-visited>:visited</a></code> pseudo-classes might have
5784 <p>If the hyperlink has a <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute and its <a href=#absolute-url title="absolute URL">absolute URL(s)</a> are being shown to the
5785 user, then the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>
5786 attribute's tokens should be <a href=#resolve-a-url title="resolve a
5793 <dt>If the element is a <code><a href=#the-q-element>q</a></code>, <code><a href=#the-blockquote-element>blockquote</a></code>,
5794 <code><a href=#the-section-element>section</a></code>, <code><a href=#the-article-element>article</a></code>, <code><a href=#the-ins-element>ins</a></code>, or
5795 <code><a href=#the-del-element>del</a></code> element with a <code title="">cite</code>
5800 <p>If the <a href=#absolute-url>absolute URL</a> identified by the <code title="">cite</code> attribute is being shown to the user, or if
5802 <a href=#url>URL</a> should be <a href=#resolve-a-url title="resolve a
5815 displayed by <code><a href=#the-img-element>img</a></code> elements, although subsequent
5816 accesses of the <code title=dom-img-src><a href=#dom-img-src>src</a></code> IDL attribute
5817 from script will return a new <a href=#absolute-url>absolute URL</a> that might
5832 <pre class="idl extract"> attribute DOMString <a href=#dom-uda-protocol title=dom-uda-protocol>protocol</a>;
5833 attribute DOMString <a href=#dom-uda-host title=dom-uda-host>host</a>;
5834 attribute DOMString <a href=#dom-uda-hostname title=dom-uda-hostname>hostname</a>;
5835 attribute DOMString <a href=#dom-uda-port title=dom-uda-port>port</a>;
5836 attribute DOMString <a href
5837 attribute DOMString <a href=#dom-uda-search title=dom-uda-search>search</a>;
5838 attribute DOMString <a href=#dom-uda-hash title=dom-uda-hash>hash</a>;</pre>
5840 <dl class=domintro><dt><var title="">o</var> . <code title=dom-uda-protocol><a href=#dom-uda-protocol>protocol</a></code> [ = <var title="">value</var> ]</dt>
5846 <dt><var title="">o</var> . <code title=dom-uda-host><a href=#dom-uda-host>host</a></code> [ = <var title="">value</var> ]</dt>
5855 <dt><var title="">o</var> . <code title=dom-uda-hostname><a href=#dom-uda-hostname>hostname</a></code> [ = <var title="">value</var> ]</dt>
5861 <dt><var title="">o</var> . <code title=dom-uda-port><a href=#dom-uda-port>port</a></code> [ = <var title="">value</var> ]</dt>
5867 <dt><var title="">o</var> . <code title=dom-uda-pathname><a href=#dom-uda-pathname>pathname</a></code> [ = <var title="">value</var> ]</dt>
5873 <dt><var title="">o</var> . <code title=dom-uda-search><a href=#dom-uda-search>search</a></code> [ = <var title="">value</var> ]</dt>
5879 <dt><var title="">o</var> . <code title=dom-uda-hash><a href=#dom-uda-hash>hash</a></code> [ = <var title="">value</var> ]</dt>
5892 attributes will define an <dfn id=concept-uda-input title=concept-uda-input>input</dfn>, which is a <a href=#url>URL</a>
5900 <p>On getting, if the <a href=#concept-uda-input title=concept-uda-input>input</a>
5901 is an <a href=#absolute-url>absolute URL</a> that fulfills the condition given in
5903 table below, the user agent must return the part of the <a href=#concept-uda-input title=concept-uda-input>input</a> URL given in the "component"
5913 component as given by the "component" column. Then, if the <a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#absolute-url>absolute
5917 URL given by the "component" column in the <a href=#concept-uda-input title=concept-uda-input>input</a> URL with the new value;
5919 equal to the <a href=#concept-uda-input title=concept-uda-input>input</a>. Finally,
5920 the user agent must invoke the <a href=#concept-uda-setter title=concept-uda-setter>common setter action</a> with the
5933 using the <a href=#parse-a-url title="parse a URL">URL parsing rules</a> defined
5944 <td><a href=#url-scheme title=url-scheme><scheme></a>
5951 <td><a href=#url-hostport title=url-hostport><hostport></a>
5952 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>
5956 <td>The new value is not the empty string and <a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>
5958 <td><a href=#url-host title=url-host><host></a>
5959 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>
5963 <td>The new value is not the empty string and <a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>
5965 <td><a href=#url-port title=url-port><port></a>
5966 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>, and contained a <a href=#url-port title=url-port><port></a> component (possibly an empty one)
5972 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is an <a href=#authority-based-url>authority-based URL</a>,
5975 <td><a href=#url-path title=url-path><path></a>
5976 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is a <a href=#hierarchical-url>hierarchical URL</a>
5980 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is hierarchical
5982 <td><a href=#url-query title=url-query><query></a>
5983 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is a <a href=#hierarchical-url>hierarchical URL</a>, and contained a <a href=#url-query title=url-query><query></a> component (possibly an empty one)
5987 <td><a href=#concept-uda-input title=concept-uda-input>input</a> is a <a href=#hierarchical-url>hierarchical URL</a>
5989 <td><a href=#url-fragment title=url-fragment><fragment></a>
5990 <td><a href=#concept-uda-input title=concept-uda-input>input</a> contained a non-empty <a href=#url-fragment title=url-fragment><fragment></a> component
6003 <p>The table below demonstrates how the getter <span class=impl>condition</span> for <code title=dom-uda-search><a href=#dom-uda-search>search</a></code> results in different results
6007 <th> <code title=dom-uda-search><a href=#dom-uda-search>search</a></code> value
6011 <td> No <a href=#url-query title=url-query><query></a> component in input URL.
6014 <td> There is a <a href=#url-query title=url-query><query></a> component, but it is empty.
6018 <td> The <a href=#url-query title=url-query><query></a> component has the value "<code title="">test</code>".
6021 <td> The (empty) <a href=#url-fragment title=url-fragment><fragment></a> component is not part of the <a href=#url-query title=url-query><query></a> component.
6030 <a href=#url>URL</a>, optionally from an origin <i title="">origin</i>,
6045 are obtained</i> as required by HTTP for the <code title=http-referer>Referer</code> (sic) header from <a href="#the-document's-current-address">the
6047 <code><a href=#document>Document</a></code> as given by the following list. <a href=#refsHTTP>[HTTP]</a></p>
6049 <dl class=switch><dt>When <a href=#navigate title=navigate>navigating</a></dt>
6051 <dd>The <a href=#active-document>active document</a> of the <a href=#source-browsing-context>source browsing
6056 <dd>The element's <code><a href=#document>Document</a></code>.</dd>
6060 <dd>The <a href=#entry-script>entry script</a>'s <a href="#script's-document" title="script's
6063 </dl><p>Remove any <a href=#url-fragment title=url-fragment><fragment></a>
6068 <p>If the <a href=#origin>origin</a> of the appropriate
6069 <code><a href=#document>Document</a></code> is not a scheme/host/port tuple, then the
6082 <p>If the resource is identified by an <a href=#absolute-url>absolute URL</a>,
6084 (such as an HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
6095 GET or POST operation, or reading the file from disk, <a href=#concept-js-deref title=concept-js-deref>dereferencing <span title="javascript
6104 header, if the <a href=#fetch title=fetch>fetching algorithm</a> was
6106 a "privacy-sensitive" context</i>. <a href=#refsORIGIN>[ORIGIN]</a></p>
6108 <p>If the resource is identified by the <a href=#url>URL</a>
6120 <ol><li><p>Wait until ownership of the <a href=#storage-mutex>storage mutex</a> can
6121 be taken by this instance of the <a href=#fetch title=fetch>fetching</a> algorithm.</li>
6123 <li><p>Take ownership of the <a href=#storage-mutex>storage mutex</a>.</li>
6125 <li><p>Update the cookies. <a href=#refsCOOKIES>[COOKIES]</a></li>
6127 <li><p>Release the <a href=#storage-mutex>storage mutex</a> so that it is once
6134 <p>If the fetched resource is an HTTP redirect <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>,
6159 the paragraph above. <a href=#refsHTTP>[HTTP]</a></p>
6169 of some description, <a href=#queue-a-task>queue a task</a> that uses the
6173 the data as it is downloaded. The <a href=#task-source>task source</a> for
6174 these <a href=#concept-task title=concept-task>tasks</a> is the
6175 <a href=#networking-task-source>networking task source</a>.</p>
6183 being <a href=#fetch title=fetch>fetched</a> for an instance of this
6187 no known <a href=#concept-fetch-total title=concept-fetch-total>size</a>. (For
6195 <p class=note>The <a href=#application-cache>application cache</a> processing model
6196 introduces some <a href=#changesToNetworkingModel>changes to the
6200 <p class=note>The <a href=#navigate title=navigate>navigation</a>
6205 <p class=note>Whether the <a href=#content-type-sniffing>type
6214 this specification mostly defines behavior in terms of HTTP. <a href=#refsHTTP>[HTTP]</a></p>
6237 to HTTP-over-TLS, as represented by <a href=#url title=url>URLs</a>
6285 specification. <a href=#refsMIMESNIFF>[MIMESNIFF]</a></p>
6291 sequence of octets. <a href=#refsMIMESNIFF>[MIMESNIFF]</a></p>
6297 specification. Both sets of rules return a <a href=#mime-type>MIME type</a> as
6298 their result. <a href=#refsMIMESNIFF>[MIMESNIFF]</a></p>
6305 specification. <a href=#refsMIMESNIFF>[MIMESNIFF]</a></p>
6312 that are an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the word
6347 </ol><p class=note>This requirement is a <a href=#willful-violation>willful violation</a>
6349 compatibility with legacy content. <a href=#refsHTTP>[HTTP]</a></p>
6379 <a href=#url>URL</a>, then on getting, the IDL attribute must <a href=#resolve-a-url title="resolve a url">resolve</a> the value of the content
6381 <a href=#absolute-url>absolute URL</a> if that was successful, or the empty
6389 <a href=#url title=URL>URLs</a>, then on getting, the IDL attribute
6390 must <a href=#split-a-string-on-spaces title="split a string on spaces">split the content
6391 attribute on spaces</a> and return the concatenation of <a href=#resolve-a-url title="resolve a URL">resolving</a> each token URL to an
6392 <a href=#absolute-url>absolute URL</a> relative to the element, with a single
6401 content attribute is an <a href=#enumerated-attribute>enumerated attribute</a>, and the
6407 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for one of the keywords
6424 set to true. (This corresponds to the rules for <a href=#boolean-attribute title="boolean
6429 parsed according to the <a href=#rules-for-parsing-integers title="rules for parsing
6437 a <a href=#valid-integer>valid integer</a> and then that string must be used as
6443 according to the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
6450 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception. Otherwise, the given value
6452 number as a <a href=#valid-non-negative-integer>valid non-negative integer</a> and then that
6457 attribute must be parsed according to the <a href=#rules-for-parsing-non-negative-integers>rules for parsing
6464 possible string representing the number as a <a href=#valid-non-negative-integer>valid
6473 <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a>, and if that is
6479 must fire an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception. Otherwise, the
6481 representing the number as a <a href=#valid-non-negative-integer>valid non-negative integer</a>
6487 be parsed according to the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point
6492 be converted to the <a href=#best-representation-of-the-number-as-a-floating-point-number>best representation of the number as a
6497 throw an exception on setting, as <a href=#float-nan>defined
6501 <code><a href=#domtokenlist>DOMTokenList</a></code> or <code><a href=#domsettabletokenlist>DOMSettableTokenList</a></code>, then
6502 on getting it must return a <code><a href=#domtokenlist>DOMTokenList</a></code> or
6503 <code><a href=#domsettabletokenlist>DOMSettableTokenList</a></code> object (as appropriate) whose
6511 empty string. The same <code><a href=#domtokenlist>DOMTokenList</a></code> or
6512 <code><a href=#domsettabletokenlist>DOMSettableTokenList</a></code> object must be returned every time
6517 <p>If an element with no attributes has its <code title=dom-tokenlist-remove><a href=#dom-tokenlist-remove>element.classList.remove()</a></code>
6520 empty string. However, if the <code title=dom-tokenlist-add><a href=#dom-tokenlist-add>element.classList.add()</a></code> method is
6521 then invoked, a <code title=attr-class><a href=#classes>class</a></code> attribute
6528 <code><a href=#htmlelement>HTMLElement</a></code>, or an interface that descends from
6529 <code><a href=#htmlelement>HTMLElement</a></code>, then, on getting, it must run the
6536 <li>Let <var title="">candidate</var> be the element that the <code title=dom-Document-getElementById><a href=#dom-document-getelementbyid>document.getElementById()</a></code> method
6547 </ol><p>On setting, if the given element has an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute, then the content attribute must
6548 be set to the value of that <code title=attr-id><a href=#the-id-attribute>id</a></code>
6557 <p>The <code><a href=#htmlcollection>HTMLCollection</a></code>, <code><a href=#htmlallcollection>HTMLAllCollection</a></code>,
6558 <code><a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a></code>,
6559 <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code>, and
6560 <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> interfaces represent various
6564 <p>When a <a href=#collections title=collections>collection</a> is created, a
6567 <p class=example>For example, when the <code><a href=#htmlcollection>HTMLCollection</a></code>
6568 object for the <code title=dom-document-images><a href=#dom-document-images>document.images</a></code> attribute is
6570 <code><a href=#the-img-element>img</a></code> elements, and rooted at the root of the
6573 <p>The <a href=#collections title=collections>collection</a> then <dfn id=represented-by-the-collection title="represented by the collection">represents</dfn> a
6574 <a href=#live>live</a> view of the subtree rooted at the collection's
6578 <a href=#tree-order>tree order</a>.</span></p>
6582 <p class=note>The <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> list is
6593 <p>The <code><a href=#htmlcollection>HTMLCollection</a></code> interface represents a generic
6594 <a href=#collections title=collections>collection</a> of elements.</p>
6597 readonly attribute unsigned long <a href=#dom-htmlcollection-length title=dom-HTMLCollection-length>length</a>;
6598 caller getter object <a href=#dom-htmlcollection-item title=dom-HTMLCollection-item>item</a>(in unsigned long index); // only returns Element
6599 caller getter object <a href=#dom-htmlcollection-nameditem title=dom-HTMLCollection-namedItem>namedItem</a>(in DOMString name); // only returns Element
6602 <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLCollection-length><a href=#dom-htmlcollection-length>length</a></code></dt>
6607 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>item</a></code>(<var title="">index</var>)</dt>
6611 <p>Returns the item with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
6615 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
6619 <p>Returns the first item with <a href=#concept-id title=concept-id>ID</a> or name <var title="">name</var>
6621 <p>Returns null if no element with that <a href=#concept-id title=concept-id>ID</a> or name could be found.</p>
6622 <p>Only <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
6623 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
6624 <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, and
6625 <code><a href=#the-object-element>object</a></code> elements can have a name for the purpose of
6632 the number of nodes <a href=#represented-by-the-collection>represented by the collection</a>. If
6637 attribute must return the number of nodes <a href=#represented-by-the-collection>represented by the
6645 <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
6646 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
6647 <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, and
6648 <code><a href=#the-object-element>object</a></code> element <a href=#represented-by-the-collection>represented by the
6650 the list of IDs that the elements <a href=#represented-by-the-collection>represented by the
6656 <ul><li>It is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>,
6657 <code><a href=#the-area-element>area</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>,
6658 <code><a href=#frame>frame</a></code>, <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
6659 <code><a href=#the-img-element>img</a></code>, or <code><a href=#the-object-element>object</a></code> element with a <code title="">name</code> attribute equal to <var title="">key</var>,
6662 <li>It is an element with an <a href=#concept-id title=concept-id>ID</a>
6673 <p>The <code><a href=#htmlallcollection>HTMLAllCollection</a></code> interface represents a generic
6674 <a href=#collections title=collections>collection</a> of elements just like
6675 <code><a href=#htmlcollection>HTMLCollection</a></code>, with the exception that its <code title=dom-HTMLAllCollection-namedItem><a href=#dom-htmlallcollection-nameditem>namedItem()</a></code> method
6676 returns an <code><a href=#htmlcollection>HTMLCollection</a></code> object when there are
6679 <pre class=idl>interface <dfn id=htmlallcollection>HTMLAllCollection</dfn> : <a href=#htmlcollection>HTMLCollection</a> {
6680 // inherits <a href=#dom-htmlcollection-length title=dom-HTMLCollection-length>length</a> and <a href=#dom-htmlcollection-item title=dom-HTMLCollection-item>item</a>()
6681 caller getter object <a href=#dom-htmlallcollection-nameditem title=dom-HTMLAllCollection-namedItem>namedItem</a>(in DOMString name); // overrides inherited namedItem()
6682 <a href=#htmlallcollection>HTMLAllCollection</a> <a href=#dom-htmlallcollection-tags title=dom-HTMLAllCollection-tags>tags</a>(in DOMString tagName);
6685 <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLCollection-length><a href=#dom-htmlcollection-length>length</a></code></dt>
6690 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>item</a></code>(<var title="">index</var>)</dt>
6694 <p>Returns the item with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
6698 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLAllCollection-namedItem><a href=#dom-htmlallcollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6699 <dt><var title="">collection</var> = <var title="">collection</var> . <code title=dom-HTMLAllCollection-namedItem><a href=#dom-htmlallcollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6703 <p>Returns the item with <a href=#concept-id title=concept-id>ID</a> or name <var title="">name</var> from the collection.</p>
6704 <p>If there are multiple matching items, then an <code><a href=#htmlallcollection>HTMLAllCollection</a></code> object containing all those elements is returned.</p>
6705 <p>Returns null if no element with that <a href=#concept-id title=concept-id>ID</a> or name could be found.</p>
6706 <p>Only <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
6707 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
6708 <code><a hrefhref=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, and
6709 <code><a href=#the-object-element>object</a></code> elements can have a name for the purpose of
6713 <dt><var title="">collection</var> = <var title="">collection</var> . <code title=dom-HTMLAllCollection-tags><a href=#dom-htmlallcollection-tags>tags</a></code>(<var title="">tagName</var>)</dt>
6722 properties</span> are as defined for <code><a href=#htmlcollection>HTMLCollection</a></code>
6731 <code><a href=#htmlallcollection>HTMLAllCollection</a></code> object rooted at the same node as
6732 the <code><a href=#htmlallcollection>HTMLAllCollection</a></code> object on which the method was
6734 match the filter of the <code><a href=#htmlallcollection>HTMLAllCollection</a></code> object on
6737 <ul><li><code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
6738 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
6739 <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, or
6740 <code><a href=#the-object-element>object</a></code> elements with a <code title="">name</code>
6743 <li>elements with an <a href=#concept-id title=concept-id>ID</a> equal to
6758 <code><a href=#htmlallcollection>HTMLAllCollection</a></code> rooted at the same node as the
6759 <code><a href=#htmlallcollection>HTMLAllCollection</a></code> object on which the method was
6760 invoked, whose filter matches only <a href=#html-elements>HTML elements</a> whose
6762 already match the filter of the <code><a href=#htmlallcollection>HTMLAllCollection</a></code>
6763 object on which the method was invoked. In <a href=#html-documents>HTML
6764 documents</a>, the argument must first be <a href=#converted-to-ascii-lowercase>converted to
6772 <p>The <code><a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a></code> interface represents
6773 a <a href=#collections title=collections>collection</a> of <a href=#category-listed title=category-listed>listed elements</a> in <code><a href=#the-form-element>form</a></code>
6774 and <code><a href=#the-fieldset-element>fieldset</a></code> elements.</p>
6776 <pre class=idl>interface <dfn id=htmlformcontrolscollection>HTMLFormControlsCollection</dfn> : <a href=#htmlcollection>HTMLCollection</a> {
6777 // inherits <a href=#dom-htmlcollection-length title=dom-HTMLCollection-length>length</a> and <a href=#dom-htmlcollection-item title=dom-HTMLCollection-item>item</a>()
6778 caller getter object <a href=#dom-htmlformcontrolscollection-nameditem title=dom-HTMLFormControlsCollection-namedItem>namedItem</a>(in DOMString name); // overrides inherited namedItem()
6781 interface <dfn id=radionodelist>RadioNodeList</dfn> : <a href=#nodelist>NodeList</a> {
6782 attribute DOMString <a href=#dom-radionodelist-value title=dom-RadioNodeList-value>value</a>;
6785 <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLCollection-length><a href=#dom-htmlcollection-length>length</a></code></dt>
6790 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>item</a></code>(<var title="">index</var>)</dt>
6794 <p>Returns the item with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
6798 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-namedItem><a href=#dom-htmlformcontrolscollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6799 <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-namedItem><a href=#dom-htmlformcontrolscollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6803 <p>Returns the item with <a href=#concept-id title=concept-id>ID</a> or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> <var title="">name</var> from the collection.</p>
6804 <p>If there are multiple matching items, then a <code><a href=#radionodelist>RadioNodeList</a></code> object containing all those elements is returned.</p>
6805 <p>Returns null if no element with that <a href=#concept-id title=concept-id>ID</a> or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> could be found.</p>
6817 properties</span> are as defined for <code><a href=#htmlcollection>HTMLCollection</a></code>
6821 of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes of all the elements
6822 <a href=#represented-by-the-collection>represented by the collection</a>.</p>
6828 in the collection that has either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute equal to <var title="">name</var>, then return that node and stop the
6832 either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute equal to <var title="">name</var>, then return null and stop the algorithm.</li>
6834 <li>Otherwise, create a new <code><a href=#radionodelist>RadioNodeList</a></code> object
6835 representing a <a href=#live>live</a> view of the
6836 <code><a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a></code> object, further filtered so
6837 that the only nodes in the <code><a href=#radionodelist>RadioNodeList</a></code> object are
6838 those that have either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute
6839 or a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute equal to <var title="">name</var>. The nodes in the <code><a href=#radionodelist>RadioNodeList</a></code>
6840 object must be sorted in <a href=#tree-order>tree order</a>.</li>
6842 <li>Return that <code><a href=#radionodelist>RadioNodeList</a></code> object.</li>
6844 </ol><hr><p>Members of the <code><a href=#radionodelist>RadioNodeList</a></code> interface inherited
6845 from the <code><a href=#nodelist>NodeList</a></code> interface must behave as they would
6846 on a <code><a href=#nodelist>NodeList</a></code> object.</p>
6849 IDL attribute on the <code><a href=#radionodelist>RadioNodeList</a></code> object, on getting,
6853 <a href=#tree-order>tree order</a> represented by the
6854 <code><a href=#radionodelist>RadioNodeList</a></code> object that is an <code><a href=#the-input-element>input</a></code>
6855 element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute
6856 is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a>
6857 state and whose <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>
6861 element with no <code title=attr-input-value><a href=#attr-input-value>value</a></code>
6865 <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute.</li>
6867 </ol><p>On setting, the <code title=dom-RadioNodeList-value><a href=#dom-radionodelist-value>value</a></code> IDL attribute must run
6871 <a href=#tree-order>tree order</a> represented by the
6872 <code><a href=#radionodelist>RadioNodeList</a></code> object that is an <code><a href=#the-input-element>input</a></code>
6873 element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute
6874 is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a>
6875 state and whose <code title=attr-input-value><a href=#attr-input-value>value</a></code> content
6880 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> to true.</p>
6889 <p>The <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> interface represents a
6890 list of <code><a href=#the-option-element>option</a></code> elements. It is always rooted on a
6891 <code><a href=#the-select-element>select</a></code> element and has attributes and methods that
6894 <pre class=idl>interface <dfn id=htmloptionscollection>HTMLOptionsCollection</dfn> : <a href=#htmlcollection>HTMLCollection</a> {
6895 // inherits <a href=#dom-htmlcollection-item title=dom-HTMLCollection-item>item</a>()
6896 attribute unsigned long <a href=#dom-htmloptionscollection-length title=dom-HTMLOptionsCollection-length>length</a>; // overrides inherited length
6897 caller getter object <a href=#dom-htmloptionscollection-nameditem title=dom-HTMLOptionsCollection-namedItem>namedItem</a>(in DOMString name); // overrides inherited namedItem()
6898 void <a href=#dom-htmloptionscollection-add title=dom-HTMLOptionsCollection-add>add</a>(in <a href=#htmlelement>HTMLElement</a> element, in optional <a href=#htmlelement>HTMLElement</a> before);
6899 void <a href=#dom-htmloptionscollection-add title=dom-HTMLOptionsCollection-add>add</a>(in <a href=#htmlelement>HTMLElement</a> element, in long before);
6900 void <a href=#dom-htmloptionscollection-remove title=dom-HTMLOptionsCollection-remove>remove</a>(in long index);
6903 <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLOptionsCollection-length><a href=#dom-htmloptionscollection-length>length</a></code> [ = <var title="">value</var> ]</dt>
6906 <p>When set to a smaller number, truncates the number of <code><a href=#the-option-element>option</a></code> elements in the corresponding container.</p>
6907 <p>When set to a greater number, adds new blank <code><a href=#the-option-element>option</a></code> elements to that container.</p>
6910 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>item</a></code>(<var title="">index</var>)</dt>
6914 <p>Returns the item with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
6918 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLOptionsCollection-namedItem><a href=#dom-htmloptionscollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6919 <dt><var title="">nodeList</var> = <var title="">collection</var> . <code title=dom-HTMLOptionsCollection-namedItem><a href=#dom-htmloptionscollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
6923 <p>Returns the item with <a href=#concept-id title=concept-id>ID</a> or <code title=attr-option-name><a href=#attr-option-name>name</a></code> <var title="">name</var> from the collection.</p>
6924 <p>If there are multiple matching items, then a <code><a href=#nodelist>NodeList</a></code> object containing all those elements is returned.</p>
6925 <p>Returns null if no element with that <a href=#concept-id title=concept-id>ID</a> could be found.</p>
6928 <dt><var title="">collection</var> . <code title=dom-HTMLOptionsCollection-add><a href=#dom-htmloptionscollection-add>add</a></code>(<var title="">element</var> [, <var title="">before</var> ] )</dt>
6938 <p>This method will throw a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code>
6940 element into which it is to be inserted. If <var title="">element</var> is not an <code><a href=#the-option-element>option</a></code> or
6941 <code><a href=#the-optgroup-element>optgroup</a></code> element, then the method does nothing.</p>
6947 properties</span> are as defined for <code><a href=#htmlcollection>HTMLCollection</a></code>
6951 attribute must return the number of nodes <a href=#represented-by-the-collection>represented by the
6956 <a href=#represented-by-the-collection>represented by the collection</a> at that time. If the
6959 <code><a href=#the-option-element>option</a></code> elements with no attributes and no child nodes
6960 must be appended to the <code><a href=#the-select-element>select</a></code> element on which the
6961 <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> is rooted, where <var title="">n</var> is the difference between the two numbers (new
6963 <code><a href=#documentfragment>DocumentFragment</a></code> containing the new <code><a href=#the-option-element>option</a></code>
6969 <p class=note>Setting <code title=dom-HTMLOptionsCollection-length><a href=#dom-htmloptionscollection-length>length</a></code> never removes
6970 or adds any <code><a href=#the-optgroup-element>optgroup</a></code> elements, and never adds new
6971 children to existing <code><a href=#the-optgroup-element>optgroup</a></code> elements (though it can
6975 of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-option-name><a href=#attr-option-name>name</a></code> attributes of all the elements
6976 <a href=#represented-by-the-collection>represented by the collection</a>.</p>
6982 in the collection that has either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-option-name><a href=#attr-option-name>name</a></code> attribute equal to <var title="">name</var>, then return that node and stop the
6986 either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-option-name><a href=#attr-option-name>name</a></code> attribute equal to <var title="">name</var>, then return null and stop the algorithm.</li>
6989 <li>Otherwise, create a new <code><a href=#nodelist>NodeList</a></code> object
6990 representing a <a href=#live>live</a> view of the
6991 <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> object, further filtered so that
6992 the only nodes in the <code><a href=#nodelist>NodeList</a></code> object are those that
6993 have either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-option-name><a href=#attr-option-name>name</a></code> attribute equal to <var title="">name</var>. The nodes in the <code><a href=#nodelist>NodeList</a></code> object
6994 must be sorted in <a href=#tree-order>tree order</a>.</li>
6996 <li>Return that <code><a href=#nodelist>NodeList</a></code> object.</li>
7001 <ol><li><p>If <var title="">element</var> is not an <code><a href=#the-option-element>option</a></code>
7002 or <code><a href=#the-optgroup-element>optgroup</a></code> element, then return and abort these
7006 <code><a href=#the-select-element>select</a></code> element on which the
7007 <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> is rooted, then throw a
7008 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</li>
7011 element isn't a descendant of the <code><a href=#the-select-element>select</a></code> element on
7012 which the <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> is rooted, then throw
7013 a <code><a href=#not_found_err>NOT_FOUND_ERR</a></code> exception.</li>
7021 be the <code><a href=#the-select-element>select</a></code> element on which the
7022 <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> is rooted.</li>
7024 <li><p>Act as if the DOM Core <code title=dom-Node-insertBefore><a href=#dom-node-insertbefore>insertBefore()</a></code> method was
7030 <ol><li><p>If the number of nodes <a href=#represented-by-the-collection>represented by the
7034 equal to 0 and less than the number of nodes <a href=#represented-by-the-collection>represented by
7051 <p>The <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> interface represents a
7052 <a href=#collections title=collections>collection</a> of elements that add
7053 name-value pairs to a particular <a href=#concept-item title=concept-item>item</a> in the <a href=#microdata>microdata</a>
7056 <pre class=idl>interface <dfn id=htmlpropertiescollection>HTMLPropertiesCollection</dfn> : <a href=#htmlcollection>HTMLCollection</a> {
7057 // inherits <a href=#dom-htmlcollection-length title=dom-HTMLCollection-length>length</a> and <a href=#dom-htmlcollection-item title=dom-HTMLCollection-item>item</a>()
7058 caller getter <a href=#propertynodelist>PropertyNodeList</a> <a href=#dom-htmlpropertiescollection-nameditem title=dom-HTMLPropertiesCollection-namedItem>namedItem</a>(in DOMString name); // overrides inherited namedItem()
7059 readonly attribute <span>DOMStringList</span> <a href=#dom-htmlpropertiescollection-names title=dom-HTMLPropertiesCollection-names>names</a>;
7064 interface <dfn id=propertynodelist>PropertyNodeList</dfn> : <a href=#nodelist>NodeList</a> {
7065 readonly attribute <a href=#propertyvaluearray>PropertyValueArray</a> <a href=#dom-propertynodelist-values title=dom-PropertyNodeList-values>values</a>;
7068 <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLCollection-length><a href=#dom-htmlcollection-length>length</a></code></dt>
7073 <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>item</a></code>(<var title="">index</var>)</dt>
7077 <p>Returns the element with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
7081 <dt><var title="">propertyNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLPropertiesCollection-namedItem><a href=#dom-htmlpropertiescollection-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
7085 <p>Returns a <code><a href=#propertynodelist>PropertyNodeList</a></code> object containing any elements that add a property named <var title="">name</var>.</p>
7088 <dt><var title="">collection</var> . <code title=dom-HTMLPropertiesCollection-names><a href=#dom-htmlpropertiescollection-names>names</a></code></dt>
7090 <p>Returns a <code>DOMStringList</code> with the <a href=#property-names>property names</a> of the elements in the collection.</p>
7093 <dt><var title="">propertyNodeList</var> . <code title=dom-PropertyNodeList-values><a href=#dom-propertynodelist-values>values</a></code></dt>
7101 properties</span> are as defined for <code><a href=#htmlcollection>HTMLCollection</a></code>
7105 of the <a href=#property-names>property names</a> of all the elements
7106 <a href=#represented-by-the-collection>represented by the collection</a>.</p>
7109 attribute must return a <a href=#live>live</a> <code>DOMStringList</code>
7110 object giving the <a href=#property-names>property names</a> of all the elements
7111 <a href=#represented-by-the-collection>represented by the collection</a>, listed in <a href=#tree-order>tree
7117 <code><a href=#propertynodelist>PropertyNodeList</a></code> object representing a
7118 <a href=#live>live</a> view of the <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code>
7120 <code><a href=#propertynodelist>PropertyNodeList</a></code> object are those that have a <a href=#property-names title="property names">property name</a> equal to <var title="">name</var>. The nodes in the <code><a href=#propertynodelist>PropertyNodeList</a></code>
7121 object must be sorted in <a href=#tree-order>tree order</a>, and the same
7124 <hr><p>Members of the <code><a href=#propertynodelist>PropertyNodeList</a></code> interface inherited
7125 from the <code><a href=#nodelist>NodeList</a></code> interface must behave as they would
7126 on a <code><a href=#nodelist>NodeList</a></code> object.</p>
7129 IDL attribute on the <code><a href=#propertynodelist>PropertyNodeList</a></code> object, on
7131 values obtained from the <code title=dom-itemValue><a href=#dom-itemvalue>itemValue</a></code> DOM property of each of the
7132 elements represented by the object, in <a href=#tree-order>tree order</a>.</p>
7142 <p>The <code><a href=#domtokenlist>DOMTokenList</a></code> interface represents an interface
7143 to an underlying string that consists of a <a href=#set-of-space-separated-tokens>set of
7146 <p class=note><code><a href=#domtokenlist>DOMTokenList</a></code> objects are always
7147 <a href=#case-sensitive>case-sensitive</a>, even when the underlying string might
7151 readonly attribute unsigned long <a href=#dom-tokenlist-length title=dom-tokenlist-length>length</a>;
7152 getter DOMString <a href=#dom-tokenlist-item title=dom-tokenlist-item>item</a>(in unsigned long index);
7153 boolean <a href=#dom-tokenlist-contains title=dom-tokenlist-contains>contains</a>(in DOMString token);
7154 void <a href=#dom-tokenlist-add title=dom-tokenlist-add>add</a>(in DOMString token);
7155 void <a href=#dom-tokenlist-remove title=dom-tokenlist-remove>remove</a>(in DOMString token);
7156 boolean <a href=#dom-tokenlist-toggle title=dom-tokenlist-toggle>toggle</a>(in DOMString token);
7157 <a href=#dom-tokenlist-tostring title=dom-tokenlist-toString>stringifier</a> DOMString ();
7160 <dl class=domintro><dt><var title="">tokenlist</var> . <code title=dom-tokenlist-length><a href=#dom-tokenlist-length>length</a></code></dt>
7165 <dt><var title="">element</var> = <var title="">tokenlist</var> . <code title=dom-tokenlist-item><a href=#dom-tokenlist-item>item</a></code>(<var title="">index</var>)</dt>
7172 <dt><var title="">hastoken</var> = <var title="">tokenlist</var> . <code title=dom-tokenlist-contains><a href=#dom-tokenlist-contains>contains</a></code>(<var title="">token</var>)</dt>
7175 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if <var title="">token</var> is empty.</p>
7176 <p>Throws an <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception if <var title="">token</var> contains any spaces.</p>
7179 href=#dom-tokenlist-add>add</a></code>(<var title="">token</var>)</dt>
7182 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if <var title="">token</var> is empty.</p>
7183 <p>Throws an <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception if <var title="">token</var> contains any spaces.</p>
7186 <dt><var title="">tokenlist</var> . <code title=dom-tokenlist-remove><a href=#dom-tokenlist-remove>remove</a></code>(<var title="">token</var>)</dt>
7189 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if <var title="">token</var> is empty.</p>
7190 <p>Throws an <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception if <var title="">token</var> contains any spaces.</p>
7193 <dt><var title="">hastoken</var> = <var title="">tokenlist</var> . <code title=dom-tokenlist-toggle><a href=#dom-tokenlist-toggle>toggle</a></code>(<var title="">token</var>)</dt>
7199 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if <var title="">token</var> is empty.</p>
7200 <p>Throws an <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception if <var title="">token</var> contains any spaces.</p>
7206 attribute must return the number of tokens that result from <a href=#split-a-string-on-spaces title="split a string on spaces">splitting the underlying string on
7207 spaces</a>. This is the <var title=dom-tokenlist-length><a href=#dom-tokenlist-length>length</a></var>.</p>
7210 properties</span> are the numbers in the range zero to <span title=""><var title=dom-tokenlist-length><a href=#dom-tokenlist-length>length</a></var>-1</span>, unless the <var title=dom-tokenlist-length><a href=#dom-tokenlist-length>length</a></var> is zero, in which case
7213 <p>The <dfn id=dom-tokenlist-item title=dom-tokenlist-item><code>item(<var title="">index</var>)</code></dfn> method must <a href=#split-a-string-on-spaces title="split a
7228 then raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and stop the
7231 <li>If the <var title="">token</var> argument contains any <a href=#space-character title="space character">space characters</a>, then raise an
7232 <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception and stop the
7235 <li>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split the
7240 <a href=#case-sensitive>case-sensitive</a> match for one of the tokens in the
7250 then raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and stop the
7253 <li>If the <var title="">token</var> argument contains any <a href=#space-character title="space character">space characters</a>, then raise an
7254 <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception and stop the
7257 <li>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split the
7262 <a href=#case-sensitive>case-sensitive</a> match for one of the tokens in the
7263 <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying string then stop the
7266 <li>Otherwise, if the <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying
7268 string is not a <a href=#space-character>space character</a>, then append a U+0020
7272 <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying string.</li>
7278 then raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and stop the
7281 <li>If the <var title="">token</var> argument contains any <a href=#space-character title="space character">space characters</a>, then raise an
7282 <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception and stop the
7285 <li>Otherwise, <a href=#remove-a-token-from-a-string title="remove a token from a string">remove
7293 then raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and stop the
7296 <li>If the <var title="">token</var> argument contains any <a href=#space-character title="space character">space characters</a>, then raise an
7297 <code><a href=#invalid_character_err>INVALID_CHARACTER_ERR</a></code> exception and stop the
7300 <li>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split the
7305 <a href=#case-sensitive>case-sensitive</a> match for one of the tokens in the
7306 <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying string then <a href=#remove-a-token-from-a-string title="remove a token from a string">remove the given <var title="">token</var> from the underlying string</a> and stop the
7309 <li>Otherwise, if the <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying
7311 string is not a <a href=#space-character>space character</a>, then append a U+0020
7315 <code><a href=#domtokenlist>DOMTokenList</a></code> object's underlying string.</li>
7319 </ol><p>Objects implementing the <code><a href=#domtokenlist>DOMTokenList</a></code> interface must
7328 <p>The <code><a href=#domsettabletokenlist>DOMSettableTokenList</a></code> interface is the same as the
7329 <code><a href=#domtokenlist>DOMTokenList</a></code> interface, except that it allows the
7332 <pre class=idl>interface <dfn id=domsettabletokenlist>DOMSettableTokenList</dfn> : <a href=#domtokenlist>DOMTokenList</a> {
7333 attribute DOMString <a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>;
7336 <dl class=domintro><dt><var title="">tokenlist</var> . <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code></dt>
7344 <p>An object implementing the <code><a href=#domsettabletokenlist>DOMSettableTokenList</a></code>
7345 interface must act as defined for the <code><a href=#domtokenlist>DOMTokenList</a></code>
7346 interface, except for the <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code> attribute defined
7371 calling the <a href=#internal-structured-cloning-algorithm>internal structured cloning algorithm</a> with
7417 <dt>If <var title="">input</var> is a <code><a href=#imagedata>ImageData</a></code> object</dt>
7419 <dd><p>Return a newly constructed <code><a href=#imagedata>ImageData</a></code> object
7420 with the same <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> and
7421 <code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> as <var title="">input</var>, and with a newly constructed
7422 <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> for its <code title=dom-imagedata-data><a href=#dom-imagedata-data>data</a></code> attribute, with the same
7423 <code title=dom-canvaspixelarray-length><a href=#dom-canvaspixelarray-length>length</a></code> and pixel
7444 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception and abort the overall
7445 <a href=#structured-clone>structured clone</a> algorithm.</li>
7460 the <a href=#internal-structured-cloning-algorithm>internal structured cloning algorithm</a>
7477 <dd><p>Throw a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception and abort
7478 the overall <a href=#structured-clone>structured clone</a> algorithm.</dd>
7485 <p>The <code><a href=#domstringmap>DOMStringMap</a></code> interface represents a set of
7491 <p>When a <code><a href=#domstringmap>DOMStringMap</a></code> object is instantiated, it is
7504 <code><a href=#domstringmap>DOMStringMap</a></code> object at any instant are the names of
7508 <p>When a <code><a href=#domstringmap>DOMStringMap</a></code> object is indexed to retrieve a
7514 <p>When a <code><a href=#domstringmap>DOMStringMap</a></code> object is indexed to create or
7520 <p>When a <code><a href=#domstringmap>DOMStringMap</a></code> object is indexed to delete a
7525 <p class=note>The <code><a href=#domstringmap>DOMStringMap</a></code> interface definition
7527 bindings will need to define how <code><a href=#domstringmap>DOMStringMap</a></code> is to be
7534 <p>The <code title=dom-dataset><a href=#dom-dataset>dataset</a></code> attribute on
7535 elements exposes the <code title=attr-data-*><a href=#attr-data-*>data-*</a></code>
7569 and for obtaining implementations of interfaces, using <a href=http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMFeatures>feature
7570 strings</a>. <a href=#refsDOMCORE>[DOMCORE]</a></p>
7581 method of the <code><a href=#domimplementation>DOMImplementation</a></code> interface is invoked
7590 <p>The following are <code><a href=#domexception>DOMException</a></code> codes. <a href=#refsDOMCORE>[DOMCORE]</a></p>
7627 that there is a strong reference from a <code><a href=#document>Document</a></code>
7628 object to its <code><a href=#location>Location</a></code> object. Similarly, there is
7629 always a strong reference from a <code><a href=#document>Document</a></code> to any
7631 <code><a href=#document>Document</a></code>.</p>
7665 <code><a href=#document>Document</a></code> object. <a href=#refsDOMCORE>[DOMCORE]</a></p>
7667 <p><dfn id="the-document's-address">The document's address</dfn> is an <a href=#absolute-url>absolute URL</a>
7668 that is set when the <code><a href=#document>Document</a></code> is created. <dfn id="the-document's-current-address">The
7669 document's current address</dfn> is an <a href=#absolute-url>absolute URL</a>
7670 that can change during the lifetime of the <code><a href=#document>Document</a></code>,
7671 for example when the user <a href=#navigate title=navigate>navigates</a> to
7672 a <a href=#scroll-to-fragid title=navigate-fragid>fragment identifier</a> on the
7673 page or when the <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> method is called
7674 with a new <a href=#url>URL</a>. <span class=impl><a href="#the-document's-current-address">The document's
7675 current address</a> must be set to <a href="#the-document's-address">the document's
7676 address</a> when the <code><a href=#document>Document</a></code> is created.</span></p>
7678 <p class=note>Interactive user agents typically expose <a href="#the-document's-current-address">the
7681 <p>When a <code><a href=#document>Document</a></code> is created by a <a href=#concept-script title=concept-script>script</a> using the <code title=dom-DOMImplementation-createDocument><a href=#dom-domimplementation-createdocument>createDocument()</a></code>
7682 or <code title=dom-DOMHTMLImplementation-createHTMLDocument><a href=#dom-domhtmlimplementation-createhtmldocument>createHTMLDocument()</a></code>
7683 APIs, <a href="#the-document's-address">the document's address</a> is the same as <a href="#the-document's-address">the
7684 document's address</a> of the <a href="#script's-document">script's document</a>.</p>
7686 <p><code><a href=#document>Document</a></code> objects are assumed to be <dfn id=xml-documents>XML
7689 <a href=#html-documents title="HTML documents">HTML document</a> or an <a href=#xml-documents title="XML documents">XML document</a> affects the behavior of
7696 <p>All <code><a href=#document>Document</a></code> objects (in user agents implementing
7698 the <code><a href=#htmldocument>HTMLDocument</a></code> interface, available using
7700 document in question is an <a href=#html-documents title="HTML documents">HTML
7701 document</a> or indeed whether it contains any <a href=#html-elements>HTML
7702 elements</a> at all.) <code><a href=#document>Document</a></code> objects <span class=impl>must</span> also implement the document-level interface
7706 supports SVG, then the <code><a href=#document>Document</a></code> object implements both
7707 <code><a href=#htmldocument>HTMLDocument</a></code> and <code>SVGDocument</code>.</p>
7709 <p class=note>Because the <code><a href=#htmldocument>HTMLDocument</a></code> interface is
7712 longer defined as inheriting from <code><a href=#document>Document</a></code>.</p>
7716 // <a href=#resource-metadata-management>resource metadata management</a>
7717 [PutForwards=<a href=#dom-location-href title=dom-location-href>href</a>] readonly attribute <a href=#location>Location</a> <a href=#dom-document-location title=dom-document-location>location</a>;
7718 readonly attribute DOMString <a href=#dom-document-url title=dom-document-URL>URL</a>;
7719 attribute DOMString <a href=#dom-document-domain title=dom-document-domain>domain</a>;
7720 readonly attribute DOMString <a href=#dom-document-referrer title=dom-document-referrer>referrer</a>;
7721 attribute DOMString <a href=#dom-document-cookie title=dom-document-cookie>cookie</a>;
7722 readonly attribute DOMString <a href=#dom-document-lastmodified title=dom-document-lastModified>lastModified</a>;
7723 readonly attribute DOMString <a href=#dom-document-compatmode title=dom-document-compatMode>compatMode</a>;
7724 attribute DOMString <a href=#dom-document-charset title=dom-document-charset>charset</a>;
7725 readonly attribute DOMString <a href=#dom-document-characterset title=dom-document-characterSet>characterSet</a>;
7726 readonly attribute DOMString <a href=#dom-document-defaultcharset title=dom-document-defaultCharset>defaultCharset</a>;
7727 readonly attribute DOMString <a href=#dom-document-readystate title=dom-document-readyState>readyState</a>;
7729 // <a href=#dom-tree-accessors>DOM tree accessors</a>
7730 <a href=#dom-document-nameditem title=dom-document-namedItem>getter</a> any (in DOMString name);
7731 attribute DOMString <a href=#document.title title=dom-document-title>title</a>;
7732 attribute DOMString <a href=#dom-document-dir title=dom-document-dir>dir</a>;
7733 attribute <a href=#htmlelement>HTMLElement</a> <a href=#dom-document-body title=dom-document-body>body</a>;
7734 readonly attribute <a href=#htmlheadelement>HTMLHeadElement</a> <a href=#dom-document-head title=dom-document-head>head</a>;
7735 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-images title=dom-document-images>images</a>;
7736 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-embeds title=dom-document-embeds>embeds</a>;
7737 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-plugins title=dom-document-plugins>plugins</a>;
7738 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-links title=dom-document-links>links</a>;
7739 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-forms title=dom-document-forms>forms</a>;
7740 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-scripts title=dom-document-scripts>scripts</a>;
7741 NodeList <a href=#dom-document-getelementsbyname title=dom-document-getElementsByName>getElementsByName</a>(in DOMString elementName);
7742 NodeList <a href=#dom-document-getelementsbyclassname title=dom-document-getElementsByClassName>getElementsByClassName</a>(in DOMString classNames);
7743 NodeList <a href=#dom-document-getitems title=dom-document-getItems>getItems</a>(in optional DOMString typeNames); // <a href=#microdata>microdata</a> <!--WARNING: ALSO DUPLICATED IN MICRODATA SECTION-->
7745 // <a href=#dynamic-markup-insertion>dynamic markup insertion</a>
7746 attribute DOMString <a href=#dom-innerhtml title=dom-innerHTML>innerHTML</a>;
7747 <a href=#htmldocument>HTMLDocument</a> <a href=#dom-document-open title=dom-document-open>open</a>(in optional DOMString type, in optional DOMString replace);
7748 <a href=#windowproxy>WindowProxy</a> <a href=#dom-document-open title=dom-document-open>open</a>(in DOMString url, in DOMString name, in DOMString features, in optional boolean replace);
7749 href=#dom-document-close title=dom-document-close>close</a>();
7750 void <a href=#dom-document-write title=dom-document-write>write</a>(in DOMString... text);
7751 void <a href=#dom-document-writeln title=dom-document-writeln>writeln</a>(in DOMString... text);
7753 // <a href=#editing>user interaction</a>
7754 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-document-defaultview title=dom-document-defaultView>defaultView</a>;
7755 <a href=#selection-0>Selection</a> <a href=#dom-document-getselection title=dom-document-getSelection>getSelection</a>();
7756 readonly attribute <a href=#element>Element</a> <a href=#dom-document-activeelement title=dom-document-activeElement>activeElement</a>;
7757 boolean <a href=#dom-document-hasfocus title=dom-document-hasFocus>hasFocus</a>();
7758 attribute DOMString <a href=#designMode title=dom-document-designMode>designMode</a>;
7759 boolean <a href=#execCommand title=dom-document-execCommand>execCommand</a>(in DOMString commandId);
7760 boolean <a href=#execCommand title=dom-document-execCommand>execCommand</a>(in DOMString commandId, in boolean showUI);
7761 boolean <a href=#execCommand title=dom-document-execCommand>execCommand</a>(in DOMString commandId, in boolean showUI, in DOMString value);
7762 boolean <a href=#dom-document-querycommandenabled title=dom-document-queryCommandEnabled>queryCommandEnabled</a>(in DOMString commandId);
7763 boolean <a href=#dom-document-querycommandindeterm title=dom-document-queryCommandIndeterm>queryCommandIndeterm</a>(in DOMString commandId);
7764 boolean <a href=#dom-document-querycommandstate title=dom-document-queryCommandState>queryCommandState</a>(in DOMString commandId);
7765 boolean <a href=#dom-document-querycommandsupported title=dom-document-queryCommandSupported>queryCommandSupported</a>(in DOMString commandId);
7766 DOMString <a href=#dom-document-querycommandvalue title=dom-document-queryCommandValue>queryCommandValue</a>(in DOMString commandId);
7767 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-commands title=dom-document-commands>commands</a>;
7769 // <a href=#event-handler-idl-attributes>event handler IDL attributes</a>
7770 attribute <a href=#function>Function</a> <a href=#handler-onabort title=handler-onabort>onabort</a>;
7771 attribute <a href=#function>Function</a> <a href=#handler-onblur title=handler-onblur>onblur</a>;
7772 attribute <a href=#function>Function</a> <a href=#handler-oncanplay title=handler-oncanplay>oncanplay</a>;
7773 attribute <a href=#function>Function</a> <a href=#handler-oncanplaythrough title=handler-oncanplaythrough>oncanplaythrough</a>;
7774 attribute <a href=#function>Function</a> <a href=#handler-onchange title=handler-onchange>onchange</a>;
7775 attribute <a href=#function>Function</a> <a href=#handler-onclick title=handler-onclick>onclick</a>;
7776 attribute <a href=#function>Function</a> <a href=#handler-oncontextmenu title=handler-oncontextmenu>oncontextmenu</a>;
7777 attribute <a href=#function>Function</a> <a href=#handler-ondblclick title=handler-ondblclick>ondblclick</a>;
7778 attribute <a href=#function>Function</a> <a href=#handler-ondrag title=handler-ondrag>ondrag</a>;
7779 attribute <a href=#function>Function</a> <a href=#handler-ondragend title=handler-ondragend>ondragend</a>;
7780 attribute <a href=#function>Function</a> <a href=#handler-ondragenter title=handler-ondragenter>ondragenter</a>;
7781 attribute <a href=#function>Function</a> <a href=#handler-ondragleave title=handler-ondragleave>ondragleave</a>;
7782 attribute <a href=#function>Function</a> <a href=#handler-ondragover title=handler-ondragover>ondragover</a>;
7783 attribute <a href=#function>Function</a> <a href=#handler-ondragstart title=handler-ondragstart>ondragstart</a>;
7784 attribute <a href=#function>Function</a> <a href=#handler-ondrop title=handler-ondrop>ondrop</a>;
7785 attribute <a href=#function>Function</a> <a href=#handler-ondurationchange title=handler-ondurationchange>ondurationchange</a>;
7786 attribute <a href=#function>Function</a> <a href=#handler-onemptied title=handler-onemptied>onemptied</a>;
7787 attribute <a href=#function>Function</a> <a href=#handler-onended title=handler-onended>onended</a>;
7788 attribute <a href=#function>Function</a> <a href=#handler-onerror title=handler-onerror>onerror</a>;
7789 attribute <a href=#function>Function</a> <a href=#handler-onfocus title=handler-onfocus>onfocus</a>;
7790 attribute <a href=#function>Function</a> <a href=#handler-onformchange title=handler-onformchange>onformchange</a>;
7791 attribute <a href=#function>Function</a> <a href=#handler-onforminput title=handler-onforminput>onforminput</a>;
7792 attribute <a href=#function>Function</a> <a href=#handler-oninput title=handler-oninput>oninput</a>;
7793 attribute <a href=#function>Function</a> <a href=#handler-oninvalid title=handler-oninvalid>oninvalid</a>;
7794 attribute <a href=#function>Function</a> <a href=#handler-onkeydown title=handler-onkeydown>onkeydown</a>;
7795 attribute <a href=#function>Function</a> <a href=#handler-onkeypress title=handler-onkeypress>onkeypress</a>;
7796 attribute <a href=#function>Function</a> <a href=#handler-onkeyup title=handler-onkeyup>onkeyup</a>;
7797 attribute <a href=#function>Function</a> <a href=#handler-onload title=handler-onload>onload</a>;
7798 attribute <a href=#function>Function</a> <a href=#handler-onloadeddata title=handler-onloadeddata>onloadeddata</a>;
7799 attribute <a href=#function>Function</a> <a href=#handler-onloadedmetadata title=handler-onloadedmetadata>onloadedmetadata</a>;
7800 attribute <a href=#function>Function</a> <a href=#handler-onloadstart title=handler-onloadstart>onloadstart</a>;
7801 attribute <a href=#function>Function</a> <a href=#handler-onmousedown title=handler-onmousedown>onmousedown</a>;
7802 attribute <a href=#function>Function</a> <a href=#handler-onmousemove title=handler-onmousemove>onmousemove</a>;
7803 attribute <a href=#function>Function</a> <a href=#handler-onmouseout title=handler-onmouseout>onmouseout</a>;
7804 attribute <a href=#function>Function</a> <a href=#handler-onmouseover title=handler-onmouseover>onmouseover</a>;
7805 attribute <a href=#function>Function</a> <a href=#handler-onmouseup title=handler-onmouseup>onmouseup</a>;
7806 attribute <a href=#function>Function</a> <a href=#handler-onmousewheel title=handler-onmousewheel>onmousewheel</a>;
7807 attribute <a href=#function>Function</a> <a href=#handler-onpause title=handler-onpause>onpause</a>;
7808 attribute <a href=#function>Function</a> <a href=#handler-onplay title=handler-onplay>onplay</a>;
7809 attribute <a href=#function>Function</a> <a href=#handler-onplaying title=handler-onplaying>onplaying</a>;
7810 attribute <a href=#function>Function</a> <a href=#handler-onprogress title=handler-onprogress>onprogress</a>;
7811 attribute <a href=#function>Function</a> <a href=#handler-onratechange title=handler-onratechange>onratechange</a>;
7812 attribute <a href=#function>Function</a> <a href=#handler-onreadystatechange title=handler-onreadystatechange>onreadystatechange</a>;
7813 attribute <a href=#function>Function</a> <a href=#handler-onscroll title=handler-onscroll>onscroll</a>;
7814 attribute <a href=#function>Function</a> <a href=#handler-onseeked title=handler-onseeked>onseeked</a>;
7815 attribute <a href=#function>Function</a> <a href=#handler-onseeking title=handler-onseeking>onseeking</a>;
7816 attribute <a href=#function>Function</a> <a href=#handler-onselect title=handler-onselect>onselect</a>;
7817 attribute <a href=#function>Function</a> <a href=#handler-onshow title=handler-onshow>onshow</a>;
7818 attribute <a href=#function>Function</a> <a href=#handler-onstalled title=handler-onstalled>onstalled</a>;
7819 attribute <a href=#function>Function</a> <a href=#handler-onsubmit title=handler-onsubmit>onsubmit</a>;
7820 attribute <a href=#function>Function</a> <a href=#handler-onsuspend title=handler-onsuspend>onsuspend</a>;
7821 attribute <a href=#function>Function</a> <a href=#handler-ontimeupdate title=handler-ontimeupdate>ontimeupdate</a>;
7822 attribute <a href=#function>Function</a> <a href=#handler-onvolumechange title=handler-onvolumechange>onvolumechange</a>;
7823 attribute <a href=#function>Function</a> <a href=#handler-onwaiting title=handler-onwaiting>onwaiting</a>;
7825 <a href=#document>Document</a> implements <a href=#htmldocument>HTMLDocument</a>;</pre>
7827 <p>Since the <code><a href=#htmldocument>HTMLDocument</a></code> interface holds methods and
7835 <code><a href=#security_err>SECURITY_ERR</a></code> exception whenever any of the members of
7836 an <code><a href=#htmldocument>HTMLDocument</a></code> object are accessed by scripts whose
7837 <a href=#effective-script-origin>effective script origin</a> is not the <a href=#same-origin title="same
7838 origin">same</a> as the <code><a href=#document>Document</a></code>'s <a href=#effective-script-origin>effective
7845 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-URL><a href=#dom-document-url>URL</a></code></dt>
7847 <p>Returns <a href="#the-document's-address">the document's address</a>.</p>
7850 <dt><var title="">document</var> . <code title=dom-document-referrer><a href=#dom-document-referrer>referrer</a></code></dt>
7852 <p>Returns <a href="#the-document's-current-address" title="the document's current address">the
7853 address</a> of the <code><a href=#document>Document</a></code> from which the user
7856 <p>The <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> link
7863 attribute must return <a href="#the-document's-address">the document's address</a>.</p>
7866 must return either the <a href="#the-document's-current-address" title="the document's current
7867 address">current address</a> of the <a href=#active-document>active document</a>
7868 of the <a href=#source-browsing-context>source browsing context</a> <em>at the time the
7869 navigation was started</em> (that is, the page which <a href=#navigate title=navigate>navigated</a> the <a href=#browsing-context>browsing context</a>
7870 to the current document), with any <a href=#url-fragment title=url-fragment><fragment></a> component removed; or
7873 navigation was initiated for a <a href=#hyperlink>hyperlink</a> with a <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword.</p>
7877 <p class=note>In the case of HTTP, the <code title=dom-document-referrer><a href=#dom-document-referrer>referrer</a></code> IDL attribute will
7879 that was sent when <a href=#fetch title=fetch>fetching</a> the current
7887 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-cookie><a href=#dom-document-cookie>cookie</a></code> [ = <var title="">value</var> ]</dt>
7890 <code><a href=#document>Document</a></code>. If there are no cookies or cookies can't be
7894 <p>If the contents are <a href=#sandboxed-origin-browsing-context-flag title="sandboxed origin browsing
7896 <code><a href=#the-iframe-element>iframe</a></code> with the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute) or the
7897 resource was labeled as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>, a
7898 <code><a href=#security_err>SECURITY_ERR</a></code> exception will be thrown on getting and
7906 <code><a href=#document>Document</a></code> was created.</p>
7908 <p>Some <code><a href=#document>Document</a></code> objects are <dfn id=cookie-free-document-object title="cookie-free
7910 objects</dfn>. Any <code><a href=#document>Document</a></code> object created by the <code title="">createDocument()</code> or <code title=dom-DOMHTMLImplementation-createHTMLDocument><a href=#dom-domhtmlimplementation-createhtmldocument>createHTMLDocument()</a></code>
7911 factory methods is a <a href=#cookie-free-document-object>cookie-free <code>Document</code>
7912 object</a>. Any <code><a href=#document>Document</a></code> whose <a href="#the-document's-address" title="the
7914 naming authority is a <a href=#cookie-free-document-object>cookie-free <code>Document</code>
7916 <code><a href=#document>Document</a></code> objects as being <a href=#cookie-free-document-object title="cookie-free
7921 <a href=#cookie-free-document-object>cookie-free <code>Document</code> object</a>, then the user
7923 <code><a href=#document>Document</a></code>'s <a href=#origin>origin</a> is not a
7925 <code><a href=#security_err>SECURITY_ERR</a></code> exception. Otherwise, the user agent must
7926 first <a href=#obtain-the-storage-mutex>obtain the storage mutex</a> and then return the
7927 cookie-string for <a href="#the-document's-address">the document's address</a> for a
7928 "non-HTTP" API. <a href=#refsCOOKIES>[COOKIES]</a></p>
7930 <p>On setting, if the document is a <a href=#cookie-free-document-object>cookie-free
7932 nothing. Otherwise, if the <code><a href=#document>Document</a></code>'s
7933 <a href=#origin>origin</a> is not a scheme/host/port tuple, the user agent
7934 must raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception. Otherwise, the
7935 user agent must <a href=#obtain-the-storage-mutex>obtain the storage mutex</a> and then act
7938 <a href="#the-document's-address">the document's address</a> via a "non-HTTP" API, consisting
7939 of the new value. <a href=#refsCOOKIES>[COOKIES]</a></p>
7941 <p class=note>Since the <code title=dom-document-cookie><a href=#dom-document-cookie>cookie</a></code> attribute is accessible
7948 href=#dom-document-lastmodified>lastModified</a></code></dt>
7961 <code><a href=#document>Document</a></code>'s source file's last modification, in the
7994 <p>The <code><a href=#document>Document</a></code>'s source file's last modification date
8003 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-compatmode><a href=#dom-document-compatmode>compatMode</a></code></dt>
8005 <p>In a conforming document, returns the string "<code title="">CSS1Compat</code>". (In <a href=#quirks-mode>quirks mode</a>
8007 but a conforming document can never trigger <a href=#quirks-mode>quirks
8013 <p>A <code><a href=#document>Document</a></code> is always set to one of three modes:
8017 from the default by the <a href=#html-parser>HTML parser</a>, based on the
8022 <a href=#quirks-mode>quirks mode</a> by the <a href=#html-parser>HTML parser</a>, in which
8027 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-charset><a href=#dom-document-charset>charset</a></code> [ = <var title="">value</var> ]</dt>
8029 <p>Returns the <a href="#document's-character-encoding">document's character encoding</a>.</p>
8030 <p>Can be set, to dynamically change the <a href="#document's-character-encoding">document's
8035 <dt><var title="">document</var> . <code title=dom-document-characterSet><a href=#dom-document-characterset>characterSet</a></code></dt>
8037 <p>Returns the <a href="#document's-character-encoding">document's character encoding</a>.</p>
8040 <dt><var title="">document</var> . <code title=dom-document-defaultCharset><a href=#dom-document-defaultcharset>defaultCharset</a></code></dt>
8051 encoding">character encoding</dfn>. When a <code><a href=#document>Document</a></code>
8052 object is created, the <a href="#document's-character-encoding">document's character encoding</a>
8054 loading affect this value, as does the <code title=dom-document-charset><a href=#dom-document-charset>charset</a></code> setter. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
8057 IDL attribute must, on getting, return the <a href=#preferred-mime-name>preferred MIME
8058 name</a> of the <a href="#document's-character-encoding">document's character encoding</a>. On
8060 character encoding supported by the user agent, the <a href="#document's-character-encoding">document's
8065 IDL attribute must, on getting, return the <a href=#preferred-mime-name>preferred MIME
8066 name</a> of the <a href="#document's-character-encoding">document's character encoding</a>.</p>
8069 IDL attribute must, on getting, return the <a href=#preferred-mime-name>preferred MIME
8076 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-readyState><a href=#dom-document-readystate>readyState</a></code></dt>
8078 <p>Returns "loading" while the <code><a href=#document>Document</a></code> is loading, and "complete" once it has loaded.</p>
8079 <p>The <code title=event-readystatechange>readystatechange</code> event fires on the <code><a href=#document>Document</a></code> object when this value changes.</p>
8085 <code><a href=#document>Document</a></code> object is created, it must have its
8086 <a href=#current-document-readiness>current document readiness</a> set to the string "loading"
8087 if the document is associated with an <a href=#html-parser>HTML parser</a> or an
8088 <a href=#xml-parser>XML parser</a>, or to the string "complete"
8090 value. When the value is set, the user agent must <a href=#fire-a-simple-event>fire a
8092 <code><a href=#document>Document</a></code> object.</p>
8094 <p>A <code><a href=#document>Document</a></code> is said to have an <dfn id=active-parser>active
8095 parser</dfn> if it is associated with an <a href=#html-parser>HTML parser</a> or
8096 an <a href=#xml-parser>XML parser</a> that has not yet been <a href=#stop-parsing title="stop
8100 attribute must, on getting, return the <a href=#current-document-readiness>current document
8111 <code><a href=#the-html-element-0>html</a></code> element, or null otherwise.</p>
8113 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-head><a href=#dom-document-head>head</a></code></dt>
8115 <p>Returns <a href=#the-head-element>the <code>head</code> element</a>.</p>
8119 first <code><a href=#the-head-element-0>head</a></code> element that is a child of <a href=#the-html-element>the
8126 attribute, on getting, must return <a href=#the-head-element>the <code>head</code>
8127 element</a> of the document (a <code><a href=#the-head-element-0>head</a></code> element or
8132 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-title><a href=#document.title>title</a></code> [ = <var title="">value</var> ]</dt>
8134 <p>Returns the document's title, as given by <a href=#the-title-element>the
8137 <a href=#the-head-element title="the head element"><code>head</code> element</a>,
8145 first <code><a href=#the-title-element-0>title</a></code> element in the document (in tree order), if
8153 <ol><li><p>If the <a href=#root-element>root element</a> is an <code><a href=#svg>svg</a></code>
8157 on the <code>SVGDocument</code> interface. <a href=#refsSVG>[SVG]</a></li>
8160 of the data of all the child <a href=#text-node title="text node">text
8161 nodes</a> of <a href=#the-title-element>the <code>title</code> element</a>, in
8162 <a href=#tree-order>tree order</a>, or the empty string if <a href=#the-title-element>the
8165 <li><p>Replace any sequence of one or more consecutive <a href=#space-character title="space character">space characters</a> in <var title="">value</var> with a single U+0020 SPACE character.</li>
8167 <li><p>Remove any leading or trailing <a href=#space-character title="space
8175 <ol><li><p>If the <a href=#root-element>root element</a> is an <code><a href=#svg>svg</a></code>
8180 will raise an exception). Stop the algorithm here. <a href=#refsSVG>[SVG]</a></li>
8182 <li>If <a href=#the-title-element>the <code>title</code> element</a> is null and
8183 <a href=#the-head-element>the <code>head</code> element</a> is null, then the
8186 <li>If <a href=#the-title-element>the <code>title</code> element</a> is null, then a
8187 new <code><a href=#the-title-element-0>title</a></code> element must be created and appended to
8188 <a href=#the-head-element>the <code>head</code> element</a>. Let <var title="">element</var> be that element. Otherwise, let <var title="">element</var> be <a href=#the-title-element>the <code>title</code>
8194 <li>A single <code><a href=#text>Text</a></code> node whose data is the new value
8197 </ol><p>The <code title=dom-document-title><a href=#document.title>title</a></code> attribute on
8198 the <code><a href=#htmldocument>HTMLDocument</a></code> interface should shadow the attribute
8200 user agent supports both HTML and SVG. <a href=#refsSVG>[SVG]</a></p>
8204 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-body><a href=#dom-document-body>body</a></code> [ = <var title="">value</var> ]</dt>
8206 <p>Returns <a href=#the-body-element>the body element</a>.</p>
8207 <p>Can be set, to replace <a href=#the-body-element>the body element</a>.</p>
8208 <p>If the new value is not a <code><a href=#the-body-element-0>body</a></code> or <code><a href=#frameset>frameset</a></code> element, this will throw a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</p>
8212 <a href=#the-html-element>the <code>html</code> element</a> that is either a
8213 <code><a href=#the-body-element-0>body</a></code> element or a <code><a href=#frameset>frameset</a></code> element. If
8217 <code><a href=#document>Document</a></code> object.</span></p>
8222 attribute, on getting, must return <a href=#the-body-element>the body element</a> of
8223 the document (either a <code><a href=#the-body-element-0>body</a></code> element, a
8224 <code><a href=#frameset>frameset</a></code> element, or null). On setting, the following
8234 --><li>If the new value is not a <code><a href=#the-body-element-0>body</a></code> or
8235 <code><a href=#frameset>frameset</a></code> element, then raise a
8236 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception and abort these
8239 <li>Otherwise, if the new value is the same as <a href=#the-body-element>the body
8242 <li>Otherwise, if <a href=#the-body-element>the body element</a> is not null, then
8245 called with the new value and <a href=#the-body-element title="the body element">the
8249 <li>Otherwise, <a href=#the-body-element>the body element</a> is null. Append
8254 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-images><a href=#dom-document-images>images</a></code></dt>
8256 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-img-element>img</a></code> elements in the <code><a href=#document>Document</a></code>.</p>
8259 <dt><var title="">document</var> . <code title=dom-document-embeds><a href=#dom-document-embeds>embeds</a></code></dt>
8260 <dt><var title="">document</var> . <code title=dom-document-plugins><a href=#dom-document-plugins>plugins</a></code></dt>
8262 <p>Return an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-embed-element>embed</a></code> elements in the <code><a href=#document>Document</a></code>.</p>
8265 <dt><var title="">document</var> . <code title=dom-document-links><a href=#dom-document-links>links</a></code></dt>
8267 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements in the <code><a href=#document>Document</a></code> that have <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes.</p>
8270 <dt><var title="">document</var> . <code title=dom-document-forms><a href=#dom-document-forms>forms</a></code></dt>
8272 <p>Return an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-form-element>form</a></code> elements in the <code><a href=#document>Document</a></code>.</p>
8275 <dt><var title="">document</var> . <code title=dom-document-scripts><a href=#dom-document-scripts>scripts</a></code></dt>
8277 <p>Return an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#script>script</a></code> elements in the <code><a href=#document>Document</a></code>.</p>
8286 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8287 <code><a href=#document>Document</a></code> node, whose filter matches only
8288 <code><a href=#the-img-element>img</a></code> elements.</p>
8291 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8292 <code><a href=#document>Document</a></code> node, whose filter matches only
8293 <code><a href=#the-embed-element>embed</a></code> elements.</p>
8296 attribute must return the same object as that returned by the <code title=dom-document-embeds><a href=#dom-document-embeds>embeds</a></code> attribute.</p>
8299 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8300 <code><a href=#document>Document</a></code> node, whose filter matches only <code><a href=#the-a-element>a</a></code>
8301 elements with <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
8302 attributes and <code><a href=#the-area-element>area</a></code> elements with <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes.</p>
8305 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8306 <code><a href=#document>Document</a></code> node, whose filter matches only
8307 <code><a href=#the-form-element>form</a></code> elements.</p>
8310 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8311 <code><a href=#document>Document</a></code> node, whose filter matches only
8312 <code><a href=#script>script</a></code> elements.</p>
8316 <dl class=domintro><dt><var title="">collection</var> = <var title="">document</var> . <code title=dom-document-getElementsByName><a href=#dom-document-getelementsbyname>getElementsByName</a></code>(<var title="">name</var>)</dt>
8318 <p>Returns a <code><a href=#nodelist>NodeList</a></code> of elements in the
8319 <code><a href=#document>Document</a></code> that have a <code title="">name</code>
8323 <dt><var title="">collection</var> = <var title="">document</var> . <code title=dom-document-getElementsByClassName><a href=#dom-document-getelementsbyclassname>getElementsByClassName(<var title="">classes</var>)</a></code></dt>
8324 <dt><var title="">collection</var> = <var title="">element</var> . <code title=dom-getElementsByClassName><a href=#dom-getelementsbyclassname>getElementsByClassName(<var title="">classes</var>)</a></code></dt>
8326 <p>Returns a <code><a href=#nodelist>NodeList</a></code> of the elements in the object
8327 on which the method was invoked (a <code><a href=#document>Document</a></code> or an
8328 <code><a href=#element>Element</a></code>) that have all the classes given by <var title="">classes</var>.</p>
8335 <p>The <dfn id=dom-document-getelementsbyname title=dom-document-getElementsByName><code>getElementsByName(<var title="">name</var>)</code></dfn> method takes a string <var title="">name</var>, and must return a <a href=#live>live</a>
8336 <code><a href=#nodelist>NodeList</a></code> containing all the <a href=#html-elements>HTML elements</a>
8339 <a href=#case-sensitive>case-sensitive</a> manner), in <a href=#tree-order>tree order</a>.
8340 When the method is invoked on a <code><a href=#document>Document</a></code> object again
8343 <code><a href=#nodelist>NodeList</a></code> object must be returned.</p>
8346 contains a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a> representing
8347 classes. When called, the method must return a <a href=#live>live</a>
8348 <code><a href=#nodelist>NodeList</a></code> object containing all the elements in the
8349 document, in <a href=#tree-order>tree order</a>, that have all the classes
8350 specified in that argument, having obtained the classes by <a href=#split-a-string-on-spaces title="split a string on spaces">splitting a string on
8353 <code><a href=#nodelist>NodeList</a></code>. If the document is in <a href=#quirks-mode>quirks
8355 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> manner, otherwise, the
8356 comparisons must be done in a <a href=#case-sensitive>case-sensitive</a> manner.
8357 When the method is invoked on a <code><a href=#document>Document</a></code> object again
8360 <code><a href=#nodelist>NodeList</a></code> object must be returned.</p>
8363 <code><a href=#htmlelement>HTMLElement</a></code> interface must return a <a href=#live>live</a>
8364 <code><a href=#nodelist>NodeList</a></code> with the nodes that the
8365 <code><a href=#htmldocument>HTMLDocument</a></code> <code title=dom-document-getElementsByClassName><a href=#dom-document-getelementsbyclassname>getElementsByClassName()</a></code>
8367 elements that are not descendants of the <code><a href=#htmlelement>HTMLElement</a></code>
8369 When the method is invoked on an <code><a href=#htmlelement>HTMLElement</a></code> object
8372 new <code><a href=#nodelist>NodeList</a></code> object must be returned.</p>
8393 would return a <code><a href=#nodelist>NodeList</a></code> with the two paragraphs <code title="">p1</code> and <code title="">p2</code> in it.</p>
8413 <hr><p>The <code><a href=#htmldocument>HTMLDocument</a></code> interface <span title="support
8417 attributes of all the <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>,
8418 <code><a href=#the-form-element>form</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, and
8419 <a href=#fallback-free>fallback-free</a> <code><a href=#the-object-element>object</a></code> elements in the
8420 <code><a href=#document>Document</a></code> that have <code title=attr-name>name</code>
8421 content attributes, and the values of the <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes of all the
8422 <code><a href=#the-applet-element>applet</a></code> and <a href=#fallback-free>fallback-free</a>
8423 <code><a href=#the-object-element>object</a></code> elements in the <code><a href=#document>Document</a></code> that have
8424 <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes, and the values
8425 of the <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes of all the
8426 <code><a href=#the-img-element>img</a></code> elements in the <code><a href=#document>Document</a></code> that have
8428 <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes.</p>
8437 <p>Let <var title="">elements</var> be the list of <a href=#dom-document-nameditem-filter title=dom-document-namedItem-filter>named elements</a> with
8438 the name <var title="">name</var> in the <code><a href=#document>Document</a></code>.
8449 element is an <code><a href=#the-iframe-element>iframe</a></code> element, then return the
8450 <code><a href=#windowproxy>WindowProxy</a></code> object of the <a href=#nested-browsing-context>nested browsing
8451 context</a> represented by that <code><a href=#the-iframe-element>iframe</a></code> element,
8465 <p>Otherwise return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
8466 <code><a href=#document>Document</a></code> node, whose filter matches only <a href=#dom-document-nameditem-filter title=dom-document-namedItem-filter>named elements</a> with
8482 <ul><li><code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>,
8483 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, or
8484 <a href=#fallback-free>fallback-free</a> <code><a href=#the-object-element>object</a></code> elements that have a
8488 <li><code><a href=#the-applet-element>applet</a></code> or <a href=#fallback-free>fallback-free</a>
8489 <code><a href=#the-object-element>object</a></code> elements that have an <code title=attr-id><a href=#the-id-attribute>id</a></code> content attribute whose value is <var title="">name</var>, or</li>
8491 <li><code><a href=#the-img-element>img</a></code> elements that have an <code title=attr-id><a href=#the-id-attribute>id</a></code> content attribute whose value is <var title="">name</var>, and that have a <code title=attr-name>name</code> content attribute present also.</li>
8493 </ul><p>An <code><a href=#the-object-element>object</a></code> element is said to be
8494 <dfn id=fallback-free>fallback-free</dfn> if it has no <code><a href=#the-object-element>object</a></code> or
8495 <code><a href=#the-embed-element>embed</a></code> descendants.</p>
8499 <hr><p class=note>The <code title=dom-document-dir><a href=#dom-document-dir>dir</a></code>
8500 attribute on the <code><a href=#htmldocument>HTMLDocument</a></code> interface is defined
8501 along with the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> content
8508 <p><a href=#xml-documents>XML documents</a> can be created from script using the
8509 <code title=dom-DOMImplementation-createDocument><a href=#dom-domimplementation-createdocument>createDocument()</a></code>
8510 method on the <code><a href=#domimplementation>DOMImplementation</a></code> interface.</p>
8512 href=#html-documents>HTML documents</a> can be created using the <code title=dom-DOMHTMLImplementation-createHTMLDocument><a href=#dom-domhtmlimplementation-createhtmldocument>createHTMLDocument()</a></code>
8517 <a href=#document>Document</a> <a href=#dom-domhtmlimplementation-createhtmldocument title=dom-DOMHTMLImplementation-createHTMLDocument>createHTMLDocument</a>(in DOMString title);
8519 <a href=#domimplementation>DOMImplementation</a> implements <a href=#domhtmlimplementation>DOMHTMLImplementation</a>;</pre>
8521 <dl class=domintro><dt><var title="">document</var> = <var title="">document</var> . <code title=dom-document-implementation>implementation</code> . <code title=dom-DOMHTMLImplementation-createHTMLDocument><a href=#dom-domhtmlimplementation-createhtmldocument>createHTMLDocument</a></code>( <var title="">title</var> )</dt>
8524 <p>Returns a new <code><a href=#document>Document</a></code>, with a basic DOM already
8525 constructed with an appropriate <code><a href=#the-title-element-0>title</a></code> element.</p>
8535 <code><a href=#document>Document</a></code> object.</li>
8537 <li><p>Mark <var title="">doc</var> as being an <a href=#html-documents title="HTML
8540 <li><p>Create a <code><a href=#documenttype>DocumentType</a></code> node with the <code title="">name</code> attribute set to the string "<code title="">html</code>", and the other attributes specific to
8541 <code><a href=#documenttype>DocumentType</a></code> objects set to the empty string, null,
8545 <li><p>Create an <code><a href=#the-html-element-0>html</a></code> element, and append it to <var title="">doc</var>.</li>
8547 <li><p>Create a <code><a href=#the-head-element-0>head</a></code> element, and append it to the
8548 <code><a href=#the-html-element-0>html</a></code> element created in the previous step.</p>
8550 <li><p>Create a <code><a href=#the-title-element-0>title</a></code> element, and append it to the
8551 <code><a href=#the-head-element-0>head</a></code> element created in the previous step.</p>
8553 <li><p>Create a <code><a href=#text>Text</a></code> node, and set its <code title="">data</code> attribute to the string given by the method's
8555 <code><a href=#the-title-element-0>title</a></code> element created in the previous step.</p>
8557 <li><p>Create a <code><a href=#the-body-element-0>body</a></code> element, and append it to the
8558 <code><a href=#the-html-element-0>html</a></code> element created in the earlier step.</p>
8572 example, the <code><a href=#the-ol-element>ol</a></code> element represents an ordered list, and
8573 the <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute represents the
8579 values that are not permitted by this specification or <a href=#other-applicable-specifications>other
8594 —<a href="http://example.org/~ernest/"><cite>Ernest</cite></a>,
8603 data (and the <code><a href=#the-cite-element>cite</a></code> element mis-used). A corrected
8614 —<a href="http://example.org/~ernest/">Ernest</a>,
8631 <p>The <code><a href=#the-hgroup-element>hgroup</a></code> element is intended for these kinds of
8662 <p class=example>HTML has a <code><a href=#the-progress-element>progress</a></code> element that
8671 <p>The nodes representing <a href=#html-elements>HTML elements</a> in the DOM
8674 specification. This includes <a href=#html-elements>HTML elements</a> in <a href=#xml-documents>XML
8678 <p>Elements in the DOM <a href=#represents title=represents>represent</a>
8682 <p class=example>For example, an <code><a href=#the-ol-element>ol</a></code> element
8685 <p>The basic interface, from which all the <a href=#html-elements>HTML
8688 requirements,</span> is the <code><a href=#htmlelement>HTMLElement</a></code> interface.</p>
8690 <pre class=idl>interface <dfn id=htmlelement>HTMLElement</dfn> : <a href=#element>Element</a> {
8691 // <a href=#dom-tree-accessors>DOM tree accessors</a>
8692 NodeList <a href=#dom-getelementsbyclassname title=dom-getElementsByClassName>getElementsByClassName</a>(in DOMString classNames);
8694 // <a href=#dynamic-markup-insertion>dynamic markup insertion</a>
8695 attribute DOMString <a href=#dom-innerhtml title=dom-innerHTML>innerHTML</a>;
8696 attribute DOMString <a href=#dom-outerhtml title=dom-outerHTML>outerHTML</a>;
8697 void <a href=#dom-insertadjacenthtml title=dom-insertAdjacentHTML>insertAdjacentHTML</a>(in DOMString position, in DOMString text);
8700 attribute DOMString <a href=#dom-id title=dom-id>id</a>;
8701 attribute DOMString <a href=#dom-title title=dom-title>title</a>;
8702 attribute DOMString <a href=#dom-lang title=dom-lang>lang</a>;
8703 attribute DOMString <a href=#dom-dir title=dom-dir>dir</a>;
8704 attribute <span>DOMString</span> <a href=#dom-classname title=dom-className>className</a>;
8705 readonly attribute <a href=#domtokenlist>DOMTokenList</a> <a href=#dom-classlist title=dom-classList>classList</a>;
8706 readonly attribute <a href=#domstringmap>DOMStringMap</a> <a href=#dom-dataset title=dom-dataset>dataset</a>;
8708 // <a href=#microdata>microdata</a> <!--WARNING: ALSO DUPLICATED IN MICRODATA SECTION-->
8709 attribute boolean <a href=#dom-itemscope title=dom-itemScope>itemScope</a>;
8710 attribute DOMString <a href=#dom-itemtype title=dom-itemType>itemType</a>;
8711 attribute DOMString <a href=#dom-itemid title=dom-itemId>itemId</a>;
8712 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <a href=#dom-itemref title=dom-itemRef>itemRef</a>;
8713 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <a href=#dom-itemprop title=dom-itemProp>itemProp</a>;
8714 readonly attribute <a href=#htmlpropertiescollection>HTMLPropertiesCollection</a> <a href=#dom-properties title=dom-properties>properties</a>;
8715 attribute any <a href=#dom-itemvalue title=dom-itemValue>itemValue</a>;
8717 // <a href=#editing>user interaction</a>
8718 attribute boolean <a href=#dom-hidden title=dom-hidden>hidden</a>;
8719 void <a href=#dom-click title=dom-click>click</a>();
8720 void <a href=#dom-scrollintoview title=dom-scrollIntoView>scrollIntoView</a>();
8721 void <a href=#dom-scrollintoview title=dom-scrollIntoView>scrollIntoView</a>(in boolean top);
8722 attribute long <a href=#dom-tabindex title=dom-tabindex>tabIndex</a>;
8723 void <a href=#dom-focus title=dom-focus>focus</a>();
8724 void <a href=#dom-blur title=dom-blur>blur</a>();
8725 attribute DOMString <a href=#dom-accesskey title=dom-accessKey>accessKey</a>;
8726 readonly attribute DOMString <a href=#dom-accesskeylabel title=dom-accessKeyLabel>accessKeyLabel</a>;
8727 attribute boolean <a href=#dom-draggable title=dom-draggable>draggable</a>;
8728 attribute DOMString <a href=#dom-contenteditable title=dom-contentEditable>contentEditable</a>;
8729 readonly attribute boolean <a href=#dom-iscontenteditable title=dom-isContentEditable>isContentEditable</a>;
8730 attribute <a href=#htmlmenuelement>HTMLMenuElement</a> <a href=#dom-contextmenu title=dom-contextMenu>contextMenu</a>;
8731 attribute DOMString <a href=#dom-spellcheck title=dom-spellcheck>spellcheck</a>;
8733 // <a href=#command-api>command API</a>
8734 readonly attribute DOMString <a href=#dom-command-ro-commandtype title=dom-command-ro-commandType>commandType</a>;
8735 readonly attribute DOMString <a href=#dom-command-ro-label title=dom-command-ro-label>label</a>;
8736 readonly attribute DOMString <a href=#dom-command-ro-icon title=dom-command-ro-icon>icon</a>;
8737 readonly attribute boolean <a href=#dom-command-ro-disabled title=dom-command-ro-disabled>disabled</a>;
8738 readonly attribute boolean <a href=#dom-command-ro-checked title=dom-command-ro-checked>checked</a>;<!-- v2COMMAND
8742 readonly attribute <span>CSSStyleDeclaration</span> <a href=#dom-style title=dom-style>style</a>;
8744 // <a href=#event-handler-idl-attributes>event handler IDL attributes</a>
8745 attribute <a href=#function>Function</a> <a href=#handler-onabort title=handler-onabort>onabort</a>;
8746 attribute <a href=#function>Function</a> <a href=#handler-onblur title=handler-onblur>onblur</a>;
8747 attribute <a href=#function>Function</a> <a href=#handler-oncanplay title=handler-oncanplay>oncanplay</a>;
8748 attribute <a href=#function>Function</a> <a href=#handler-oncanplaythrough title=handler-oncanplaythrough>oncanplaythrough</a>;
8749 attribute <a href=#function>Function</a> <a href=#handler-onchange title=handler-onchange>onchange</a>;
8750 attribute <a href=#function>Function</a> <a href=#handler-onclick title=handler-onclick>onclick</a>;
8751 attribute <a href=#function>Function</a> <a href=#handler-oncontextmenu title=handler-oncontextmenu>oncontextmenu</a>;
8752 attribute <a href=#function>Function</a> <a href=#handler-ondblclick title=handler-ondblclick>ondblclick</a>;
8753 attribute <a href=#function>Function</a> <a href=#handler-ondrag title=handler-ondrag>ondrag</a>;
8754 attribute <a href=#function>Function</a> <a href=#handler-ondragend title=handler-ondragend>ondragend</a>;
8755 attribute <a href=#function>Function</a> <a href=#handler-ondragenter title=handler-ondragenter>ondragenter</a>;
8756 attribute <a href=#function>Function</a> <a href=#handler-ondragleave title=handler-ondragleave>ondragleave</a>;
8757 attribute <a href=#function>Function</a> <a href=#handler-ondragover title=handler-ondragover>ondragover</a>;
8758 attribute <a href=#function>Function</a> <a href=#handler-ondragstart title=handler-ondragstart>ondragstart</a>;
8759 attribute <a href=#function>Function</a> <a href=#handler-ondrop title=handler-ondrop>ondrop</a>;
8760 attribute <a href=#function>Function</a> <a href=#handler-ondurationchange title=handler-ondurationchange>ondurationchange</a>;
8761 attribute <a href=#function>Function</a> <a href=#handler-onemptied title=handler-onemptied>onemptied</a>;
8762 attribute <a href=#function>Function</a> <a href=#handler-onended title=handler-onended>onended</a>;
8763 attribute <a href=#function>Function</a> <a href=#handler-onerror title=handler-onerror>onerror</a>;
8764 attribute <a href=#function>Function</a> <a href=#handler-onfocus title=handler-onfocus>onfocus</a>;
8765 attribute <a href=#function>Function</a> <a href=#handler-onformchange title=handler-onformchange>onformchange</a>;
8766 attribute <a href=#function>Function</a> <a href=#handler-onforminput title=handler-onforminput>onforminput</a>;
8767 attribute <a href=#function>Function</a> <a href=#handler-oninput title=handler-oninput>oninput</a>;
8768 attribute <a href=#function>Function</a> <a href=#handler-oninvalid title=handler-oninvalid>oninvalid</a>;
8769 attribute <a href=#function>Function</a> <a href=#handler-onkeydown title=handler-onkeydown>onkeydown</a>;
8770 attribute <a href=#function>Function</a> <a href=#handler-onkeypress title=handler-onkeypress>onkeypress</a>;
8771 attribute <a href=#function>Function</a> <a href=#handler-onkeyup title=handler-onkeyup>onkeyup</a>;
8772 attribute <a href=#function>Function</a> <a href=#handler-onload title=handler-onload>onload</a>;
8773 attribute <a href=#function>Function</a> <a href=#handler-onloadeddata title=handler-onloadeddata>onloadeddata</a>;
8774 attribute <a href=#function>Function</a> <a href
8775 attribute <a href=#function>Function</a> <a href=#handler-onloadstart title=handler-onloadstart>onloadstart</a>;
8776 attribute <a href=#function>Function</a> <a href=#handler-onmousedown title=handler-onmousedown>onmousedown</a>;
8777 attribute <a href=#function>Function</a> <a href=#handler-onmousemove title=handler-onmousemove>onmousemove</a>;
8778 attribute <a href=#function>Function</a> <a href=#handler-onmouseout title=handler-onmouseout>onmouseout</a>;
8779 attribute <a href=#function>Function</a> <a href=#handler-onmouseover title=handler-onmouseover>onmouseover</a>;
8780 attribute <a href=#function>Function</a> <a href=#handler-onmouseup title=handler-onmouseup>onmouseup</a>;
8781 attribute <a href=#function>Function</a> <a href=#handler-onmousewheel title=handler-onmousewheel>onmousewheel</a>;
8782 attribute <a href=#function>Function</a> <a href=#handler-onpause title=handler-onpause>onpause</a>;
8783 attribute <a href=#function>Function</a> <a href=#handler-onplay title=handler-onplay>onplay</a>;
8784 attribute <a href=#function>Function</a> <a href=#handler-onplaying title=handler-onplaying>onplaying</a>;
8785 attribute <a href=#function>Function</a> <a href=#handler-onprogress title=handler-onprogress>onprogress</a>;
8786 attribute <a href=#function>Function</a> <a href=#handler-onratechange title=handler-onratechange>onratechange</a>;
8787 attribute <a href=#function>Function</a> <a href=#handler-onreadystatechange title=handler-onreadystatechange>onreadystatechange</a>;
8788 attribute <a href=#function>Function</a> <a href=#handler-onscroll title=handler-onscroll>onscroll</a>;
8789 attribute <a href=#function>Function</a> <a href=#handler-onseeked title=handler-onseeked>onseeked</a>;
8790 attribute <a href=#function>Function</a> <a href=#handler-onseeking title=handler-onseeking>onseeking</a>;
8791 attribute <a href=#function>Function</a> <a href=#handler-onselect title=handler-onselect>onselect</a>;
8792 attribute <a href=#function>Function</a> <a href=#handler-onshow title=handler-onshow>onshow</a>;
8793 attribute <a href=#function>Function</a> <a href=#handler-onstalled title=handler-onstalled>onstalled</a>;
8794 attribute <a href=#function>Function</a> <a href=#handler-onsubmit title=handler-onsubmit>onsubmit</a>;
8795 attribute <a href=#function>Function</a> <a href=#handler-onsuspend title=handler-onsuspend>onsuspend</a>;
8796 attribute <a href=#function>Function</a> <a href=#handler-ontimeupdate title=handler-ontimeupdate>ontimeupdate</a>;
8797 attribute <a href=#function>Function</a> <a href=#handler-onvolumechange title=handler-onvolumechange>onvolumechange</a>;
8798 attribute <a href=#function>Function</a> <a href=#handler-onwaiting title=handler-onwaiting>onwaiting</a>;
8801 interface <dfn id=htmlunknownelement>HTMLUnknownElement</dfn> : <a href=#htmlelement>HTMLElement</a> { };</pre>
8803 <p>The <code><a href=#htmlelement>HTMLElement</a></code> interface holds methods and
8810 <p>The <code><a href=#htmlunknownelement>HTMLUnknownElement</a></code> interface must be used for
8811 <a href=#html-elements>HTML elements</a> that are not defined by this
8812 specification (or <a href=#other-applicable-specifications>other applicable specifications</a>).</p>
8821 all <a href=#html-elements>HTML elements</a><span class=impl> (even those not
8824 <ul class=brief><li><code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code></li>
8825 <li><code title=attr-class><a href=#classes>class</a></code></li>
8826 <li><code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code></li>
8827 <li><code title=attr-contextmenu><a href=#attr-contextmenu>contextmenu</a></code></li>
8828 <li><code title=attr-dir><a href=#the-dir-attribute>dir</a></code></li>
8829 <li><code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code></li>
8830 <li><code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code></li>
8831 <li><code title=attr-id><a href=#the-id-attribute>id</a></code></li>
8833 <li><code title=attr-itemid><a href=#attr-itemid>itemid</a></code></li>
8834 <li><code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code></li>
8835 <li><code title=attr-itemref><a href=#attr-itemref>itemref</a></code></li>
8836 <li><code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code></li>
8837 <li><code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code></li>
8839 <li><code title=attr-lang><a href=#attr-lang>lang</a></code></li>
8840 <li><code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code></li>
8841 <li><code title=attr-style><a href=#the-style-attribute>style</a></code></li>
8842 <li><code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code></li>
8843 <li><code title=attr-title><a href=#the-title-attribute>title</a></code></li>
8844 </ul><hr><p>The following <a href=#event-handler-content-attributes>event handler content attributes</a> may
8845 be specified on any <a href=#html-elements title="HTML elements">HTML
8848 <ul class=brief><li><code title=handler-onabort><a href=#handler-onabort>onabort</a></code></li>
8849 <li><code title=handler-onblur><a href=#handler-onblur>onblur</a></code>*</li>
8850 <li><code title=handler-oncanplay><a href=#handler-oncanplay>oncanplay</a></code></li>
8851 <li><code title=handler-oncanplaythrough><a href=#handler-oncanplaythrough>oncanplaythrough</a></code></li>
8852 <li><code title=handler-onchange><a href=#handler-onchange>onchange</a></code></li>
8853 <li><code title=handler-onclick><a href=#handler-onclick>onclick</a></code></li>
8854 <li><code title=handler-oncontextmenu><a href=#handler-oncontextmenu>oncontextmenu</a></code></li>
8855 <li><code title=handler-ondblclick><a href=#handler-ondblclick>ondblclick</a></code></li>
8856 <li><code title=handler-ondrag><a href=#handler-ondrag>ondrag</a></code></li>
8857 <li><code title=handler-ondragend><a href=#handler-ondragend>ondragend</a></code></li>
8858 <li><code title=handler-ondragenter><a href=#handler-ondragenter>ondragenter</a></code></li>
8859 <li><code title=handler-ondragleave><a href=#handler-ondragleave>ondragleave</a></code></li>
8860 <li><code title=handler-ondragover><a href=#handler-ondragover>ondragover</a></code></li>
8861 <li><code title=handler-ondragstart><a href=#handler-ondragstart>ondragstart</a></code></li>
8862 <li><code title=handler-ondrop><a href=#handler-ondrop>ondrop</a></code></li>
8863 <li><code title=handler-ondurationchange><a href=#handler-ondurationchange>ondurationchange</a></code></li>
8864 <li><code title=handler-onemptied><a href=#handler-onemptied>onemptied</a></code></li>
8865 <li><code title=handler-onended><a href=#handler-onended>onended</a></code></li>
8866 <li><code title=handler-onerror><a href=#handler-onerror>onerror</a></code>*</li>
8867 <li><code title=handler-onfocus><a href=#handler-onfocus>onfocus</a></code>*</li>
8868 <li><code title=handler-onformchange><a href=#handler-onformchange>onformchange</a></code></li>
8869 <li><code title=handler-onforminput><a href=#handler-onforminput>onforminput</a></code></li>
8870 <li><code title=handler-oninput><a href=#handler-oninput>oninput</a></code></li>
8871 <li><code title=handler-oninvalid><a href=#handler-oninvalid>oninvalid</a></code></li>
8872 <li><code title=handler-onkeydown><a href=#handler-onkeydown>onkeydown</a></code></li>
8873 <li><code title=handler-onkeypress><a href=#handler-onkeypress>onkeypress</a></code></li>
8874 <li><code title=handler-onkeyup><a href=#handler-onkeyup>onkeyup</a></code></li>
8875 <li><code title=handler-onload><a href=#handler-onload>onload</a></code>*</li>
8876 <li><code title=handler-onloadeddata><a href=#handler-onloadeddata>onloadeddata</a></code></li>
8877 <li><code title=handler-onloadedmetadata><a href=#handler-onloadedmetadata>onloadedmetadata</a></code></li>
8878 <li><code title=handler-onloadstart><a href=#handler-onloadstart>onloadstart</a></code></li>
8879 <li><code title=handler-onmousedown><a href=#handler-onmousedown>onmousedown</a></code></li>
8880 <li><code title=handler-onmousemove><a href=#handler-onmousemove>onmousemove</a></code></li>
8881 <li><code title=handler-onmouseout><a href=#handler-onmouseout>onmouseout</a></code></li>
8882 <li><code title=handler-onmouseover><a href=#handler-onmouseover>onmouseover</a></code></li>
8883 <li><code title=handler-onmouseup><a href=#handler-onmouseup>onmouseup</a></code></li>
8884 <li><code title=handler-onmousewheel><a href=#handler-onmousewheel>onmousewheel</a></code></li>
8885 <li><code title=handler-onpause><a href=#handler-onpause>onpause</a></code></li>
8886 <li><code title=handler-onplay><a href=#handler-onplay>onplay</a></code></li>
8887 <li><code title=handler-onplaying><a href=#handler-onplaying>onplaying</a></code></li>
8888 <li><code title=handler-onprogress><a href=#handler-onprogress>onprogress</a></code></li>
8889 <li><code title=handler-onratechange><a href=#handler-onratechange>onratechange</a></code></li>
8890 <li><code title=handler-onreadystatechange><a href=#handler-onreadystatechange>onreadystatechange</a></code></li>
8891 <li><code title=handler-onscroll><a href=#handler-onscroll>onscroll</a></code></li>
8892 <li><code title=handler-onseeked><a href=#handler-onseeked>onseeked</a></code></li>
8893 <li><code title=handler-onseeking><a href=#handler-onseeking>onseeking</a></code></li>
8894 <li><code title=handler-onselect><a href=#handler-onselect>onselect</a></code></li>
8895 <li><code title=handler-onshow><a href=#handler-onshow>onshow</a></code></li>
8896 <li><code title=handler-onstalled><a href=#handler-onstalled>onstalled</a></code></li>
8897 <li><code title=handler-onsubmit><a href=#handler-onsubmit>onsubmit</a></code></li>
8898 <li><code title=handler-onsuspend><a href=#handler-onsuspend>onsuspend</a></code></li>
8899 <li><code title=handler-ontimeupdate><a href=#handler-ontimeupdate>ontimeupdate</a></code></li>
8900 <li><code title=handler-onvolumechange><a href=#handler-onvolumechange>onvolumechange</a></code></li>
8901 <li><code title=handler-onwaiting><a href=#handler-onwaiting>onwaiting</a></code></li>
8903 different meaning when specified on <code><a href=#the-body-element-0>body</a></code> elements as
8904 those elements expose <a href=#event-handlers>event handlers</a> of the
8905 <code><a href=#window>Window</a></code> object with the same names.</p>
8908 are not useful on all elements. For example, only <a href=#media-element title="media
8909 element">media elements</a> will ever receive a <code title=event-media-volumechange><a href=#event-media-volumechange>volumechange</a></code> event fired by
8912 <hr><p><a href=#custom-data-attribute title="custom data attribute">Custom data attributes</a>
8913 (e.g. <code title="">data-foldername</code> or <code title="">data-msgid</code>) can be specified on any <a href=#html-elements title="HTML elements">HTML element</a>, to store custom data
8916 <hr><p>In <a href=#html-documents>HTML documents</a>, elements in the <a href=#html-namespace-0>HTML
8920 <a href=#xml-documents>XML documents</a>.</p>
8925 parsed by an <a href=#html-parser>HTML parser</a>, the attribute ends up in no
8936 and attributes, a set of <a href=#annotations-for-assistive-technology-products-(aria)>annotations for assistive technology
8942 <p>The <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute specifies its
8944 value must be unique amongst all the IDs in the element's <a href=#home-subtree>home
8946 must not contain any <a href=#space-character title="space character">space
8952 <p class=note>An element's <a href=#concept-id title=concept-id>unique
8963 <a href=#home-subtree>home subtree</a> (e.g. for selectors in CSS or for the
8964 <code title=dom-Document-getElementById><a href=#dom-document-getelementbyid>getElementById()</a></code>
8968 derived from the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code>
8973 element's ID in a way that doesn't conflict with the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute.</p>
8976 <a href=#reflect>reflect</a> the <code title=attr-id><a href=#the-id-attribute>id</a></code> content
8984 <p>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
8985 <a href=#represents>represents</a> advisory information for the element, such
8994 that the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute of the
8995 nearest ancestor <a href=#html-elements title="HTML elements">HTML element</a>
8996 with a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute set is also
9002 <p>If the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute's value
9009 <p>Caution is advised with respect to the use of newlines in <code title=attr-title><a href=#the-title-attribute>title</a></code> attributes.</p>
9019 <p>Some elements, such as <code><a href=#the-link-element>link</a></code>, <code><a href=#the-abbr-element>abbr</a></code>, and
9020 <code><a href=#the-input-element>input</a></code>, define additional semantics for the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute beyond the semantics
9026 must <a href=#reflect>reflect</a> the <code title=attr-title><a href=#the-title-attribute>title</a></code>
9033 <h5 id=the-lang-and-xml:lang-attributes><span class=secno>3.2.3.3 </span>The <code title=attr-lang><a href=#attr-lang>lang</a></code> and <code title=attr-xml-lang><a href=#attr-xml-lang>xml:lang</a></code> attributes</h5>
9041 are below -->. <a href=#refsBCP47>[BCP47]</a></p>
9044 attribute in the <a href=#xml-namespace>XML namespace</a> is defined in XML. <a href=#refsXML>[XML]</a></p>
9050 <p>The <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute in no namespace
9051 may be used on any <a href=#html-elements title="HTML elements">HTML
9054 <p>The <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code>
9056 <a href=#html-elements>HTML elements</a> in <a href=#xml-documents>XML documents</a>, as well as
9058 (in particular, MathML and SVG allow <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attributes in the
9060 elements). If both the <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute
9061 in no namespace and the <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attribute in the <span>XML
9063 have exactly the same value when compared in an <a href=#ascii-case-insensitive>ASCII
9066 <p>Authors must not use the <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attribute in the <span>XML
9067 namespace</span></a> on <a href=#html-elements>HTML elements</a> in <a href=#html-documents>HTML
9070 literal localname "<code title="">xml:lang</code>" on <a href=#html-elements>HTML
9071 elements</a> in <a href=#html-documents>HTML documents</a>, but such attributes
9072 must only be specified if a <code title=attr-lang><a href=#attr-lang>lang</a></code>
9074 must have the same value when compared in an <a href=#ascii-case-insensitive>ASCII
9085 if the node is an element) that has a <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attribute in the
9086 <span>XML namespace</span></a> set or is an <a href=#html-elements title="HTML
9087 elements">HTML element</a> and has a <code title=attr-lang><a href=#attr-lang>lang</a></code> in no namespace attribute set. That
9091 <p>If both the <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute in no
9092 namespace and the <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attribute in the <span>XML
9094 the <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attribute
9095 in the <span>XML namespace</span></a>, and the <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute in no namespace must be
9096 <a href=#ignore title=ignore>ignored</a> for the purposes of determining
9099 <p>If none of the node's ancestors, including the <a href=#root-element>root
9101 <a href=#pragma-set-default-language>pragma-set default language</a> set, then that is the
9102 language of the node. If there is no <a href=#pragma-set-default-language>pragma-set default
9137 must <a href=#reflect>reflect</a> the <code title=attr-lang><a href=#attr-lang>lang</a></code>
9147 <p>The <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute is
9148 defined in XML Base. <a href=#refsXMLBASE>[XMLBASE]</a></p>
9150 <p>The <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute may be
9151 used on elements of <a href=#xml-documents>XML documents</a>. Authors must not
9152 use the <code title=attr-xml-base><a href=#the-xml:base-attribute-(xml-only)>xml:base</a></code> attribute in
9153 <a href=#html-documents>HTML documents</a>.</p>
9158 <p>The <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute specifies the
9159 element's text directionality. The attribute is an <a href=#enumerated-attribute>enumerated
9176 particular by the <code><a href=#the-canvas-element>canvas</a></code> element's text rendering API,
9179 'ltr' or 'rtl', then that is <a href=#the-directionality>the directionality</a> of the
9180 element. Otherwise, if the element is <a href=#being-rendered>being rendered</a>,
9181 then <a href=#the-directionality>the directionality</a> of the element is the
9183 determined from the value of the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code>
9184 attribute on the element. Otherwise, if the element's <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute has the state <i>ltr</i>, the
9191 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-dir><a href=#dom-dir>dir</a></code> [ = <var title="">value</var> ]</dt>
9193 <p>Returns <a href=#the-html-element>the <code>html</code> element</a>'s <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute's value, if any.</p>
9194 <p>Can be set, to either "<code title="">ltr</code>" or "<code title="">rtl</code>", to replace <a href=#the-html-element>the <code>html</code> element</a>'s <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute's value.</p>
9195 <p>If there is no <a href=#the-html-element title="the html element"><code>html</code> element</a>, returns the empty string and ignores new values.</p>
9201 an element must <a href=#reflect>reflect</a> the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> content attribute of that element,
9202 <a href=#limited-to-only-known-values>limited to only known values</a>.</p>
9205 attribute on <code><a href=#htmldocument>HTMLDocument</a></code> objects must
9206 <a href=#reflect>reflect</a> the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> content
9207 attribute of <a href=#the-html-element>the <code>html</code> element</a>, if any,
9208 <a href=#limited-to-only-known-values>limited to only known values</a>. If there is no such
9214 <p class=note>Authors are strongly encouraged to use the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute to indicate text direction
9222 <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have a
9223 <code title=attr-class><a href=#classes>class</a></code> attribute specified.</p>
9226 <a href=#set-of-space-separated-tokens>set of space-separated tokens</a> representing the various
9231 <p>The classes that an <a href=#html-elements title="HTML elements">HTML
9233 returned when the value of the <code title=attr-class><a href=#classes>class</a></code>
9234 attribute is <a href=#split-a-string-on-spaces title="split a string on spaces">split on
9240 matching in selectors in CSS, the <code title=dom-document-getElementsByClassName><a href=#dom-document-getelementsbyclassname>getElementsByClassName()</a></code>
9244 use in the <code title=attr-class><a href=#classes>class</a></code> attribute, but
9253 attributes must both <a href=#reflect>reflect</a> the <code title=attr-class><a href=#classes>class</a></code> content attribute.</p>
9261 <p>All <a href=#html-elements>HTML elements</a> may have the <code title=attr-style><a href=#the-style-attribute>style</a></code> content attribute set. This is a
9263 Attribute Syntax specification. <a href=#refsCSSATTR>[CSSATTR]</a></p>
9270 to the rules given for <span>CSS styling attributes</span>. <a href=#refsCSSATTR>[CSSATTR]</a></p>
9274 <p>Documents that use <code title=attr-style><a href=#the-style-attribute>style</a></code>
9278 <p class=note>In particular, using the <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute to hide and show content,
9280 is non-conforming. (To hide and show content, use the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute.)</p>
9282 <hr><dl class=domintro><dt><var title="">element</var> . <code title=dom-style><a href=#dom-style>style</a></code></dt>
9284 <p>Returns a <code>CSSStyleDeclaration</code> object for the element's <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute.</p>
9293 create a <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute on the
9297 returned each time. <a href=#refsCSSOM>[CSSOM]</a></p>
9304 marked up using the <code><a href=#the-span-element>span</a></code> element and the <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute to make those words show
9319 character after the hyphen, is <a href=#xml-compatible>XML-compatible</a>, and
9323 <p class=note>All attributes on <a href=#html-elements>HTML elements</a> in
9324 <a href=#html-documents>HTML documents</a> get ASCII-lowercased automatically, so
9328 <p><a href=#custom-data-attribute title="custom data attribute">Custom data attributes</a>
9359 <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have
9360 any number of <a href=#custom-data-attribute title="custom data attribute">custom data
9363 <hr><dl class=domintro><dt><var title="">element</var> . <code title=dom-dataset><a href=#dom-dataset>dataset</a></code></dt>
9366 <p>Returns a <code><a href=#domstringmap>DOMStringMap</a></code> object for the element's <code title=attr-data-*><a href=#attr-data-*>data-*</a></code> attributes.</p>
9375 attribute provides convenient accessors for all the <code title=attr-data-*><a href=#attr-data-*>data-*</a></code> attributes on an element. On
9376 getting, the <code title=dom-dataset><a href=#dom-dataset>dataset</a></code> IDL attribute
9377 must return a <code><a href=#domstringmap>DOMStringMap</a></code> object, associated with the
9400 character <a href=#converted-to-ascii-uppercase>converted to ASCII uppercase</a>.</li>
9418 Z), throw a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and abort these
9424 character <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</li>
9446 Z), throw a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and abort these
9452 character <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</li>
9469 e.g. as part of a game, it would have to use the <code title=attr-class><a href=#classes>class</a></code> attribute along with <code title=attr-data-*><a href=#attr-data-*>data-*</a></code> attributes:</p>
9497 <p>JavaScript libraries may use the <a href=#custom-data-attribute title="custom data
9519 <dd>A list of <a href=#content-categories title="content categories">categories</a> to
9521 <a href=#content-models>content models</a> for each element.</dd>
9550 <a href=#represents>represents</a>, along with any additional normative
9558 on <a href=#html-elements>HTML elements</a> may have any string value, including
9567 description of the element's expected contents. An <a href=#html-elements title="HTML
9573 content model or not, <a href=#text-node title="text
9575 equivalent to <code>Text</code> nodes</a>, and <a href=#entity-references>entity reference nodes are treated as if
9578 <p>The <a href=#space-character title="space character">space characters</a> are
9582 --> Empty <a href=#text-node title="text node">text nodes</a> and <a href=#text-node title="text node">text nodes</a> consisting of just sequences of
9586 <p><a href=#inter-element-whitespace>Inter-element whitespace</a>, comment nodes, and
9595 <a href=#inter-element-whitespace>inter-element whitespace</a>) between them.</p>
9597 <p>Authors must not use <a href=#html-elements>HTML elements</a> anywhere except
9606 contain a single HTML <code><a href=#the-div-element>div</a></code> element. Thus, a
9607 <code><a href=#the-div-element>div</a></code> element is allowed in that context, even though
9608 this is not explicitly normatively stated by this specification. <a href=#refsATOM>[ATOM]</a></p>
9611 <p>In addition, <a href=#html-elements>HTML elements</a> may be orphan nodes
9616 <p>For example, creating a <code><a href=#the-td-element>td</a></code> element and storing it
9618 <code><a href=#the-td-element>td</a></code> elements are otherwise only supposed to be used
9619 inside <code><a href=#the-tr-element>tr</a></code> elements.</p>
9636 <ul class=brief><li><a href=#metadata-content>Metadata content</a></li>
9637 <li><a href=#flow-content>Flow content</a></li>
9638 <li><a href=#sectioning-content>Sectioning content</a></li>
9639 <li><a href=#heading-content>Heading content</a></li>
9640 <li><a href=#phrasing-content>Phrasing content</a></li>
9641 <li><a href=#embedded-content>Embedded content</a></li>
9642 <li><a href=#interactive-content>Interactive content</a></li>
9652 <p>In addition, certain elements are categorized as <a href=#form-associated-element title="form-associated element">form-associated elements</a> and
9668 <ul class="brief category-list"><li><code><a href=#the-base-element>base</a></code></li>
9669 <li><code><a href=#the-command>command</a></code></li>
9670 <li><code><a href=#the-link-element>link</a></code></li>
9671 <li><code><a href=#meta>meta</a></code></li>
9672 <li><code><a href=#the-noscript-element>noscript</a></code></li>
9673 <li><code><a href=#script>script</a></code></li>
9674 <li><code><a href=#the-style-element>style</a></code></li>
9675 <li><code><a href=#the-title-element-0>title</a></code></li>
9677 metadata-related (e.g. RDF) are also <a href=#metadata-content>metadata
9715 <ul class="brief category-list"><li><code><a href=#the-a-element>a</a></code></li>
9716 <li><code><a href=#the-abbr-element>abbr</a></code></li>
9717 <li><code><a href=#the-address-element>address</a></code></li>
9718 <li><code><a href=#the-area-element>area</a></code> (if it is a descendant of a <code><a href=#the-map-element>map</a></code> element)</li>
9719 <li><code><a href=#the-article-element>article</a></code></li>
9720 <li><code><a href=#the-aside-element>aside</a></code></li>
9721 <li><code><a href=#audio>audio</a></code></li>
9722 <li><code><a href=#the-b-element>b</a></code></li>
9723 <li><code><a href=#the-bdo-element>bdo</a></code></li>
9724 <li><code><a href=#the-blockquote-element>blockquote</a></code></li>
9725 <li><code><a href=#the-br-element>br</a></code></li>
9726 <li><code><a href=#the-button-element>button</a></code></li>
9727 <li><code><a href=#the-canvas-element>canvas</a></code></li>
9728 <li><code><a href=#the-cite-element>cite</a></code></li>
9729 <li><code><a href=#the-code-element>code</a></code></li>
9730 <li><code><a href=#the-command>command</a></code></li>
9732 <li><code><a href=#the-datalist-element>datalist</a></code></li>
9733 <li><code><a href=#the-del-element>del</a></code></li>
9734 <li><code><a href=#the-details-element>details</a></code></li>
9735 <li><code><a href=#the-dfn-element>dfn</a></code></li>
9736 <li><code><a href=#the-div-element>div</a></code></li>
9737 <li><code><a href=#the-dl-element>dl</a></code></li>
9738 <li><code><a href=#the-em-element>em</a></code></li>
9739 <li><code><a href=#the-embed-element>embed</a></code></li>
9740 <li><code><a href=#the-fieldset-element>fieldset</a></code></li>
9741 <li><code><a href=#the-figure-element>figure</a></code></li>
9742 <li><code><a href=#the-footer-element>footer</a></code></li>
9743 <li><code><a href=#the-form-element>form</a></code></li>
9744 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code></li>
9745 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code></li>
9746 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code></li>
9747 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code></li>
9748 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code></li>
9749 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code></li>
9750 <li><code><a href=#the-header-element>header</a></code></li>
9751 <li><code><a href=#the-hgroup-element>hgroup</a></code></li>
9752 <li><code><a href=#the-hr-element>hr</a></code></li>
9753 <li><code><a href=#the-i-element>i</a></code></li>
9754 <li><code><a href=#the-iframe-element>iframe</a></code></li>
9755 <li><code><a href=#the-img-element>img</a></code></li>
9756 <li><code><a href=#the-input-element>input</a></code></li>
9757 <li><code><a href=#the-ins-element>ins</a></code></li>
9758 <li><code><a href=#the-kbd-element>kbd</a></code></li>
9759 <li><code><a href=#the-keygen-element>keygen</a></code></li>
9760 <li><code><a href=#the-label-element>label</a></code></li>
9762 <li><code><a href=#the-link-element>link</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present)</li>
9764 <li><code><a href=#the-map-element>map</a></code></li>
9765 <li><code><a href=#the-mark-element>mark</a></code></li>
9766 <li><code><a href=#math>math</a></code></li>
9767 <li><code><a href=#menus>menu</a></code></li>
9769 <li><code><a href=#meta>meta</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present)</li>
9771 <li><code><a href=#the-meter-element>meter</a></code></li>
9772 <li><code><a href=#the-nav-element>nav</a></code></li>
9773 <li><code><a href=#the-noscript-element>noscript</a></code></li>
9774 <li><code><a href=#the-object-element>object</a></code></li>
9775 <li><code><a href=#the-ol-element>ol</a></code></li>
9776 <li><code><a href=#the-output-element>output</a></code></li>
9777 <li><code><a href=#the-p-element>p</a></code></li>
9778 <li><code><a href=#the-pre-element>pre</a></code></li>
9779 <li><code><a href=#the-progress-element>progress</a></code></li>
9780 <li><code><a href=#the-q-element>q</a></code></li>
9781 <li><code><a href=#the-ruby-element>ruby</a></code></li>
9782 <li><code><a href=#the-samp-element>samp</a></code></li>
9783 <li><code><a href=#script>script</a></code></li>
9784 <li><code><a href=#the-section-element>section</a></code></li>
9785 <li><code><a href=#the-select-element>select</a></code></li>
9786 <li><code><a href=#the-small-element>small</a></code></li>
9787 <li><code><a href=#the-span-element>span</a></code></li>
9788 <li><code><a href=#the-strong-element>strong</a></code></li>
9789 <li><code><a href=#the-style-element>style</a></code> (if the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is present)</li>
9790 <li><code><a href=#the-sub-and-sup-elements>sub</a></code></li>
9791 <li><code><a href=#the-sub-and-sup-elements>sup</a></code></li>
9792 <li><code><a href=#svg>svg</a></code></li>
9793 <li><code><a href=#the-table-element>table</a></code></li>
9794 <li><code><a href=#the-textarea-element>textarea</a></code></li>
9795 <li><code><a href=#the-time-element>time</a></code></li>
9796 <li><code><a href=#the-ul-element>ul</a></code></li>
9797 <li><code><a href=#the-var-element>var</a></code></li>
9798 <li><code><a href=#video>video</a></code></li>
9799 <li><code><a href=#the-wbr-element>wbr</a></code></li>
9800 <li><a href=#text-content title="text content">Text</a></li>
9802 <a href=#flow-content>flow content</a> should have either at least one descendant
9803 <a href=#text-node>text node</a> that is not <a href=#inter-element-whitespace>inter-element
9805 <a href=#embedded-content>embedded content</a>. For the purposes of this requirement,
9806 <code><a href=#the-del-element>del</a></code> elements and their descendants must not be counted
9807 as contributing to the ancestors of the <code><a href=#the-del-element>del</a></code>
9820 of <a href=#heading-content title="heading content">headings</a> and <a href=#the-footer-element title=footer>footers</a>.</p>
9823 <ul class="brief category-list"><li><code><a href=#the-article-element>article</a></code></li>
9824 <li><code><a href=#the-aside-element>aside</a></code></li>
9825 <li><code><a href=#the-nav-element>nav</a></code></li>
9826 <li><code><a href=#the-section-element>section</a></code></li>
9827 </ul><p>Each <a href=#sectioning-content>sectioning content</a> element potentially has a
9828 heading and an <a href=#outline>outline</a>. See the section on
9829 <a href=#headings-and-sections>headings and sections</a> for further details.</p>
9831 <p class=note>There are also certain elements that are <a href=#sectioning-root title="sectioning root">sectioning roots</a>. These are distinct
9832 from <a href=#sectioning-content>sectioning content</a>, but they can also have an
9833 <a href=#outline>outline</a>.</p>
9839 (whether explicitly marked up using <a href=#sectioning-content>sectioning content</a>
9843 <ul class="brief category-list"><li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code></li>
9844 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code></li>
9845 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code></li>
9846 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code></li>
9847 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code></li>
9848 <li><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code></li>
9849 <li><code><a href=#the-hgroup-element>hgroup</a></code></li>
9854 level. Runs of <a href=#phrasing-content>phrasing content</a> form <a href=#paragraph title=paragraph>paragraphs</a>.</p>
9857 <ul class="brief category-list"><li><code><a href=#the-a-element>a</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>)</li>
9858 <li><code><a href=#the-abbr-element>abbr</a></code></li>
9859 <li><code><a href=#the-area-element>area</a></code> (if it is a descendant of a <code><a href=#the-map-element>map</a></code> element)</li>
9860 <li><code><a href=#audio>audio</a></code></li>
9861 <li><code><a href=#the-b-element>b</a></code></li>
9862 <li><code><a href=#the-bdo-element>bdo</a></code></li>
9863 <li><code><a href=#the-br-element>br</a></code></li>
9864 <li><code><a href=#the-button-element>button</a></code></li>
9865 <li><code><a href=#the-canvas-element>canvas</a></code></li>
9866 <li><code><a href=#the-cite-element>cite</a></code></li>
9867 <li><code><a href=#the-code-element>code</a></code></li>
9868 <li><code><a href=#the-command>command</a></code></li>
9869 <li><code><a href=#the-datalist-element>datalist</a></code></li>
9870 <li><code><a href=#the-del-element>del</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>)</li>
9871 <li><code><a href=#the-dfn-element>dfn</a></code></li>
9872 <li><code><a href=#the-em-element>em</a></code></li>
9873 <li><code><a href=#the-embed-element>embed</a></code></li>
9874 <li><code><a href=#the-i-element>i</a></code></li>
9875 <li><code><a href=#the-iframe-element>iframe</a></code></li>
9876 <li><code><a href=#the-img-element>img</a></code></li>
9877 <li><code><a href=#the-input-element>input</a></code></li>
9878 <li><code><a href=#the-ins-element>ins</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>)</li>
9879 <li><code><a href=#the-kbd-element>kbd</a></code></li>
9880 <li><code><a href=#the-keygen-element>keygen</a></code></li>
9881 <li><code><a href=#the-label-element>label</a></code></li>
9883 <li><code><a href=#the-link-element>link</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present)</li>
9885 <li><code><a href=#the-map-element>map</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>)</li>
9886 <li><code><a href=#the-mark-element>mark</a></code></li>
9887 <li><code><a href=#math>math</a></code></li>
9889 <li><code><a href=#meta>meta</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present)</li>
9891 <li><code><a href=#the-meter-element>meter</a></code></li>
9892 <li><code><a href=#the-noscript-element>noscript</a></code></li>
9893 <li><code><a href=#the-object-element>object</a></code></li>
9894 <li><code><a href=#the-output-element>output</a></code></li>
9895 <li><code><a href=#the-progress-element>progress</a></code></li>
9896 <li><code><a href=#the-q-element>q</a></code></li>
9897 <li><code><a href=#the-ruby-element>ruby</a></code></li>
9898 <li><code><a href=#the-samp-element>samp</a></code></li>
9899 <li><code><a href=#script>script</a></code></li>
9900 <li><code><a href=#the-select-element>select</a></code></li>
9901 <li><code><a href=#the-small-element>small</a></code></li>
9902 <li><code><a href=#the-span-element>span</a></code></li>
9903 <li><code><a href=#the-strong-element>strong</a></code></li>
9904 <li><code><a href=#the-sub-and-sup-elements>sub</a></code></li>
9905 <li><code><a href=#the-sub-and-sup-elements>sup</a></code></li>
9906 <li><code><a href=#svg>svg</a></code></li>
9907 <li><code><a href=#the-textarea-element>textarea</a></code></li>
9908 <li><code><a href=#the-time-element>time</a></code></li>
9909 <li><code><a href=#the-var-element>var</a></code></li>
9910 <li><code><a href=#video>video</a></code></li>
9911 <li><code><a href=#the-wbr-element>wbr</a></code></li>
9912 <li><a href=#text-content title="text content">Text</a></li>
9914 <a href=#phrasing-content>phrasing content</a> should have either at least one
9915 descendant <a href=#text-node>text node</a> that is not <a href=#inter-element-whitespace>inter-element
9917 <a href=#embedded-content>embedded content</a>. For the purposes of this requirement,
9918 nodes that are descendants of <code><a href=#the-del-element>del</a></code> elements must not be
9919 counted as contributing to the ancestors of the <code><a href=#the-del-element>del</a></code>
9927 models, means <a href=#text-node title="text node">text nodes</a>. <a href=#text-content title="text content">Text</a> is sometimes used as a content
9928 model on its own, but is also <a href=#phrasing-content>phrasing content</a>, and can
9929 be <a hrefhref=#text-node title="text
9930 node">text nodes</a> are empty or contain just <a href=#space-character title="space
9941 <ul class="brief category-list"><li><code><a href=#audio>audio</a></code></li>
9942 <li><code><a href=#the-canvas-element>canvas</a></code></li>
9943 <li><code><a href=#the-embed-element>embed</a></code></li>
9944 <li><code><a href=#the-iframe-element>iframe</a></code></li>
9945 <li><code><a href=#the-img-element>img</a></code></li>
9946 <li><code><a href=#math>math</a></code></li>
9947 <li><code><a href=#the-object-element>object</a></code></li>
9948 <li><code><a href=#svg>svg</a></code></li>
9949 <li><code><a href=#video>video</a></code></li>
9950 </ul><p>Elements that are from namespaces other than the <a href=#html-namespace-0>HTML
9952 <a href=#embedded-content>embedded content</a> for the purposes of the content models
9965 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A%3Cp%20tabindex%3D1%3Etest%20%3Ca%20href%3D%22%22%3E%20%3Cem%3Etest%3C/em%3E%20%3C/a%3E%0A%3Cscript%3E%0A%20function%20test%20%28e%29%20%7B%20w%28e.type%20+%20%27%20on%20%27%20+%20e.target.tagName%20+%20%27%20through%20%27%20+%20e.currentTarget.tagName%29%3B%20%7D%0A%20document.getElementsByTagName%28%27a%27%29%5B0%5D.addEventListener%28%27click%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27a%27%29%5B0%5D.addEventListener%28%27DOMActivate%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27p%27%29%5B0%5D.addEventListener%28%27click%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27p%27%29%5B0%5D.addEventListener%28%27DOMActivate%27%2C%20test%2C%20false%29%3B%0A%3C/script%3E%0A
9966 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%0A%3Ca%20href%3Dhttp%3A//google.com/%20target%3Da%3EA%3C/a%3E%3Ca%20href%3Dhttp%3A//yahoo.com/%20target%3Db%3EB%3C/a%3E%3Cbr%3E%0A%3Ciframe%20name%3Da%3E%3C/iframe%3E%3Ciframe%20name%3Db%3E%3C/iframe%3E%0A%3Cscript%3E%0A%20var%20a%20%3D%20document.getElementsByTagName%28%27a%27%29%5B0%5D%3B%0A%20var%20b%20%3D%20document.getElementsByTagName%28%27a%27%29%5B1%5D%3B%0A%20a.appendChild%28b%29%3B%0A%3C/script%3E
9975 <ul class="brief category-list"><li><code><a href=#the-a-element>a</a></code></li>
9976 <li><code><a href=#audio>audio</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present)</li>
9977 <li><code><a href=#the-button-element>button</a></code></li>
9979 <li><code><a href=#the-details-element>details</a></code></li>
9980 <li><code><a href=#the-embed-element>embed</a></code></li>
9981 <li><code><a href=#the-iframe-element>iframe</a></code></li>
9982 <li><code><a href=#the-img-element>img</a></code> (if the <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute is present)</li>
9983 <li><code><a href=#the-input-element>input</a></code> (if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is <em>not</em> in the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state)</li>
9984 <li><code><a href=#the-keygen-element>keygen</a></code></li>
9985 <li><code><a href=#the-label-element>label</a></code></li>
9986 <li><code><a href=#menus>menu</a></code> (if the <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#toolbar-state title="toolbar state">toolbar</a> state)</li>
9987 <li><code><a href=#the-object-element>object</a></code> (if the <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute is present)<!-- see also comment in <object> section --></li>
9988 <li><code><a href=#the-select-element>select</a></code></li>
9989 <li><code><a href=#the-textarea-element>textarea</a></code></li>
9990 <li><code><a href=#video>video</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present)</li>
9991 </ul><p>Certain elements in HTML have an <a href=#activation-behavior>activation
9994 and normally culminating in a <code title=event-click><a href=#event-click>click</a></code>
9995 event followed by a <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code> event<span class=impl>, as described below</span>.</p>
10000 that have an <a href=#activation-behavior>activation behavior</a>, for instance using
10002 triggers an element with a defined <a href=#activation-behavior>activation behavior</a>
10004 interaction event must be to <a href=#run-synthetic-click-activation-steps>run synthetic click activation
10008 steps</dfn> on an element, the user agent must <a href=#run-pre-click-activation-steps>run pre-click
10009 activation steps</a> on the element, then <a href=#fire-a-click-event>fire a <code title=event-click>click</code> event</a> at the element. The
10010 default action of this <code title=event-click><a href=#event-click>click</a></code> event
10011 must be to <a href=#run-post-click-activation-steps>run post-click activation steps</a> on the
10012 element. If the event is canceled, the user agent must <a href=#run-canceled-activation-steps>run
10019 <ol><li><p>If <var title="">target</var> has a defined <a href=#activation-behavior>activation
10027 <li><p>Otherwise, there is no <a href=#nearest-activatable-element>nearest activatable
10037 <li><p>If there is an element <var title="">e</var>, <a href=#run-pre-click-activation-steps>run
10042 <p>Dispatch the required <code title=event-click><a href=#event-click>click</a></code>
10046 action of the <code title=event-click><a href=#event-click>click</a></code> event must be
10047 to <a href=#run-post-click-activation-steps>run post-click activation steps</a> on element <var title="">e</var>.</p>
10050 canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
10056 events dispatched by author script. However, the <code title=dom-click><a href=#dom-click>click()</a></code> method can be used to make it
10064 steps</dfn> on an element, the user agent must <a href=#fire-a-simple-event>fire a simple
10065 event</a> named <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code> that is cancelable at
10066 that element. The default action of this event must be to <a href=#run-final-activation-steps>run
10068 canceled, the user agent must <a href=#run-canceled-activation-steps>run canceled activation
10077 for that element. Activation behaviors can refer to the <code title=event-click><a href=#event-click>click</a></code> and <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code> events that were fired
10098 <pre><p>Hello <a href="world.html"><em>wonderful</em> world</a>!</p></pre>
10102 <ul class=domTree><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">Hello </span><li class=t1><code><a href=#the-a-element>a</a></code> <span class=t2 title=""><code class="attribute name">href</code>="<code class="attribute value">world.html</code>"</span><ul><li class=t1><code><a href=#the-em-element>em</a></code><ul><li class=t3><code>#text</code>: <span title="">wonderful</span></ul><li class=t3><code>#text</code>: <span title=""> world</span></ul><li class=t3><code>#text</code>: <span title="">!</span></ul></ul><p>The content model of the <code><a href=#the-a-element>a</a></code> element is
10103 <a href=#transparent>transparent</a>. To see if its contents are conforming,
10106 <ul class=domTree><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">Hello </span><li class=t1><code><a href=#the-em-element>em</a></code><ul><li class=t3><code>#text</code>: <span title="">wonderful</span></ul><li class=t3><code>#text</code>: <span title=""> world</span><li class=t3><code>#text</code>: <span title="">!</span></ul></ul><p>Since that is conforming, the contents of the <code><a href=#the-a-element>a</a></code> are
10113 accepting any <a href=#flow-content>flow content</a>.</p>
10118 <p class=note>The term <a href=#paragraph>paragraph</a> as defined in this
10119 section is distinct from (though related to) the <code><a href=#the-p-element>p</a></code>
10120 element defined later. The <a href=#paragraph>paragraph</a> concept defined
10123 <p>A <dfn id=paragraph>paragraph</dfn> is typically a run of <a href=#phrasing-content>phrasing
10135 <a href=#inter-element-whitespace>inter-element whitespace</a> do not form paragraphs.</p>
10146 <p>Paragraphs in <a href=#flow-content>flow content</a> are defined relative to
10147 what the document looks like without the <code><a href=#the-a-element>a</a></code>,
10148 <code><a href=#the-ins-element>ins</a></code>, <code><a href=#the-del-element>del</a></code>, and <code><a href=#the-map-element>map</a></code> elements
10160 and puts <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements around some
10164 despite the <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements —
10165 the <code><a href=#the-ins-element>ins</a></code> element straddles the heading and the first
10166 paragraph, and the <code><a href=#the-del-element>del</a></code> element straddles the boundary
10181 all <code><a href=#the-a-element>a</a></code>, <code><a href=#the-ins-element>ins</a></code>, <code><a href=#the-del-element>del</a></code>, and
10182 <code><a href=#the-map-element>map</a></code> elements in the document with their contents. Then,
10183 in <var title="">view</var>, for each run of sibling <a href=#phrasing-content>phrasing
10185 element that accepts content other than <a href=#phrasing-content>phrasing
10186 content</a> as well as <a href=#phrasing-content>phrasing content</a>, let <var title="">first</var> be the first node of the run, and let <var title="">last</var> be the last node of the run. For each such run
10187 that consists of at least one node that is neither <a href=#embedded-content>embedded
10188 content</a> nor <a href=#inter-element-whitespace>inter-element whitespace</a>, a
10190 <code><a href=#the-a-element>a</a></code>, <code><a href=#the-ins-element>ins</a></code>, <code><a href=#the-del-element>del</a></code>, and
10191 <code><a href=#the-map-element>map</a></code> elements.)</p>
10195 <code><a href=#the-object-element>object</a></code>, <code><a href=#video>video</a></code>, <code><a href=#audio>audio</a></code>, and
10196 <code><a href=#the-canvas-element>canvas</a></code> elements, and indirectly through elements in
10198 like <code><a href=#svg>svg</a></code> or <code><a href=#math>math</a></code>).</p> <!-- example below
10203 <p>A <a href=#paragraph>paragraph</a> is also formed explicitly by
10204 <code><a href=#the-p-element>p</a></code> elements.</p>
10206 <p class=note>The <code><a href=#the-p-element>p</a></code> element can be used to wrap
10220 <a href="about.html">
10233 <p>Welcome! <a href="about.html">This is home of...</a></p>
10234 <h1><a href="about.html">The Falcons!</a></h1>
10235 <p><a href="about.html">The Lockheed Martin multirole jet
10257 <li><a href="cats.sim">Download simulator file</a>
10258 <li><a href="http://sims.example.com/watch?v=LYds5xY4INU">Use online simulator</a>
10269 <i title="">object</i> is the <code><a href=#the-object-element>object</a></code> element.</li>
10288 <p>To avoid this confusion, explicit <code><a href=#the-p-element>p</a></code> elements can be
10298 and <code title=attr-aria-*>aria-*</code> attributes on <a href=#html-elements>HTML
10304 the actual state of the document. <a href=#refsARIA>[ARIA]</a></p>
10309 <a href=#html-elements>HTML elements</a>, as defined in the ARIA
10311 below must be recognized by implementations. <a href=#refsARIAIMPL>[ARIAIMPL]</a></p>
10317 ARIA semantics</span></span> that apply to <a href=#html-elements>HTML
10329 <tbody><tr><td><code><a href=#the-a-element>a</a></code> element that represents a <a href=#hyperlink>hyperlink</a>
10332 <tr><td><code><a href=#the-area-element>area</a></code> element that represents a <a href=#hyperlink>hyperlink</a>
10335 <tr><td><code><a href=#the-button-element>button</a></code> element
10338 <tr><td><code><a href=#the-datalist-element>datalist</a></code> element
10341 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10342 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10344 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10345 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10347 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10348 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10350 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10351 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10353 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10354 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10356 <tr><td><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element that does not have an <code><a href=#the-hgroup-element>hgroup</a></code> ancestor
10357 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10359 <tr><td><code><a href=#the-hgroup-element>hgroup</a></code> element
10360 <td><code title=attr-aria-role-heading>heading</code> role, with the <code title=attr-aria-level>aria-level</code> property set to the element's <a href=#outline-depth>outline depth</a>
10362 <tr><td><code><a href=#the-hr-element>hr</a></code> element
10365 <tr><td><code><a href=#the-img-element>img</a></code> element whose <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute's value is empty
10368 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#button-state title=attr-input-type-button>Button</a> state
10371 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state
10372 <td><code title=attr-aria-role-checkbox>checkbox</code> role, with the <code title=attr-aria-checked>aria-checked</code> state set to "mixed" if the element's <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute is true, or "true" if the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> is true, or "false" otherwise
10374 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#color-state title=attr-input-type-color>Color</a> state
10377 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#date-state title=attr-input-type-date>Date</a> state
10378 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10380 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#date-and-time-state title=attr-input-type-datetime>Date and Time</a> state
10381 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10383 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#local-date-and-time-state title=attr-input-type-datetime-local>Local Date and Time</a> state
10384 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10386 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#e-mail-state title=attr-input-type-email>E-mail</a> state with no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10387 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10389 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#file-upload-state title=attr-input-type-file>File Upload</a> state
10392 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state
10395 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state
10398 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#month-state title=attr-input-type-month>Month</a> state
10399 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10401 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#number-state title=attr-input-type-number>Number</a> state
10402 <td><code title=attr-aria-role-spinbutton>spinbutton</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute, the <code title=attr-aria-valuemax>aria-valuemax</code> property set to the element's <a href=#concept-input-max title=concept-input-max>maximum</a>, the <code title=attr-aria-valuemin>aria-valuemin</code> property set to the element's <a href=#concept-input-min title=concept-input-min>minimum</a>, and, if the result of applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point number values</a> to the element's <a href
10404 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#password-state title=attr-input-type-password>Password</a> state
10405 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10407 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state
10408 <td><code title=attr-aria-role-radio>radio</code> role, with the <code title=attr-aria-checked>aria-checked</code> state set to "true" if the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> is true, or "false" otherwise
10410 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#range-state title=attr-input-type-range>Range</a> state
10411 <td><code title=attr-aria-role-slider>slider</code> role, with the <code title=attr-aria-valuemax>aria-valuemax</code> property set to the element's <a href=#concept-input-max title=concept-input-max>maximum</a>, the <code title=attr-aria-valuemin>aria-valuemin</code> property set to the element's <a href=#concept-input-min title=concept-input-min>minimum</a>, and the <code title=attr-aria-valuenow>aria-valuenow</code> property set to the result of applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point number values</a> to the element's <a href=#concept-fe-value title=concept-fe-value>value</a>, if that that results in a number, or the <a href=#concept-input-value-default-range title=concept-input-value-default-range>default value</a> otherwise
10413 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a> state
10416 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#text-state-and-search-state title=attr-input-type-search>Search</a> state with no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10417 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10419 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a> state
10422 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#telephone-state title=attr-input-type-tel>Telephone</a> state with no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10423 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10425 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state with no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10426 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10428 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a>, <a href=#text-state-and-search-state title=attr-input-type-search>Search</a>, <a href=#telephone-state title=attr-input-type-tel>Telephone</a>, <a href=#url-state title=attr-input-type-url>URL</a>, or <a href=#e-mail-state title=attr-input-type-email>E-mail</a> states with a <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10429 <td><code title=attr-aria-role-combobox>combobox</code> role, with the <code title=attr-aria-owns>aria-owns</code> property set to the same value as the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute, and the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10431 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#time-state title=attr-input-type-time>Time</a> state
10432 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10434 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#url-state title=attr-input-type-url>URL</a> state with no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>
10435 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10437 <tr><td><code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#week-state title=attr-input-type-week>Week</a> state
10438 <td>No role, with the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute
10440 <tr><td><code><a href=#the-link-element>link</a></code> element that represents a <a href=#hyperlink>hyperlink</a>
10443 <tr><td><code><a href=#menus>menu</a></code> element with a <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#context-menu-state title="context menu state">context menu</a> state
10446 <tr><td><code><a href=#menus>menu</a></code> element with a <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#list-state title="list state">list</a> state
10449 <tr><td><code><a href=#menus>menu</a></code> element with a <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#toolbar-state title="toolbar state">toolbar</a> state
10452 <tr><td><code><a href=#the-nav-element>nav</a></code> element
10455 <tr><td><code><a href=#the-option-element>option</a></code> element that is in a <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> or that represents a suggestion in a <code><a href=#the-datalist-element>datalist</a></code> element
10456 <td><code title=attr-aria-role-option>option</code> role, with the <code title=attr-aria-selected>aria-selected</code> state set to "true" if the element's <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is true, or "false" otherwise.
10458 <tr><td><code><a href=#the-progress-element>progress</a></code> element
10461 <tr><td><code><a href=#the-select-element>select</a></code> element with a <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute
10464 <tr><td><code><a href=#the-select-element>select</a></code> element with no <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute
10467 <tr><td><code><a href=#the-td-element>td</a></code> element
10468 <td><code title=attr-aria-role-gridcell>gridcell</code> role, with the <code title=attr-aria-labelledby>aria-labelledby</code> property set to the value of the <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute, if any
10470 <tr><td><code><a href=#the-textarea-element>textarea</a></code> element
10471 <td><code title=attr-aria-role-textbox>textbox</code> role, with the <code title=attr-aria-multiline>aria-multiline</code> property set to "true", and the <code title=title-aria-readonly>aria-readonly</code> state set to "true" if the element has a <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> attribute
10473 <tr><td><code><a href=#the-th-element>th</a></code> element that is neither a <a href=#column-header>column header</a> nor a <a href=#row-header>row header</a>
10474 <td><code title=attr-aria-role-gridcell>gridcell</code> role, with the <code title=attr-aria-labelledby>aria-labelledby</code> property set to the value of the <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute, if any
10476 <tr><td><code><a href=#the-th-element>th</a></code> element that is a <a href=#column-header>column header</a>
10477 <td><code title=attr-aria-role-columnheader>columnheader</code> role, with the <code title=attr-aria-labelledby>aria-labelledby</code> property set to the value of the <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute, if any
10479 <tr><td><code><a href=#the-th-element>th</a></code> element that is a <a href=#row-header>row header</a>
10480 <td><code title=attr-aria-role-rowheader>rowheader</code> role, with the <code title=attr-aria-labelledby>aria-labelledby</code> property set to the value of the <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute, if any
10482 <tr><td><code><a href=#the-tr-element>tr</a></code> element
10485 <tr><td>An element that <a href=#concept-command title=concept-command>defines a command</a>, whose <a href=#command-facet-type title=command-facet-type>Type</a> facet is "checkbox", and that is a descendant of a <code><a href=#menus>menu</a></code> element whose <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#list-state title="list state">list</a> state
10486 <td><code title=attr-aria-role-menuitemcheckbox>menuitemcheckbox</code> role, with the <code title=attr-aria-checked>aria-checked</code> state set to "true" if the command's <a href=#command-facet-checkedstate title=command-facet-checkedstate>Checked State</a> facet is true, and "false" otherwise
10488 <tr><td>An element that <a href=#concept-command title=concept-command>defines a command</a>, whose <a href=#command-facet-type title=command-facet-type>Type</a> facet is "command", and that is a descendant of a <code><a href=#menus>menu</a></code> element whose <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#list-state title="list state">list</a> state
10491 <tr><td>An element that <a href=#concept-command title=concept-command>defines a command</a>, whose <a href=#command-facet-type title=command-facet-type>Type</a> facet is "radio", and that is a descendant of a <code><a href=#menus>menu</a></code> element whose <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#list-state title="list state">list</a> state
10492 <td><code title=attr-aria-role-menuitemradio>menuitemradio</code> role, with the <code title=attr-aria-checked>aria-checked</code> state set to "true" if the command's <a href=#command-facet-checkedstate title=command-facet-checkedstate>Checked State</a> facet is true, and "false" otherwise
10494 <tr><td>Elements that are <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>
10497 <tr><td>Elements that are <a href=#concept-input-required title=concept-input-required>required</a>
10500 </table><p>Some <a href=#html-elements>HTML elements</a> have native semantics that can be
10513 <tbody><tr><td><code><a href=#the-address-element>address</a></code> element
10517 <tr><td><code><a href=#the-article-element>article</a></code> element
10521 <tr><td><code><a href=#the-aside-element>aside</a></code> element
10525 <tr><td><code><a href=#the-footer-element>footer</a></code> element
10529 <tr><td><code><a href=#the-header-element>header</a></code> element
10533 <tr><td><code><a hrefhref=#the-ol-element>ol</a></code> or <code><a href=#the-ul-element>ul</a></code> element
10537 <tr><td><code><a href=#the-ol-element>ol</a></code> element
10541 <tr><td><code><a href=#the-output-element>output</a></code> element
10545 <tr><td><code><a href=#the-section-element>section</a></code> element
10549 <tr><td><code><a href=#the-table-element>table</a></code> element
10553 <tr><td><code><a href=#the-ul-element>ul</a></code> element
10557 <tr><td><a href=#the-body-element>The body element</a>
10564 this section in order to expose the semantics of <a href=#html-elements>HTML
10570 remove accessibility annotations. For example, if an <code><a href=#the-a-element>a</a></code>
10572 checker could say "Either a <code><a href=#the-button-element>button</a></code> element or an
10573 <code><a href=#the-input-element>input</a></code> element is required when using the <code title=attr-aria-role-button>button</code> role" rather than "The
10575 used with <code><a href=#the-a-element>a</a></code> elements".</p>
10582 <p>For <a href=#html-documents>HTML documents</a>, and for <a href=#html-elements>HTML
10583 elements</a> in <a href=#html-documents>HTML documents</a>, certain APIs defined
10586 required</span> below. <a href=#refsDOMCORE>[DOMCORE]</a></p>
10588 <p>This does not apply to <a href=#xml-documents>XML documents</a> or to elements
10589 that are not in the <a href=#html-namespace-0>HTML namespace</a> despite being in
10590 <a href=#html-documents>HTML documents</a>.</p>
10592 <dl><dt><code title=dom-Element-tagName><a href=#dom-element-tagname>Element.tagName</a></code> and <code title=dom-Node-nodeName>Node.nodeName</code></dt>
10597 names <a href=#converted-to-ascii-uppercase>converted to ASCII uppercase</a>, regardless of the case
10608 method will <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">lowercase</a>
10609 the argument before creating the requisite element. <span class=impl>Also, the element created must be in the <a href=#html-namespace-0>HTML
10615 of an element defined in this specification when its <code title=dom-Element-tagName><a href=#dom-element-tagname>tagName</a></code> attribute is examined, but that
10618 <code title=dom-Node-localName><a href=#dom-node-localname>localName</a></code> attribute.</p>
10628 <p>Attribute names are <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</p>
10632 <p>Specifically: when an attribute is set on an <a href=#html-elements title="HTML
10634 <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a> before the element is
10635 affected; and when an <code><a href=#attr>Attr</a></code> node is set on an <a href=#html-elements title="HTML elements">HTML element</a> using <code title="">Element.setAttributeNode()</code>, it must have its name
10636 <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a> before the element is
10651 <p>Attribute names are <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</p>
10656 an <a href=#html-elements title="HTML elements">HTML element</a>, the name
10657 argument must be <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a> before the
10680 <a href=#case-sensitive>case-sensitive</a> manner, but when looking at <a href=#html-elements title="HTML elements">HTML elements</a>, the argument must
10681 first be <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</p>
10685 <p class=note>Thus, in an <a href=#html-documents title="HTML documents">HTML
10706 <p>A <a href=http://www.w3.org/TR/REC-xml-names#NT-QName>QName</a> in the
10707 node test is expanded into an <a href=http://www.w3.org/TR/1999/REC-xpath-19991116#dt-expanded-name>expanded-name</a>
10710 and end-tags except that the default namespace declared with <code title="">xmlns</code> is not used: if the <a href=http://www.w3.org/TR/REC-xml-names#NT-QName>QName</a> does
10712 way attribute names are expanded). It is an error if the <a href=http://www.w3.org/TR/REC-xml-names#NT-QName>QName</a> has a
10757 <p class=note>This change is a <a href=#willful-violation>willful violation</a> of
10761 regarding which namespace is used for HTML elements. <a href=#refsXPATH10>[XPATH10]</a></p> <!-- note: version matters for
10770 element node, change the namespace of the element to the <a href=#html-namespace-0>HTML
10771 namespace</a>, <a href=#converted-to-ascii-lowercase title="converted to ASCII
10773 <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">ASCII-lowercase</a>
10776 <p class=note>This requirement is a <a href=#willful-violation>willful violation</a>
10781 unaffected.) <a href=#refsXSLT10>[XSLT10]</a></p> <!-- note:
10792 depending on whether they are used with <a href=#html-documents>HTML documents</a>
10793 (and the <a href=#html-parser>HTML parser</a>) or XHTML in <a href=#xml-documents>XML
10794 documents</a> (and the <a href=#xml-parser>XML parser</a>).</p>
10804 <dl class=domintro><dt><var title="">document</var> = <var title="">document</var> . <code title=dom-document-open><a href=#dom-document-open>open</a></code>( [ <var title="">type</var> [, <var title="">replace</var> ] ] )</dt>
10808 <p>Causes the <code><a href=#document>Document</a></code> to be replaced in-place, as if
10809 it was a new <code><a href=#document>Document</a></code> object, but reusing the
10813 value "<code><a href=#text/html>text/html</a></code>", then the resulting
10814 <code><a href=#document>Document</a></code> has an HTML parser associated with it, which
10815 can be given data to parse using <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code>. Otherwise, all
10816 content passed to <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> will be parsed
10821 the session history for the <code><a href=#document>Document</a></code> object are
10824 <p>The method has no effect if the <code><a href=#document>Document</a></code> is still
10827 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the
10828 <code><a href=#document>Document</a></code> is an <a href=#xml-documents title="XML documents">XML
10833 <dt><var title="">window</var> = <var title="">document</var> . <code title=dom-document-open><a href=#dom-document-open>open</a></code>( <var title="">url</var>, <var title="">name</var>, <var title="">features</var> [, <var title="">replace</var> ] )</dt>
10837 <p>Works like the <code title=dom-open><a href=#dom-open>window.open()</a></code>
10847 href=#document>Document</a></code> object is not flagged as an <a href=#html-documents title="HTML documents">HTML document</a>, throw an
10848 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception and abort these
10852 argument, if there is one, or "<code><a href=#text/html>text/html</a></code>"
10856 argument and it is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
10861 <p>If the document has an <a href=#active-parser>active parser</a> that isn't a
10862 <a href=#script-created-parser>script-created parser</a>, and the <a href=#insertion-point>insertion
10863 point</a> associated with that parser's <a href=#the-input-stream>input
10866 nothing. Abort these steps and return the <code><a href=#document>Document</a></code>
10869 <p class=note>This basically causes <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> to be ignored
10877 <li><p>Release the <a href=#storage-mutex>storage mutex</a>.</li>
10879 <li><p><a href=#prompt-to-unload-a-document title="prompt to unload a document">Prompt to
10880 unload</a> the <code><a href=#document>Document</a></code> object. If the user
10881 <a href=#refused-to-allow-the-document-to-be-unloaded>refused to allow the document to be unloaded</a>, then
10884 <li><p><a href=#unload-a-document title="unload a document">Unload</a> the
10885 <code><a href=#document>Document</a></code> object, with the <var title="">recycle</var>
10888 <li><p>If the document has an <a href=#active-parser>active parser</a>, then
10889 <a href=#abort-an-html-parser title="abort an HTML parser">abort that
10893 <code><a href=#document>Document</a></code> node and its descendants.</p>
10895 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a>
10896 associated with the <code><a href=#document>Document</a></code> in any <a href=#task-source>task
10905 <li><p>Replace the <code><a href=#document>Document</a></code>'s singleton objects with
10907 <code><a href=#window>Window</a></code>, <code><a href=#location>Location</a></code>, <code><a href=#history-0>History</a></code>,
10908 <code><a href=#applicationcache>ApplicationCache</a></code>, <code><a href=#undomanager>UndoManager</a></code>,
10909 <code><a href=#navigator>Navigator</a></code>, and <code><a href=#selection-0>Selection</a></code> objects, the
10910 various <code><a href=#barprop>BarProp</a></code> objects, the two <code>Storage</code>
10911 objects, and the various <code><a href=#htmlcollection>HTMLCollection</a></code> objects. It
10913 including the <code><a href=#document>Document</a></code> object's prototype.)</li>
10918 <li><p>Change the <a href="#document's-character-encoding">document's character encoding</a> to
10921 <li><p>Change <a href="#the-document's-address">the document's address</a> to the
10922 <a href=#entry-script>entry script</a>'s <a href="#script's-document" title="script's
10923 document">document</a>'s <a href="#the-document's-address" title="the document's
10926 <li><p>Create a new <a href=#html-parser>HTML parser</a> and associate it with
10928 that it can be closed by the <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> and <code title=dom-document-close><a href=#dom-document-close>document.close()</a></code> methods, and
10929 that the tokenizer will wait for an explicit call to <code title=dom-document-close><a href=#dom-document-close>document.close()</a></code> before emitting
10930 an end-of-file token). The encoding <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> is
10941 <p>Strip all leading and trailing <a href=#space-character title="space
10944 <p>If <var title="">type</var> is <em>not</em> now an <a href=#ascii-case-insensitive>ASCII
10946 "<code><a href=#text/html>text/html</a></code>", then act as if the tokenizer had emitted
10948 <a href=#html-parser>HTML parser</a>'s tokenizer to the <a href=#plaintext-state>PLAINTEXT
10963 <p>Remove all the entries in the <a href=#browsing-context>browsing context</a>'s
10964 <a href=#session-history>session history</a> after the <a href=#current-entry>current
10965 entry</a>. If the <a href=#current-entry>current entry</a> is the last entry
10968 <p class=note>This <a href=#history-notes>doesn't necessarily
10973 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a> queued by
10974 the <a href=#history-traversal-task-source>history traversal task source</a>.</li>
10977 <code><a href=#document>Document</a></code>.</li>
10982 <code><a href=#document>Document</a></code> object, as well as the state of the document
10985 blown away by the <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> call.)</li>
10987 <li><p>Finally, set the <a href=#insertion-point>insertion point</a> to point at
10988 just before the end of the <a href=#the-input-stream>input stream</a> (which at this
10991 <li><p>Return the <code><a href=#document>Document</a></code> on which the method was
10994 </ol><p>When called with three or more arguments, the <code title=dom-document-open><a href=#dom-document-open>open()</a></code> method on the
10995 <code><a href=#htmldocument>HTMLDocument</a></code> object must call the <code title=dom-open><a href=#dom-open>open()</a></code> method on the <code><a href=#window>Window</a></code>
10996 object of the <code><a href=#htmldocument>HTMLDocument</a></code> object, with the same
10997 arguments as the original call to the <code title=dom-document-open><a href=#dom-document-open>open()</a></code> method, and return whatever
10998 that method returned. If the <code><a href=#htmldocument>HTMLDocument</a></code> object has no
10999 <code><a href=#window>Window</a></code> object, then the method must raise an
11000 <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception.</p>
11008 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-close><a href=#dom-document-close>close</a></code>()</dt>
11012 <p>Closes the input stream that was opened by the <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> method.</p>
11014 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the
11015 <code><a href=#document>Document</a></code> is an <a href=#xml-documents title="XML documents">XML
11025 <ol><li><p>If the <code><a href=#document>Document</a></code> object is not flagged as an
11026 <a href=#html-documents title="HTML documents">HTML document</a>, throw an
11027 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception and abort these
11030 <li><p>If there is no <a href=#script-created-parser>script-created parser</a> associated
11033 <li><p>Insert an <a href=#explicit-eof-character>explicit "EOF" character</a> at the end
11034 of the parser's <a href=#the-input-stream>input stream</a>.</li>
11036 <li><p>If there is a <a href=#pending-parsing-blocking-script>pending parsing-blocking script</a>,
11040 emitted, and stopping when the tokenizer reaches the <a href=#explicit-eof-character>explicit
11041 "EOF" character</a> or <a href=#spin-the-event-loop title="spin the event loop">spins
11048 <h4 id=document.write()><span class=secno>3.5.3 </span><code title=dom-document-write><a href=#dom-document-write>document.write()</a></code></h4>
11050 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-write><a href=#dom-document-write>write</a></code>(<var title="">text</var>...)</dt>
11054 <p>Adds the given string(s) to the <code><a href=#document>Document</a></code>'s input
11055 stream. If necessary, calls the <code title=dom-document-open><a href=#dom-document-open>open()</a></code> method implicitly
11058 <p>This method throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception
11059 when invoked on <a href=#xml-documents>XML documents</a>.</p>
11061 <p>Unless called from the body of a <code><a href=#script>script</a></code> element
11064 as if <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> had
11076 <p>If the method was invoked on an <a href=#xml-documents title="XML documents">XML
11077 document</a>, throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code>
11089 <p>If the <a href=#insertion-point>insertion point</a> is undefined, the <code title=dom-document-open><a href=#dom-document-open>open()</a></code> method must be called
11090 (with no arguments) on the <code title=Document><a href=#document>document</a></code>
11091 object. If the user <a href=#refused-to-allow-the-document-to-be-unloaded>refused to allow the document to be
11093 <a href=#insertion-point>insertion point</a> will point at just before the end of
11094 the (empty) <a href=#the-input-stream>input stream</a>.</p>
11101 to the method must be inserted into the <a href=#the-input-stream>input stream</a>
11102 just before the <a href=#insertion-point>insertion point</a>.</p>
11108 <p>If there is a <a href=#pending-parsing-blocking-script>pending parsing-blocking script</a>, then the
11110 <a href=#the-input-stream>input stream</a>.</p>
11120 tree construction stage (this can happen if a <code><a href=#script>script</a></code>
11123 <p class=note>If the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> method was
11125 parser parsed a set of <code><a href=#script>script</a></code> tags), then this is a
11126 <a href=#nestedParsing>reentrant invocation of the
11140 <h4 id=document.writeln()><span class=secno>3.5.4 </span><code title=dom-document-writeln><a href=#dom-document-writeln>document.writeln()</a></code></h4>
11142 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-writeln><a href=#dom-document-writeln>writeln</a></code>(<var title="">text</var>...)</dt>
11146 <p>Adds the given string(s) to the <code><a href=#document>Document</a></code>'s input
11148 <code title=dom-document-open><a href=#dom-document-open>open()</a></code> method implicitly
11151 <p>This method throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception
11152 when invoked on <a href=#xml-documents>XML documents</a>.</p>
11159 method, when invoked, must act as if the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> method had been
11167 <h4 id=innerhtml><span class=secno>3.5.5 </span><code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code></h4>
11172 <dl class=domintro><dt><var title="">document</var> . <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> [ = <var title="">value</var> ]</dt>
11177 <code><a href=#document>Document</a></code>.</p>
11179 <p>Can be set, to replace the <code><a href=#document>Document</a></code>'s contents
11182 <p>In the case of <a href=#xml-documents>XML documents</a>, will throw an
11183 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> if the <code><a href=#document>Document</a></code> cannot
11184 be serialized to XML, and a <code><a href=#syntax_err>SYNTAX_ERR</a></code> if the given
11189 <dt><var title="">element</var> . <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> [ = <var title="">value</var> ]</dt>
11199 <p>In the case of <a href=#xml-documents>XML documents</a>, will throw an
11200 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> if the element cannot be serialized
11201 to XML, and a <code><a href=#syntax_err>SYNTAX_ERR</a></code> if the given string is not
11208 <p>On getting, if the node's document is an <a href=#html-documents title="HTML
11210 result of running the <a href=#html-fragment-serialization-algorithm>HTML fragment serialization
11212 <a href=#xml-documents title="XML documents">XML document</a>, and the attribute
11213 must return the result of running the <a href=#xml-fragment-serialization-algorithm>XML fragment
11221 <p>If the node's document is an <a href=#html-documents title="HTML documents">HTML
11222 document</a>: Invoke the <a href=#html-fragment-parsing-algorithm>HTML fragment parsing
11225 <p>If the node's document is an <a href=#xml-documents title="XML documents">XML
11226 document</a>: Invoke the <a href=#xml-fragment-parsing-algorithm>XML fragment parsing
11230 being assigned into the <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> attribute as the <var title="">input</var>. If the node is an <code><a href=#element>Element</a></code>
11242 <p>If the attribute is being set on a <code><a href=#document>Document</a></code> node,
11243 and that document has an <a href=#active-parser>active parser</a>, then abort
11250 <p>Remove the child nodes of the node whose <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> attribute is being set,
11257 <p>If the attribute is being set on a <code><a href=#document>Document</a></code>
11259 <code><a href=#document>Document</a></code> node. Otherwise, the attribute is being
11260 set on an <code><a href=#element>Element</a></code> node; let <var title="">target
11262 that <code><a href=#element>Element</a></code>.</p>
11277 node whose <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> attribute
11279 as if a <code><a href=#documentfragment>DocumentFragment</a></code> containing the <var title="">new children</var> had been inserted.</p>
11287 <h4 id=outerhtml><span class=secno>3.5.6 </span><code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code></h4>
11292 <dl class=domintro><dt><var title="">element</var> . <code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code> [ = <var title="">value</var> ]</dt>
11302 <p>In the case of <a href=#xml-documents>XML documents</a>, will throw an
11303 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> if the element cannot be serialized
11304 to XML, and a <code><a href=#syntax_err>SYNTAX_ERR</a></code> if the given string is not
11307 <p>Throws a <code><a href=#no_modification_allowed_err>NO_MODIFICATION_ALLOWED_ERR</a></code> exception if
11308 the parent of the element is the <code><a href=#document>Document</a></code>
11315 <p>On getting, if the node's document is an <a href=#html-documents title="HTML
11317 result of running the <a href=#html-fragment-serialization-algorithm>HTML fragment serialization
11320 an <a href=#xml-documents title="XML documents">XML document</a>, and the
11321 attribute must return the result of running the <a href=#xml-fragment-serialization-algorithm>XML fragment
11329 <p>Let <var title="">target</var> be the element whose <code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code> attribute is being
11345 <code><a href=#document>Document</a></code> object, throw a
11346 <code><a href=#no_modification_allowed_err>NO_MODIFICATION_ALLOWED_ERR</a></code> exception and abort these
11354 parent node, unless that is a <code><a href=#documentfragment>DocumentFragment</a></code> node,
11356 <code><a href=#the-body-element-0>body</a></code> element.</p>
11362 <p>If <var title="">target</var>'s document is an <a href=#html-documents title="HTML documents">HTML document</a>: Invoke the <a href=#html-fragment-parsing-algorithm>HTML
11365 <p>If <var title="">target</var>'s document is an <a href=#xml-documents title="XML
11366 documents">XML document</a>: Invoke the <a href=#xml-fragment-parsing-algorithm>XML fragment
11370 being assigned into the <code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code> attribute as the <var title="">input</var>, and <var title="">parent</var> as the <var title="">context</var> element.</p>
11393 <code><a href=#documentfragment>DocumentFragment</a></code> containing the <var title="">new
11402 <h4 id=insertadjacenthtml()><span class=secno>3.5.7 </span><code title=dom-insertAdjacentHTML><a href=#dom-insertadjacenthtml>insertAdjacentHTML()</a></code></h4>
11404 <dl class=domintro><dt><var title="">element</var> . <code title=dom-insertAdjacentHTML><a href=#dom-insertadjacenthtml>insertAdjacentHTML</a></code>(<var title="">position</var>, <var title="">text</var>)</dt>
11421 </dl><p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if the arguments
11422 have invalid values (e.g., in the case of <a href=#xml-documents>XML
11425 <p>Throws a <code><a href=#no_modification_allowed_err>NO_MODIFICATION_ALLOWED_ERR</a></code> exception if
11427 the root element of a <code><a href=#document>Document</a></code>).</p>
11454 <dl><dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11456 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11465 <code><a href=#document>Document</a></code> object, then throw a
11466 <code><a href=#no_modification_allowed_err>NO_MODIFICATION_ALLOWED_ERR</a></code> exception and abort
11474 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11476 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11489 <p>Throw a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception.</p>
11497 <p>If <var title="">target</var>'s document is an <a href=#html-documents title="HTML documents">HTML document</a>: Invoke the <a href=#html-fragment-parsing-algorithm>HTML
11500 <p>If <var title="">target</var>'s document is an <a href=#xml-documents title="XML
11501 documents">XML document</a>: Invoke the <a href=#xml-fragment-parsing-algorithm>XML fragment
11526 <dl><dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11536 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11547 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11556 <dt>If <var title="">position</var> is an <a href=#ascii-case-insensitive>ASCII
11568 if a <code><a href=#documentfragment>DocumentFragment</a></code> containing the <var title="">new children</var> had been inserted.</p>
11588 <dd>A <code><a href=#the-head-element-0>head</a></code> element followed by a <code><a href=#the-body-element-0>body</a></code> element.</dd>
11590 <dd><a href=#global-attributes>Global attributes</a></dd>
11591 <dd><code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code></dd>
11594 <pre class=idl>interface <dfn id=htmlhtmlelement>HTMLHtmlElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
11596 </dl><p>The <code><a href=#the-html-element-0>html</a></code> element <a href=#represents>represents</a> the root of
11600 attribute gives the address of the document's <a href=#application-cache>application
11601 cache</a> <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a>, if there is
11603 <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
11606 <p>The <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute
11607 only <a href=#concept-appcache-init title=concept-appcache-init>has an effect</a> during
11612 <p class=note>For the purposes of <a href=#concept-appcache-init title=concept-appcache-init>application cache selection</a>,
11613 later <code><a href=#the-base-element>base</a></code> elements cannot affect the <a href=#resolve-a-url title="resolve a url">resolving of relative URLs</a> in <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attributes, as the
11616 <p class=note>The <code title=dom-applicationCache><a href=#dom-applicationcache>window.applicationCache</a></code> IDL
11617 attribute provides scripted access to the offline <a href=#application-cache>application
11622 <p>The <code><a href=#the-html-element-0>html</a></code> element in the following example declares
11649 <dd>As the first element in an <code><a href=#the-html-element-0>html</a></code> element.</dd>
11651 <dd>If the document is <a href=#an-iframe-srcdoc-document>an <code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> document</a> or if title information is available from a higher-level protocol: Zero or more elements of <a href=#metadata-content>metadata content</a>.</dd>
11652 <dd>Otherwise: One or more elements of <a href=#metadata-content>metadata content</a>, of which exactly one is a <code><a href=#the-title-element-0>title</a></code> element.</dd>
11654 <dd><a href=#global-attributes>Global attributes</a></dd>
11657 <pre class=idl>interface <dfn id=htmlheadelement>HTMLHeadElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
11659 </dl><p>The <code><a href=#the-head-element-0>head</a></code> element <a href=#represents>represents</a> a
11660 collection of metadata for the <code><a href=#document>Document</a></code>.</p>
11664 <p>The collection of metadata in a <code><a href=#the-head-element-0>head</a></code> element can be
11681 <BASE HREF="http://www.example.com/">
11683 <LINK REL="STYLESHEET" HREF="default.css">
11684 <LINK REL="STYLESHEET ALTERNATE" HREF="big.css" TITLE="Big Text">
11693 <p class=note>The <code><a href=#the-title-element-0>title</a></code> element is a required child
11696 as an e-mail authoring format, the <code><a href=#the-title-element-0>title</a></code> element can be
11704 <dd><a href=#metadata-content>Metadata content</a>.</dd>
11706 <dd>In a <code><a href=#the-head-element-0>head</a></code> element containing no other <code><a href=#the-title-element-0>title</a></code> elements.</dd>
11708 <dd><a href=#text-content title="text content">Text</a>.</dd>
11710 <dd><a href=#global-attributes>Global attributes</a></dd>
11713 <pre class=idl>interface <dfn id=htmltitleelement>HTMLTitleElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
11714 attribute DOMString <a href=#dom-title-text title=dom-title-text>text</a>;
11717 </dl><p>The <code><a href=#the-title-element-0>title</a></code> element <a href=#represents>represents</a> the
11725 <p>There must be no more than one <code><a href=#the-title-element-0>title</a></code> element per
11728 <dl class=domintro><dt><var title="">title</var> . <code title=dom-title-text><a href=#dom-title-text>text</a></code> [ = <var title="">value</var> ]</dt>
11733 aren't <a href=#text-node title="text node">text nodes</a>.</p>
11743 concatenation of the contents of all the <a href=#text-node title="text
11745 <code><a href=#the-title-element-0>title</a></code> element (ignoring any other nodes such as
11747 same way as the <code><a href=#textcontent>textContent</a></code> IDL attribute.</p>
11773 <p>The string to use as the document's title is given by the <code title=dom-document-title><a href=#document.title>document.title</a></code> IDL
11782 <dd><a href=#metadata-content>Metadata content</a>.</dd>
11784 <dd>In a <code><a href=#the-head-element-0>head</a></code> element containing no other <code><a href=#the-base-element>base</a></code> elements.</dd>
11788 <dd><a href=#global-attributes>Global attributes</a></dd>
11789 <dd><code title=attr-base-href><a href=#attr-base-href>href</a></code></dd>
11790 <dd><code title=attr-base-target><a href=#attr-base-target>target</a></code></dd>
11793 <pre class=idl>interface <dfn id=htmlbaseelement>HTMLBaseElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
11794 attribute DOMString <a href=#dom-base-href title=dom-base-href>href</a>;
11795 attribute DOMString <a href=#dom-base-target title=dom-base-target>target</a>;
11798 </dl><p>The <code><a href=#the-base-element>base</a></code> element allows authors to specify the
11799 <a href=#document-base-url>document base URL</a> for the purposes of <a href=#resolve-a-url title="resolve a url">resolving relative URLs</a>, and the name
11800 of the default <a href=#browsing-context>browsing context</a> for the purposes of
11801 <a href=#following-hyperlinks>following hyperlinks</a>. The element does not <a href=#represents title=represents>represent</a> any content beyond this
11804 <p>There must be no more than one <code><a href=#the-base-element>base</a></code> element per
11807 <p>A <code><a href=#the-base-element>base</a></code> element must have either an <code title=attr-base-href><a href=#attr-base-href>href</a></code> attribute, a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, or both.</p>
11809 <p>The <dfn id=attr-base-href title=attr-base-href><code>href</code></dfn> content
11810 attribute, if specified, must contain a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially
11813 <p>A <code><a href=#the-base-element>base</a></code> element, if it has an <code title=attr-base-href><a href=#attr-base-href>href</a></code> attribute, must come before any
11815 <a href=#url title=URL>URLs</a>, except the <code><a href=#the-html-element-0>html</a></code> element
11816 (its <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute
11817 isn't affected by <code><a href=#the-base-element>base</a></code> elements).</p>
11821 <p class=note>If there are multiple <code><a href=#the-base-element>base</a></code> elements
11822 with <code title=attr-base-href><a href=#attr-base-href>href</a></code> attributes, all but the
11828 attribute, if specified, must contain a <a href=#valid-browsing-context-name-or-keyword>valid browsing context
11829 name or keyword</a>, which specifies which <a href=#browsing-context>browsing
11830 context</a> is to be used as the default when <a href=#hyperlink title=hyperlink>hyperlinks</a> and <a href=#the-form-element title=form>forms</a> in the <code><a href=#document>Document</a></code> cause <a href=#navigate title=navigate>navigation</a>.</p>
11832 <p>A <code><a href=#the-base-element>base</a></code> element, if it has a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, must come before
11833 any elements in the tree that represent <a href=#hyperlink title=hyperlink>hyperlinks</a>.</p>
11837 <p class=note>If there are multiple <code><a href=#the-base-element>base</a></code> elements
11838 with <code title=attr-base-target><a href=#attr-base-target>target</a></code> attributes, all but
11841 <p>The <dfn id=dom-base-href title=dom-base-href><code>href</code></dfn> and <dfn id=dom-base-target title=dom-base-target><code>target</code></dfn> IDL attributes
11842 must <a href=#reflect>reflect</a> the respective content attributes of the
11849 <p>In this example, a <code><a href=#the-base-element>base</a></code> element is used to set the
11850 <a href=#document-base-url>document base URL</a>:</p>
11856 <base href="http://www.example.com/news/index.html">
11859 <p>Visit the <a href="archives.html">archives</a>.</p>
11873 <dd><a href=#metadata-content>Metadata content</a>.</dd>
11875 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: <a href=#flow-content>flow content</a>.</dd>
11876 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: <a href=#phrasing-content>phrasing content</a>.</dd>
11879 <dd>Where <a href=#metadata-content>metadata content</a> is expected.</dd>
11880 <dd>In a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element-0>head</a></code> element.</dd>
11882 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
11887 <dd><a href=#global-attributes>Global attributes</a></dd>
11888 <dd><code title=attr-link-href><a href=#attr-link-href>href</a></code></dd>
11889 <dd><code title=attr-link-rel><a href=#attr-link-rel>rel</a></code></dd>
11890 <dd><code title=attr-link-media><a href=#attr-link-media>media</a></code></dd>
11891 <dd><code title=attr-link-hreflang><a href=#attr-link-hreflang>hreflang</a></code></dd>
11892 <dd><code title=attr-link-type><a href=#attr-link-type>type</a></code></dd>
11893 <dd><code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code></dd>
11894 <dd>Also, the <code title=attr-link-title><a href=#attr-link-title>title</a></code> attribute has special semantics on this element.</dd>
11897 <pre class=idl>interface <dfn id=htmllinkelement>HTMLLinkElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
11898 attribute boolean <a href=#dom-link-disabled title=dom-link-disabled>disabled</a>;
11899 attribute DOMString <a href=#dom-link-href title=dom-link-href>href</a>;
11900 attribute DOMString <a href=#dom-link-rel title=dom-link-rel>rel</a>;
11901 readonly attribute <a href=#domtokenlist>DOMTokenList</a> <a href=#dom-link-rellist title=dom-link-relList>relList</a>;
11902 attribute DOMString <a href=#dom-link-media title=dom-link-media>media</a>;
11903 attribute DOMString <a href=#dom-link-hreflang title=dom-link-hreflang>hreflang</a>;
11904 attribute DOMString <a href=#dom-link-type title=dom-link-type>type</a>;
11905 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <a href=#dom-link-sizes title=dom-link-sizes>sizes</a>;
11907 <a href=#htmllinkelement>HTMLLinkElement</a> implements <span>LinkStyle</span>;</pre>
11909 </dl><p>The <code><a href=#the-link-element>link</a></code> element allows authors to link their
11912 <p>The destination of the link(s) is given by the <dfn id=attr-link-href title=attr-link-href><code>href</code></dfn> attribute, which must
11913 be present and must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially
11914 surrounded by spaces</a>. <span class=impl>If the <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute is absent, then the
11918 <p>A <code><a href=#the-link-element>link</a></code> element must have either a <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute, or an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute, or both.</p>
11922 attribute, which, if present, must have a value that is a <a href=#set-of-space-separated-tokens>set
11923 of space-separated tokens</a>. The <a href=#linkTypes>allowed
11924 values and their meanings</a> are defined in a later section. <span class=impl>If the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute
11930 <code><a href=#the-link-element>link</a></code> element. <dfn id=external-resource-link title="external resource link">Links
11933 link">hyperlink links</dfn> are <a href=#hyperlink title=hyperlink>links to
11934 other documents</a>. The <a href=#linkTypes>link types
11939 the keywords given in the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code>
11944 there are two <code><a href=#the-link-element>link</a></code> elements with <code title="">rel="stylesheet"</code>, they each count as a separate
11960 <ol><li><p>If the <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute's
11963 <li><p><a href=#resolve-a-url title="resolve a url">Resolve</a> the
11964 <a href=#url>URL</a> given by the <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute, relative to the
11969 <li><p><a href=#fetch>Fetch</a> the resulting <a href=#absolute-url>absolute
11973 they are needed, instead of pro-actively <a href=#fetch title=fetch>fetching</a> all the external resources that are
11982 <p>Once the attempts to obtain the resource and its <a href=#critical-subresources>critical
11984 were successful, <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
11986 <code><a href=#the-link-element>link</a></code> element, or, if the resource or one of its
11987 <a href=#critical-subresources>critical subresources</a> failed to completely load for any
11989 prematurely closed, unsupported Content-Type), <a href=#queue-a-task>queue a
11990 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the <code><a href=#the-link-element>link</a></code>
11995 <p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#dom-manipulation-task-source>DOM manipulation task
11998 <p>The element must <a href=#delay-the-load-event>delay the load event</a> of the
12000 its <a href=#critical-subresources>critical subresources</a> are complete. (Resources that
12002 waiting for the resource to be needed, do not <a href=#delay-the-load-event>delay the load
12006 means to <a href=#following-hyperlinks title="following hyperlinks">follow the
12007 hyperlinks</a> created using the <code><a href=#the-link-element>link</a></code> element,
12012 each hyperlink created with each <code><a href=#the-link-element>link</a></code> element in the
12016 by the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute)</li>
12018 <li>The title of the resource (given by the <code title=attr-link-title><a href=#attr-link-title>title</a></code> attribute).</li>
12020 <li>The address of the resource (given by the <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute).</li>
12022 <li>The language of the resource (given by the <code title=attr-link-hreflang><a href=#attr-link-hreflang>hreflang</a></code> attribute).</li>
12024 <li>The optimum media for the resource (given by the <code title=attr-link-media><a href=#attr-link-media>media</a></code> attribute).</li>
12027 type of the resource (as given by the <code title=attr-link-type><a href=#attr-link-type>type</a></code> attribute).</p>
12031 <p class=note>Hyperlinks created with the <code><a href=#the-link-element>link</a></code>
12032 element and its <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute
12033 apply to the whole page. This contrasts with the <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute of <code><a href=#the-a-element>a</a></code>
12034 and <code><a href=#the-area-element>area</a></code> elements, which indicates the type of a link
12040 be a <a href=#valid-media-query>valid media query</a>.</p>
12044 <p>If the link is a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>
12045 then the <code title=attr-link-media><a href=#attr-link-media>media</a></code> attribute is
12049 <p>However, if the link is an <a href=#external-resource-link>external resource link</a>,
12050 then the <code title=attr-link-media><a href=#attr-link-media>media</a></code> attribute is
12052 the <code title=attr-link-media><a href=#attr-link-media>media</a></code> attribute's value
12053 <a href=#matches-the-environment>matches the environment</a> and the other relevant
12065 <p id=default-media>The default, if the <code title=attr-link-media><a href=#attr-link-media>media</a></code> attribute is omitted, is "<code title="">all</code>", meaning that by default links apply to all
12069 attribute on the <code><a href=#the-link-element>link</a></code> element has the same semantics as
12070 the <a href=#attr-hyperlink-hreflang title=attr-hyperlink-hreflang><code>hreflang</code>
12074 gives the <a href=#mime-type>MIME type</a> of the linked resource. It is
12075 purely advisory. The value must be a <a href=#valid-mime-type>valid MIME
12078 <p>For <a href=#external-resource-link title="external resource link">external resource
12079 links</a>, the <code title=attr-link-type><a href=#attr-link-type>type</a></code> attribute
12083 the given type (even if that is not a <a href=#valid-mime-type>valid MIME type</a>,
12087 does not support the given <a href=#mime-type>MIME type</a> for the given link
12088 relationship, then the UA should not <a href=#concept-link-obtain title=concept-link-obtain>obtain</a> the resource; if the UA
12089 does support the given <a href=#mime-type>MIME type</a> for the given link
12090 relationship, then the UA should <a href=#concept-link-obtain title=concept-link-obtain>obtain</a> the resource. If the
12092 have a default type defined, but the user agent would <a href=#concept-link-obtain title=concept-link-obtain>obtain</a> the resource if the type
12093 was known and supported, then the user agent should <a href=#concept-link-obtain title=concept-link-obtain>obtain</a> the resource under the
12098 <p>User agents must not consider the <code title=attr-link-type><a href=#attr-link-type>type</a></code> attribute authoritative —
12099 upon fetching the resource, user agents must not use the <code title=attr-link-type><a href=#attr-link-type>type</a></code> attribute to determine its actual
12105 type defines rules for processing the resource's <a href=#content-type title=Content-Type>Content-Type metadata</a>, then those rules
12107 agents may apply the <a href=#content-type-sniffing:-image title="Content-Type sniffing:
12109 type</var> being the type determined from the resource's <a href=#content-type title=Content-Type>Content-Type metadata</a>, and use the
12113 agent must use the resource's <a href=#content-type title=Content-Type>Content-Type metadata</a> to determine the
12118 <p class=note>The <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>
12119 link type defines rules for processing the resource's <a href=#content-type title=Content-Type>Content-Type metadata</a>.</p>
12130 <pre><link rel="stylesheet" href="A" type="text/plain">
12131 <link rel="stylesheet" href="B" type="text/css">
12132 <link rel="stylesheet" href="C"></pre>
12136 <code>text/plain</code> is not the <a href=#mime-type>MIME type</a> for CSS style
12145 <a href=#content-type>Content-Type</a> metadata, or with a syntactically
12147 for <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> links would kick
12158 links, where the <code title=attr-link-title><a href=#attr-link-title>title</a></code>
12161 <p class=note>The <code title=attr-link-title><a href=#attr-link-title>title</a></code>
12162 attribute on <code><a href=#the-link-element>link</a></code> elements differs from the global
12163 <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute of most other
12167 <p>The <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attribute is used
12168 with the <code title=rel-icon><a href=#rel-icon>icon</a></code> link type. The attribute
12169 must not be specified on <code><a href=#the-link-element>link</a></code> elements that do not have
12170 a <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute that specifies
12171 the <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword.</p>
12176 header, to be processed like a series of <code><a href=#the-link-element>link</a></code> elements.
12182 apply.) <a href=#refsHTTP>[HTTP]</a> <a href=#refsWEBLINK>[WEBLINK]</a></p> <!-- WEBLINK is ref for Link: header -->
12184 <p>The IDL attributes <dfn id=dom-link-href title=dom-link-href><code>href</code></dfn>, <dfn id=dom-link-rel title=dom-link-rel><code>rel</code></dfn>, <dfn id=dom-link-media title=dom-link-media><code>media</code></dfn>, <dfn id=dom-link-hreflang title=dom-link-hreflang><code>hreflang</code></dfn>, and <dfn id=dom-link-type title=dom-link-type><code>type</code></dfn>, and <dfn id=dom-link-sizes title=dom-link-sizes><code>sizes</code></dfn> each must
12185 <a href=#reflect>reflect</a> the respective content attributes of the same
12188 <p>The IDL attribute <dfn id=dom-link-rellist title=dom-link-rellist><code>relList</code></dfn> <span class=impl>must</span> <a href=#reflect title=reflect>reflect</a> the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> content attribute.</p>
12193 to style sheet links. When the <code><a href=#the-link-element>link</a></code> element defines a
12194 style sheet link, then the <code title=dom-link-disabled><a href=#dom-link-disabled>disabled</a></code> attribute behaves as
12195 defined <a href=#dom-linkstyle-disabled title=dom-linkstyle-disabled>for the alternative
12196 style sheets DOM</a>. For all other <code><a href=#the-link-element>link</a></code> elements it
12201 this element; the <a href=#styling>styling processing model</a> defines
12202 how. <a href=#refsCSSOM>[CSSOM]</a></p>
12206 <p>Here, a set of <code><a href=#the-link-element>link</a></code> elements provide some style
12210 <link rel="stylesheet" href="default.css">
12213 <link rel="stylesheet" href="green.css" title="Green styles">
12216 <link rel="alternate stylesheet" href="contrast.css" title="High contrast">
12217 <link rel="alternate stylesheet" href="big.css" title="Big fonts">
12218 <link rel="alternate stylesheet" href="wide.css" title="Wide screen"></pre>
12228 <pre><link rel=alternate href="/en/html" hreflang=en type=text/html title="English HTML">
12229 <link rel=alternate href="/fr/html" hreflang=fr type=text/html title="French HTML">
12230 <link rel=alternate href="/en/html/print" hreflang=en type=text/html media=print title="English HTML (for printing)">
12231 <link rel=alternate href="/fr/html/print" hreflang=fr type=text/html media=print title="French HTML (for printing)">
12232 <link rel=alternate href="/en/pdf" hreflang=en type=application/pdf title="English PDF">
12233 <link rel=alternate href="/fr/pdf" hreflang=fr type=application/pdf title="French PDF"></pre>
12244 <dd><a href=#metadata-content>Metadata content</a>.</dd>
12246 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: <a href=#flow-content>flow content</a>.</dd>
12247 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: <a href=#phrasing-content>phrasing content</a>.</dd>
12250 <dd>If the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute is present, or if the element's <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element-0>head</a></code> element.</dd>
12251 <dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present but not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element-0>head</a></code> element.</dd>
12252 <dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present but not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element-0>head</a></code> element.</dd>
12253 <dd>If the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute is present: where <a href=#metadata-content>metadata content</a> is expected.</dd>
12255 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: where <a href=#metadata-content>metadata content</a> is expected.</dd>
12256 <dd>If the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present: where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
12261 <dd><a href=#global-attributes>Global attributes</a></dd>
12262 <dd><code title=attr-meta-name><a href=#attr-meta-name>name</a></code></dd>
12263 <dd><code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code></dd>
12264 <dd><code title=attr-meta-content><a href=#attr-meta-content>content</a></code></dd>
12265 <dd><code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code></dd>
12268 <pre class=idl>interface <dfn id=htmlmetaelement>HTMLMetaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
12269 attribute DOMString <a href=#dom-meta-name title=dom-meta-name>name</a>;
12270 attribute DOMString <a href=#dom-meta-httpequiv title=dom-meta-httpEquiv>httpEquiv</a>;
12271 attribute DOMString <a href=#dom-meta-content title=dom-meta-content>content</a>;
12274 </dl><p>The <code><a href=#meta>meta</a></code> element <a href=#represents>represents</a> various
12276 <code><a href=#the-title-element-0>title</a></code>, <code><a href=#the-base-element>base</a></code>, <code><a href=#the-link-element>link</a></code>,
12277 <code><a href=#the-style-element>style</a></code>, and <code><a href=#script>script</a></code> elements.</p>
12279 <p>The <code><a href=#meta>meta</a></code> element can represent document-level
12280 metadata with the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>
12281 attribute, pragma directives with the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute, and the
12282 file's <a href=#character-encoding-declaration>character encoding declaration</a> when an HTML
12284 the network or for disk storage) with the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute.</p>
12287 <p>Exactly one of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>,
12288 <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code>, and <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attributes must be
12291 <p>If either <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>, <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, or <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> is specified, then the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must also be
12296 document. This is a <a href=#character-encoding-declaration>character encoding declaration</a>. If
12297 the attribute is present in an <a href=#xml-documents title="XML documents">XML
12298 document</a>, its value must be an <a href=#ascii-case-insensitive>ASCII
12302 <p class=note>The <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code>
12303 attribute on the <code><a href=#meta>meta</a></code> element has no effect in XML
12307 <p>There must not be more than one <code><a href=#meta>meta</a></code> element with a
12308 <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute per
12317 <p>If a <code><a href=#meta>meta</a></code> element has a <dfn id=attr-meta-name title=attr-meta-name><code>name</code></dfn> attribute, it sets
12319 name/value pairs, the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>
12320 attribute on the <code><a href=#meta>meta</a></code> element giving the name, and the
12321 <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute on the same
12324 described in the following sections. If a <code><a href=#meta>meta</a></code> element
12325 has no <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute,
12332 must <a href=#reflect>reflect</a> the respective content attributes of the
12334 <a href=#reflect>reflect</a> the content attribute <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>.</p>
12341 <p>This specification defines a few names for the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute of the
12342 <code><a href=#meta>meta</a></code> element.</p>
12345 in an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> manner</span>.</p>
12351 a Web application, the <code title=meta-application-name><a href=#meta-application-name>application-name</a></code> metadata name
12352 must not be used. There must not be more than one <code><a href=#meta>meta</a></code>
12353 element with its <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute
12354 set to the value <code title=meta-application-name><a href=#meta-application-name>application-name</a></code> per
12356 name in UI in preference to the page's <code><a href=#the-title-element-0>title</a></code>, since
12371 <code><a href=#meta>meta</a></code> element with its <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute set to the value <code title=meta-description><a href=#meta-description>description</a></code> per document.</dd>
12384 output, in the page's <code><a href=#the-head-element-0>head</a></code> element, to identify
12397 <p>The value must be a <a href=#set-of-comma-separated-tokens>set of comma-separated tokens</a>,
12403 <code><a href=#meta>meta</a></code> element to specify some keywords that users
12433 <p>For each <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute and whose
12434 <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute's value is
12435 <code title=meta-keywords><a href=#meta-keywords>keywords</a></code>, run the following
12438 <ol><li><p><a href=#split-a-string-on-commas title="split a string on commas">Split the value
12470 set of metadata names</dfn> may be registered in the <a href=http://wiki.whatwg.org/wiki/MetaExtensions>WHATWG Wiki
12471 MetaExtensions page</a>. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
12572 <p>Metadata names whose values are to be <a href=#url title=URL>URLs</a> must not be proposed or accepted. Links must
12573 be represented using the <code><a href=#the-link-element>link</a></code> element, not the
12574 <code><a href=#meta>meta</a></code> element.</p>
12581 is specified on a <code><a href=#meta>meta</a></code> element, the element is a pragma
12584 <p>The <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>
12585 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The following
12597 <tbody><tr><td><a href=#attr-meta-http-equiv-content-language title=attr-meta-http-equiv-content-language>Content Language</a>
12600 <tr><td><a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration</a>
12613 <tr><td><a href=#attr-meta-http-equiv-default-style title=attr-meta-http-equiv-default-style>Default style</a>
12616 <tr><td><a href=#attr-meta-http-equiv-refresh title=attr-meta-http-equiv-refresh>Refresh</a>
12659 <p>When a <code><a href=#meta>meta</a></code> element is <a href=#insert-an-element-into-a-document title="insert an
12661 <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is
12674 is no <a href=#pragma-set-default-language>pragma-set default language</a>.</p>
12677 this pragma is used. Authors are encouraged to use the <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute instead.</p>
12681 <ol><li><p>If another <code><a href=#meta>meta</a></code> element with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
12682 <a href=#attr-meta-http-equiv-content-language title=attr-meta-http-equiv-content-language>Content
12688 <li><p>If the <code><a href=#meta>meta</a></code> element has no <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, or if that
12692 <li><p>If the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute contains a
12698 element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code>
12704 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12706 <li><p><a href=#collect-a-sequence-of-characters title="collect a sequence of characters">Collect a
12707 sequence of characters</a> that are not<!--neither--> <a href=#space-character title="space character">space characters</a><!-- nor a U+002C
12710 <li><p>Let the <a href=#pragma-set-default-language>pragma-set default language</a> be the
12715 <p>For <code><a href=#meta>meta</a></code> elements with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
12716 <a href=#attr-meta-http-equiv-content-language title=attr-meta-http-equiv-content-language>Content
12717 Language state</a>, the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must have a
12718 value consisting of a valid BCP 47 language tag. <a href=#refsBCP47>[BCP47]</a></p>
12722 supports one language. <a href=#refsHTTP>[HTTP]</a></p>
12730 <p>The <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding
12733 <a href=#character-encoding-declaration>character encoding declaration</a>. <span class=impl>This state's user agent requirements are all handled
12736 <p>For <code><a href=#meta>meta</a></code> elements with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
12737 <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding
12738 declaration state</a>, the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must have a
12739 value that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for a
12741 <a href=#space-character title="space character">space characters</a>, followed by
12743 the character encoding name of the <a href=#character-encoding-declaration>character encoding
12746 <p>If the document contains a <code><a href=#meta>meta</a></code> element with an
12747 <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in
12748 the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding
12750 <code><a href=#meta>meta</a></code> element with the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute present.</p>
12752 <p>The <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding
12753 declaration state</a> may be used in <a href=#html-documents>HTML
12754 documents</a>, but elements with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in that
12755 state must not be used in <a href=#xml-documents>XML documents</a>.</p>
12768 <ol><li><p>If the <code><a href=#meta>meta</a></code> element has no <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, or if that
12773 value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute. <a href=#refsCSSOM>[CSSOM]</a></li>
12787 <ol><!-- TESTS: http://www.hixie.ch/tests/adhoc/html/meta/refresh/ --><li><p>If another <code><a href=#meta>meta</a></code> element with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
12788 <a href=#attr-meta-http-equiv-refresh title=attr-meta-http-equiv-refresh>Refresh state</a>
12793 <li><p>If the <code><a href=#meta>meta</a></code> element has no <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, or if that
12798 element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code>
12804 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12806 <li><p><a href=#collect-a-sequence-of-characters title="collect a sequence of characters">Collect a
12809 the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a>. If the
12814 <li><p><a href=#collect-a-sequence-of-characters title="collect a sequence of characters">Collect a
12819 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12828 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12848 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12854 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
12870 <li><p>Strip any trailing <a href=#space-character title="space character">space
12876 <li><p><a href=#resolve-a-url title="resolve a url">Resolve</a> the <var title="">url</var> value to an <a href=#absolute-url>absolute URL</a>,
12877 relative to the <code><a href=#meta>meta</a></code> element. If this fails, abort
12887 <code><a href=#meta>meta</a></code> element's <code><a href=#document>Document</a></code>'s
12888 <a href=#browsing-context>browsing context</a> did not have the <a href=#sandboxed-automatic-features-browsing-context-flag>sandboxed
12890 <code><a href=#document>Document</a></code> was created, the user agent <a href=#navigate title=navigate>navigates</a> the <code><a href=#document>Document</a></code>'s
12891 <a href=#browsing-context>browsing context</a> to <var title="">url</var>, with
12892 <a href=#replacement-enabled>replacement enabled</a>, and with the
12893 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> as the
12894 <a href=#source-browsing-context>source browsing context</a>.</li>
12897 <a href=#navigate title=navigate>navigates</a> a <a href=#browsing-context>browsing
12899 browsing context as the <a href=#source-browsing-context>source browsing
12913 <p>For <code><a href=#meta>meta</a></code> elements with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
12914 <a href=#attr-meta-http-equiv-refresh title=attr-meta-http-equiv-refresh>Refresh state</a>,
12915 the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must
12918 <ul><li> just a <a href=#valid-non-negative-integer>valid non-negative integer</a>, or</li>
12920 <li> a <a href=#valid-non-negative-integer>valid non-negative integer</a>, followed by a
12921 U+003B SEMICOLON character (;), followed by one or more <a href=#space-character title="space character">space characters</a>, followed by
12927 and then a <a href=#valid-url>valid URL</a>.</li>
12932 by the page at the given <a href=#url>URL</a>.</p>
12937 markup in the page's <code><a href=#the-head-element-0>head</a></code> element, to ensure that
12957 </dl><p>There must not be more than one <code><a href=#meta>meta</a></code> element with
12965 conditions, be registered in the <a href=http://wiki.whatwg.org/wiki/PragmaExtensions>WHATWG Wiki
12966 PragmaExtensions page</a>. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
12971 header. <a href=#refsIANAPERMHEADERS>[IANAPERMHEADERS]</a></p>
12975 registered; instead, use <a href=#concept-meta-extensions title=concept-meta-extensions>metadata names</a>. Pragma
13038 an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the
13039 <a href=#preferred-mime-name>preferred MIME name</a> for that encoding. <a href=#refsIANACHARSET>[IANACHARSET]</a></li>
13042 the use of <a href=#syntax-charref title=syntax-charref>character references</a>
13056 </ul><p>If an <a href=#html-documents title="HTML documents">HTML document</a> does not
13058 <a href=#content-type title=Content-Type>Content-Type metadata</a>, and the
13059 document is not <a href=#an-iframe-srcdoc-document>an <code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> document</a>, then the
13060 character encoding used must be an <a href=#ascii-compatible-character-encoding>ASCII-compatible character
13063 <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-charset><a href
13064 <code><a href=#meta>meta</a></code> element with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
13065 <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration
13068 <p>If the document is <a href=#an-iframe-srcdoc-document>an <code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> document</a>, the
13069 document must not have a <a href=#character-encoding-declaration>character encoding
13072 <code><a href=#the-iframe-element>iframe</a></code>.)</p>
13074 <p>If an <a href=#html-documents title="HTML documents">HTML document</a> contains
13075 a <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute or a
13076 <code><a href=#meta>meta</a></code> element with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
13077 <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration
13079 <a href=#ascii-compatible-character-encoding>ASCII-compatible character encoding</a>.</p>
13112 <a href=#refsRFC1345>[RFC1345]</a><!-- for the JIS types -->
13113 <a href=#refsRFC1842>[RFC1842]</a><!-- HZ-GB-2312 -->
13114 <a href=#refsRFC1468>[RFC1468]</a><!-- ISO-2022-JP -->
13115 <a href=#refsRFC2237>[RFC2237]</a><!-- ISO-2022-JP-1 -->
13116 <a href=#refsRFC1554>[RFC1554]</a><!-- ISO-2022-JP-2 -->
13117 <a href=#refsRFC1922>[RFC1922]</a><!-- ISO-2022-CN and ISO-2022-CN-EXT -->
13118 <a href=#refsRFC1557>[RFC1557]</a><!-- ISO-2022-KR -->
13119 <a href=#refsCESU8>[CESU8]</a>
13120 <a href=#refsUTF7>[UTF7]</a>
13121 <a href=#refsBOCU1>[BOCU1]</a>
13122 <a href=#refsSCSU>[SCSU]</a>
13128 distinguish it from UTF-16. <a href=#refsUNICODE>[UNICODE]</a></p>
13132 <a href="#document's-character-encoding">document's character encoding</a> by default.</p>
13141 document (in the <code><a href=#the-head-element-0>head</a></code> element):</p>
13156 <dd><a href=#metadata-content>Metadata content</a>.</dd>
13157 <dd>If the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is present: <a href=#flow-content>flow content</a>.</dd>
13159 <dd>If the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is absent: where <a href=#metadata-content>metadata content</a> is expected.</dd>
13160 <dd>If the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is absent: in a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element-0>head</a></code> element.</dd>
13161 <dd>If the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is present: where <a href=#flow-content>flow content</a> is expected, but before any other <a href=#flow-content>flow content</a> other than other <code><a href=#the-style-element>style</a></code> elements and <a href=#inter-element-whitespace>inter-element whitespace</a>.</dd>
13163 <dd>Depends on the value of the <code title=attr-style-type><a href=#attr-style-type>type</a></code> attribute, but must match requirements described in prose below.</dd>
13165 <dd><a href=#global-attributes>Global attributes</a></dd>
13166 <dd><code title=attr-style-media><a href=#attr-style-media>media</a></code></dd>
13167 <dd><code title=attr-style-type><a href=#attr-style-type>type</a></code></dd>
13168 <dd><code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code></dd>
13169 <dd>Also, the <code title=attr-style-title><a href=#attr-style-title>title</a></code> attribute has special semantics on this element.</dd>
13172 <pre class=idl>interface <dfn id=htmlstyleelement>HTMLStyleElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
13173 attribute boolean <a href=#dom-style-disabled title=dom-style-disabled>disabled</a>;
13174 attribute DOMString <a href=#dom-style-media title=dom-style-media>media</a>;
13175 attribute DOMString <a href=#dom-style-type title=dom-style-type>type</a>;
13176 attribute boolean <a href=#dom-style-scoped title=dom-style-scoped>scoped</a>;
13178 <a href=#htmlstyleelement>HTMLStyleElement</a> implements <span>LinkStyle</span>;</pre>
13180 </dl><p>The <code><a href=#the-style-element>style</a></code> element allows authors to embed style
13181 information in their documents. The <code><a href=#the-style-element>style</a></code> element is
13182 one of several inputs to the <a href=#styling>styling processing
13183 model</a>. The element does not <a href=#represents title=represents>represent</a> content for the user.</p>
13187 its value must be a <a href=#valid-mime-type>valid MIME type</a> that designates a
13190 absent, is "<code title="">text/css</code>". <a href=#refsRFC2318>[RFC2318]</a></p>
13198 parameter for the purpose of comparing <a href=#mime-type title="MIME type">MIME
13205 <a href=#valid-media-query>valid media query</a>. <span class=impl>The user agent
13206 must apply the styles when the <code title=attr-style-media><a href=#attr-style-media>media</a></code> attribute's value
13207 <a href=#matches-the-environment>matches the environment</a> and the other relevant
13221 <p id=style-default-media>The default, if the <code title=attr-style-media><a href=#attr-style-media>media</a></code> attribute is omitted, is
13226 attribute is a <a href=#boolean-attribute>boolean attribute</a>. If set, it indicates
13228 <code><a href=#the-style-element>style</a></code> element's parent element, as opposed to the whole
13229 <code><a href=#document>Document</a></code>.</p>
13233 <p>If the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is
13235 information only to the <code><a href=#the-style-element>style</a></code> element's parent element
13242 <code><a href=#the-style-element>style</a></code> elements defines <span>alternative style sheet
13243 sets</span>. If the <code><a href=#the-style-element>style</a></code> element has no <code title=attr-style-title><a href=#attr-style-title>title</a></code> attribute, then it has no
13244 title; the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute of
13245 ancestors does not apply to the <code><a href=#the-style-element>style</a></code> element. <a href=#refsCSSOM>[CSSOM]</a></p>
13247 <p class=note>The <code title=attr-style-title><a href=#attr-style-title>title</a></code>
13248 attribute on <code><a href=#the-style-element>style</a></code> elements, like the <code title=attr-link-title><a href=#attr-link-title>title</a></code> attribute on <code><a href=#the-link-element>link</a></code>
13249 elements, differs from the global <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute in that a
13250 <code><a href=#the-style-element>style</a></code> block without a title does not inherit the title
13253 <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#the-style-element>style</a></code> element must
13255 ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
13275 semantics, before the <code><a href=#the-style-element>style</a></code> element itself is
13277 agents must evaluate <code><a href=#the-style-element>style</a></code> elements by passing the
13278 concatenation of the contents of all the <a href=#text-node title="text
13280 <code><a href=#the-style-element>style</a></code> element (not any other nodes such as comments or
13281 elements), in <a href=#tree-order>tree order</a>, to the style system. For
13283 nodes of the <code><a href=#the-style-element>style</a></code> element to the style system.</p>
13285 <p>All <a href=#url title=URL>URLs</a> found by the styling language's
13286 processor must be <a href=#resolve-a-url title="resolve a url">resolved</a>,
13292 <p>Once the attempts to obtain the style sheet's <a href=#critical-subresources>critical
13294 has no <a href=#critical-subresources>critical subresources</a>, once the style sheet has
13296 successful or there were none, <a href=#queue-a-task>queue a task</a> to
13297 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load>load</code> at the <code><a href=#the-style-element>style</a></code> element,
13298 or, if one of the style sheet's <a href=#critical-subresources>critical subresources</a>
13301 Content-Type), <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
13303 <code><a href=#the-style-element>style</a></code> element. Non-network errors in processing the
13307 <p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#dom-manipulation-task-source>DOM manipulation task
13310 <p>The element must <a href=#delay-the-load-event>delay the load event</a> of the
13312 sheet's <a href=#critical-subresources>critical subresources</a>, if any, are
13318 but CSS is expected to be supported by most Web browsers. <a href=#refsCSS>[CSS]</a></p>
13323 must <a href=#reflect>reflect</a> the respective content attributes of the
13329 IDL attribute behaves as defined <a href=#dom-linkstyle-disabled title=dom-linkstyle-disabled>for the alternative style sheets
13333 this element; the <a href=#styling>styling processing model</a> defines
13334 href=#refsCSSOM>[CSSOM]</a></p>
13366 <p>The <code><a href=#the-link-element>link</a></code> and <code><a href=#the-style-element>style</a></code> elements can provide
13370 used. <a href=#refsCSSOM>[CSSOM]</a></p>
13372 <p>The <code><a href=#the-style-element>style</a></code> and <code><a href=#the-link-element>link</a></code> elements implement
13373 the <code>LinkStyle</code> interface. <a href=#refsCSSOM>[CSSOM]</a></p>
13377 <p>For <code><a href=#the-style-element>style</a></code> elements, if the user agent does not
13380 <code><a href=#the-link-element>link</a></code> elements that do not represent <a href=#link-type-stylesheet title=rel-stylesheet>external resource links that contribute to
13381 the styling processing model</a> (i.e. that do not have a <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword in their <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute), and <code><a href=#the-link-element>link</a></code>
13387 <code>StyleSheet</code> object with the following properties: <a href=#refsCSSOM>[CSSOM]</a></p>
13392 type. For <code><a href=#the-style-element>style</a></code> elements, this is the same as the
13393 <code title=attr-style-type><a href=#attr-style-type>type</a></code> content attribute's
13395 <code><a href=#the-link-element>link</a></code> elements, this is the <a href=#content-type title=Content-Type>Content-Type metadata of the specified
13400 <dd><p>For <code><a href=#the-link-element>link</a></code> elements, the location must be the
13401 result of <a href=#resolve-a-url title="resolve a url">resolving</a> the
13402 <a href=#url>URL</a> given by the element's <code title=attr-link-href><a href=#attr-link-href>href</a></code> content attribute, relative to
13404 <code><a href=#the-style-element>style</a></code> elements, there is no location.</dd> <!--
13417 <code title=dom-title><a href=#dom-title>title</a></code> content attribute, if the
13425 <dd><p>For <code><a href=#the-link-element>link</a></code> elements, true if <a href=#the-link-is-an-alternative-stylesheet>the link is an
13438 attribute on <code><a href=#the-link-element>link</a></code> and <code><a href=#the-style-element>style</a></code> elements must
13453 style sheets are defined in the CSS object model specification. <a href=#refsCSSOM>[CSSOM]</a></p>
13455 <hr><p>Style sheets, whether added by a <code><a href=#the-link-element>link</a></code> element, a
13456 <code><a href=#the-style-element>style</a></code> element, an <code><?xml-stylesheet></code> PI,
13461 <p>When a style sheet is ready to be applied, its <a href=#style-sheet-ready>style sheet
13464 <code><a href=#the-style-element>style</a></code> element with no <code title="">@import</code>
13467 script once the <a href=#event-loop>event loop</a> reaches its "update the
13470 <p>A style sheet in the context of the <code><a href=#document>Document</a></code> of an
13471 <a href=#html-parser>HTML parser</a> or <a href=#xml-parser>XML parser</a> is said to be
13473 by that <code><a href=#document>Document</a></code>'s parser, and the element is either a
13474 <code><a href=#the-style-element>style</a></code> element or a <code><a href=#the-link-element>link</a></code> element that was
13475 an <a href=#link-type-stylesheet title=rel-stylesheet>external resource link that
13479 <a href=#style-sheet-ready>style sheet ready</a> flag is not yet set, and, the last
13480 time the <a href=#event-loop>event loop</a> reached step 1, the element was
13481 <a href=#in-a-document title="in a document">in that <code>Document</code></a>,
13499 to show more details, the <code><a href=#the-details-element>details</a></code> element could be
13517 <dd><a href=#metadata-content>Metadata content</a>.</dd>
13518 <dd><a href=#flow-content>Flow content</a>.</dd>
13519 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
13521 <dd>Where <a href=#metadata-content>metadata content</a> is expected.</dd>
13522 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
13524 <dd>If there is no <code title=attr-script-src><a href=#attr-script-src>src</a></code>
13525 attribute, depends on the value of the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute, but must match
13526 <a href=#restrictions-for-contents-of-script-elements>script content restrictions</a>.</dd>
13527 <dd>If there <em>is</em> a <code title=attr-script-src><a href=#attr-script-src>src</a></code>
13529 <a href=#inline-documentation-for-external-scripts>script documentation</a> that also matches <a href=#restrictions-for-contents-of-script-elements>script
13532 <dd><a href=#global-attributes>Global attributes</a></dd>
13533 <dd><code title=attr-script-src><a href=#attr-script-src>src</a></code></dd>
13534 <dd><code title=attr-script-async><a href=#attr-script-async>async</a></code></dd>
13535 <dd><code title=attr-script-defer><a href=#attr-script-defer>defer</a></code></dd>
13536 <dd><code title=attr-script-type><a href=#attr-script-type>type</a></code></dd>
13537 <dd><code title=attr-script-charset><a href=#attr-script-charset>charset</a></code></dd>
13540 <pre class=idl>interface <dfn id=htmlscriptelement>HTMLScriptElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
13541 attribute DOMString <a href=#dom-script-src title=dom-script-src>src</a>;
13542 attribute boolean <a href=#dom-script-async title=dom-script-async>async</a>;
13543 attribute boolean <a href=#dom-script-defer title=dom-script-defer>defer</a>;
13544 attribute DOMString <a href=#dom-script-type title=dom-script-type>type</a>;
13545 attribute DOMString <a href=#dom-script-charset title=dom-script-charset>charset</a>;
13546 attribute DOMString <a href=#dom-script-text title=dom-script-text>text</a>;
13549 </dl><p>The <code><a href=#script>script</a></code> element allows authors to include dynamic
13551 <a href=#represents title=represents>represent</a> content for the user.</p>
13555 <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute. If the language
13557 then the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute must
13562 using the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute, and
13563 the <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute must not be
13568 the attribute is present, its value must be a <a href=#valid-mime-type>valid MIME
13575 resource to use. The value of the attribute must be a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid
13577 script resource of the type given by the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute, if the attribute is
13585 resource. The attribute must not be specified if the <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute is not present. If the
13587 must be an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the
13588 <a href=#preferred-mime-name>preferred MIME name</a> for that encoding, and must match
13590 the <a href=#content-type title=Content-Type>Content-Type metadata</a> of the
13591 external file, if any. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
13595 are <a href=#boolean-attribute title="boolean attribute">boolean attributes</a> that
13596 indicate how the script should be executed. The <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> and <code title=attr-script-async><a href=#attr-script-async>async</a></code> attributes must not be
13597 specified if the <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute
13601 attributes. If the <code title=attr-script-async><a href=#attr-script-async>async</a></code>
13603 asynchronously, as soon as it is available. If the <code title=attr-script-async><a href=#attr-script-async>async</a></code> attribute is not present but
13604 the <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> attribute is
13616 parsing rules for <code><a href=#script>script</a></code> <a href=#scriptTag>start</a>
13617 and <a href=#scriptEndTag>end</a> tags in HTML, <a href=#scriptForeignEndTag>in foreign content</a>, and <a href=#scriptTagXML>in XML</a>, the rules for the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> method, the
13618 handling of <a href=#scripting>scripting</a>, etc.</p>
13620 <p>The <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> attribute may be
13621 specified even if the <code title=attr-script-async><a href=#attr-script-async>async</a></code>
13623 support <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> (and not <code title=attr-script-async><a href=#attr-script-async>async</a></code>) to fall back to the <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> behavior instead of the
13626 <p>Changing the <code title=attr-script-src><a href=#attr-script-src>src</a></code>, <code title=attr-script-type><a href=#attr-script-type>type</a></code>, <code title=attr-script-charset><a href=#attr-script-charset>charset</a></code>, <code title=attr-script-async><a href=#attr-script-async>async</a></code>, and <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> attributes dynamically has no
13633 <p>A <code><a href=#script>script</a></code> element has several associated pieces of
13638 <code><a href=#script>script</a></code> elements must have this flag unset (script
13640 <code><a href=#script>script</a></code> element is cloned, the "already started" flag,
13644 <dfn id=parser-inserted>"parser-inserted"</dfn>. Initially, <code><a href=#script>script</a></code>
13645 elements must have this flag unset. It is set by the <a href=#html-parser>HTML
13646 parser</a> and the <a href=#xml-parser>XML parser</a> on <code><a href=#script>script</a></code>
13652 <code><a href=#script>script</a></code> elements must have this flag unset (script
13655 <a href=#parser-inserted>"parser-inserted"</a>, to let the parser know when to
13663 <p>When a <code><a href=#script>script</a></code> element that is neither marked as
13664 having <a href=#already-started>"already started"</a> nor marked as being
13665 <a href=#parser-inserted>"parser-inserted"</a> experiences one of the events listed
13666 in the following list, the user agent must synchronously <a href=#running-a-script title="running a script">run</a> the <code><a href=#script>script</a></code>
13669 <ul><li>The <code><a href=#script>script</a></code> element gets <a href=#insert-an-element-into-a-document title="insert an
13672 <li>The <code><a href=#script>script</a></code> element is <a href=#in-a-document>in a
13675 <li>The <code><a href=#script>script</a></code> element is <a href=#in-a-document>in a
13676 <code>Document</code></a> and has a <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute set where previously
13680 <code><a href=#script>script</a></code> element is to be run, the user agent must act as
13687 <ul class=brief><li>the <code><a href=#script>script</a></code> element has a <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute and its value is
13690 <li>the <code><a href=#script>script</a></code> element has no <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute but it has a <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute and
13693 <li>the <code><a href=#script>script</a></code> element has neither a <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute nor a <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute, then</li>
13695 </ul><p>...let <var><a href="#the-script-block's-type">the script block's type</a></var> for this
13696 <code><a href=#script>script</a></code> element be "<code title="">text/javascript</code>".</p>
13698 <p>Otherwise, if the <code><a href=#script>script</a></code> element has a <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute, let <var><a href="#the-script-block's-type">the
13699 script block's type</a></var> for this <code><a href=#script>script</a></code> element be
13701 of <a href=#space-character title="space character">space characters</a>
13704 <p>Otherwise, the element has a non-empty <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute; let
13705 <var><a href="#the-script-block's-type">the script block's type</a></var> for this <code><a href=#script>script</a></code>
13706 element be the concatenation of the string "<code title="">text/</code>" followed by the value of the <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute.</p> <!--
13710 <p class=note>The <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute is never
13711 conforming, and is always ignored if there is a <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute present.</p>
13717 <p>If the <code><a href=#script>script</a></code> element has a <code title=attr-script-charset><a href=#attr-script-charset>charset</a></code> attribute, then let
13718 <var><a href="#the-script-block's-character-encoding">the script block's character encoding</a></var> for this
13719 <code><a href=#script>script</a></code> element be the encoding given by the <code title=attr-script-charset><a href=#attr-script-charset>charset</a></code> attribute.</p>
13721 <p>Otherwise, let <var><a href="#the-script-block's-character-encoding">the script block's character encoding</a></var>
13722 for this <code><a href=#script>script</a></code> element be the same as <a href="#document's-character-encoding" title="document's character encoding">the encoding of the document
13729 <p>If the <code><a href=#script>script</a></code> element has an <code title=attr-script-event><a href=#attr-script-event>event</a></code> attribute and a <code title=attr-script-for><a href=#attr-script-for>for</a></code> attribute, then run these
13732 <ol><li><p>Let <var title="">for</var> be the value of the <code title=attr-script-for><a href=#attr-script-for>for</a></code> attribute.</li>
13734 <li><p>Let <var title="">event</var> be the value of the <code title=attr-script-event><a href=#attr-script-event>event</a></code> attribute.</li>
13736 <li><p><a href=#strip-leading-and-trailing-whitespace>Strip leading and trailing whitespace</a> from
13739 <li><p>If <var title="">for</var> is not an <a href=#ascii-case-insensitive>ASCII
13743 <li><p>If <var title="">event</var> is not an <a href=#ascii-case-insensitive>ASCII
13751 <p>If <a href=#concept-n-noscript title=concept-n-noscript>scripting is
13752 disabled</a> for the <code><a href=#script>script</a></code> element, or if the
13753 user agent does not <a href=#support-the-scripting-language>support the scripting language</a>
13754 given by <var><a href="#the-script-block's-type">the script block's type</a></var> for this
13755 <code><a href=#script>script</a></code> element, then the user agent must abort these
13762 <p>If the element has no <code title=attr-script-src><a href=#attr-script-src>src</a></code>
13764 empty <a href=#text-node title="text node">text nodes</a>, then the user
13772 <p>The user agent must set the element's <a href=#already-started>"already
13779 <p>If the element has a <code title=attr-script-src><a href=#attr-script-src>src</a></code>
13781 that attribute must be <a href=#resolve-a-url title="resolve a url">resolved</a>
13783 resource must then be <a href=#fetch title=fetch>fetched</a>, from the
13784 <a href=#origin>origin</a> of the element's <code><a href=#document>Document</a></code>.</p>
13787 <p>If the <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute's
13789 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
13793 <p>For historical reasons, if the <a href=#url>URL</a> is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code>
13795 in the definition of the <a href=#fetch title=fetch>fetching</a>
13800 <p>Once the resource's <a href=#content-type title=Content-Type>Content Type
13802 <a href=#algorithm-for-extracting-an-encoding-from-a-content-type>algorithm for extracting an encoding from a
13804 user agent supports that encoding, then let <var><a href="#the-script-block's-character-encoding">the script
13810 the element is <a href=#insert-an-element-into-a-document title="insert an element into a
13813 never inserted in the document, or the <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute is dynamically
13825 <dl class=switch><dt id=script-processing-defer>If the element has a <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute, and the element has
13826 a <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code> attribute, and the
13827 element has been flagged as <a href=#parser-inserted>"parser-inserted"</a>, and
13828 the element does not have an <code title=attr-script-async><a href=#attr-script-async>async</a></code> attribute</dt>
13836 <p>The <a href=#concept-task title=concept-task>task</a> that the
13837 <a href=#networking-task-source>networking task source</a> places on the <a href=#task-queue>task
13838 queue</a> once the <a href=#fetch title=fetch>fetching
13840 <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a> flag. The parser will
13847 <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute, and the
13848 element has been flagged as <a href=#parser-inserted>"parser-inserted"</a>, and
13849 the element does not have an <code title=attr-script-async><a href=#attr-script-async>async</a></code> attribute</dt>
13853 <p>The element is the <a href=#pending-parsing-blocking-script>pending parsing-blocking
13857 <p>The <a href=#concept-task title=concept-task>task</a> that the
13858 <a href=#networking-task-source>networking task source</a> places on the <a href=#task-queue>task
13859 queue</a> once the <a href=#fetch title=fetch>fetching
13861 <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a> flag. The parser will
13868 have a <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute, but
13869 there is <a href=#a-style-sheet-blocking-scripts>a style sheet blocking scripts</a>, and the
13870 element has been flagged as <a href=#parser-inserted>"parser-inserted"</a></dt>
13874 <p>The element is the <a href=#pending-parsing-blocking-script>pending parsing-blocking
13878 <p>Set the element's <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a>
13884 <dt id=script-processing-src>If the element has a <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute</dt>
13891 <p>The <a href=#concept-task title=concept-task>task</a> that the
13892 <a href=#networking-task-source>networking task source</a> places on the <a href=#task-queue>task
13893 queue</a> once the <a href=#fetch title=fetch>fetching
13894 algorithm</a> has completed must <a href=#executing-a-script-block title="executing a
13896 the element from the <a href=#set-of-scripts-that-will-execute-as-soon-as-possible>set of scripts that will execute as
13904 <dd>The user agent must immediately <a href=#executing-a-script-block title="executing a
13910 </ol><!-- similar text in various places --><p>Fetching an external script must <a href=#delay-the-load-event>delay the load
13911 event</a> of the element's document until the <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a
13912 task">queued</a> by the <a href=#networking-task-source>networking task source</a> once
13913 the resource has been <a href=#fetch title=fetch>fetched</a> (defined
13926 <dd><p>Executing the script block must just consist of <a href=#fire-a-simple-event title="fire a simple event">firing a simple event</a> named
13939 <dl class=switch><dt>If the script is from an external file and <var><a href="#the-script-block's-type">the script block's type</a></var> is a text-based language</dt>
13950 first column, then set <var><a href="#the-script-block's-character-encoding">the script block's character
13979 character encoding given by <var><a href="#the-script-block's-character-encoding">the script block's character
13984 <dt>If the script is from an external file and <var><a href="#the-script-block's-type">the script block's type</a></var> is an XML-based language</dt>
13990 the specification defining the language given by <var><a href="#the-script-block's-type">the
13995 <dt>If the script is inline and <var><a href="#the-script-block's-type">the script block's type</a></var> is a text-based language</dt>
13999 <p>The value of the <code title=dom-script-text><a href=#dom-script-text>text</a></code>
14000 IDL attribute at the time the element's <a href=#already-started>"already
14005 <dt>If the script is inline and <var><a href="#the-script-block's-type">the script block's type</a></var> is an XML-based language</dt>
14009 <p>The child nodes of the <code><a href=#script>script</a></code> element at the
14010 time the element's <a href=#already-started>"already started"</a> flag was set
14019 <p><a href=#create-a-script-from-a-node title="create a script from a node">Create a
14020 script</a> from the <code><a href=#script>script</a></code> element node, using
14021 <var><a href="#the-script-block's-source">the script block's source</a></var> and <var><a href="#the-script-block's-type">the script
14031 <p>If the script is from an external file, <a href=#fire-a-simple-event>fire a simple
14033 <code><a href=#script>script</a></code> element.</p>
14035 <p>Otherwise, the script is internal; <a href=#queue-a-task>queue a task</a>
14036 to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load>load</code> at the <code><a href=#script>script</a></code>
14044 <a href=#reflect>reflect</a> the respective content attributes of the same
14049 <dl class=domintro><dt><var title="">script</var> . <code title=dom-script-text><a href=#dom-script-text>text</a></code> [ = <var title="">value</var> ]</dt>
14054 aren't <a href=#text-node title="text node">text nodes</a>.</p>
14064 concatenation of the contents of all the <a href=#text-node title="text
14066 <code><a href=#script>script</a></code> element (ignoring any other nodes such as
14068 same way as the <code><a href=#textcontent>textContent</a></code> IDL attribute.</p>
14072 <p class=note>When inserted using the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> method,
14073 <code><a href=#script>script</a></code> elements execute (typically synchronously), but
14074 when inserted using <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> and <code title=dom-outerHTML><a href=#dom-outerhtml>outerHTML</a></code> attributes, they do not
14079 <p>In this example, two <code><a href=#script>script</a></code> elements are used. One
14103 document. It also shows how a <code><a href=#script>script</a></code> element can be
14148 if <var><a href="#the-script-block's-type">the script block's type</a></var> is an <a href=#ascii-case-insensitive>ASCII
14149 case-insensitive</a> match for the <a href=#mime-type>MIME type</a> string
14154 <p>The following lists some <a href=#mime-type>MIME type</a> strings and the
14173 <dd>JavaScript. <a href=#refsECMA262>[ECMA262]</a></dd>
14176 <dd>JavaScript with ECMAScript for XML. <a href=#refsECMA357>[ECMA357]</a></dd>
14180 <p>User agents may support other <a href=#mime-type title="MIME type">MIME
14187 parameter for the purpose of comparing <a href=#mime-type title="MIME type">MIME
14195 <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#script>script</a></code> element must match the
14197 character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
14237 <p>When a <code><a href=#script>script</a></code> element contains <a href=#inline-documentation-for-external-scripts>script
14244 <p>If a <code><a href=#script>script</a></code> element's <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute is specified, then the
14245 contents of the <code><a href=#script>script</a></code> element, if any, must be such
14246 that the value of the <code title=dom-script-text><a href=#dom-script-text>text</a></code> IDL
14249 ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
14272 restrictions on the syntax of contents of <code><a href=#script>script</a></code>
14281 script while also providing a <code title=attr-script-src><a href=#attr-script-src>src</a></code> attribute.</p>
14298 <dd><a href=#metadata-content>Metadata content</a>.</dd>
14299 <dd><a href=#flow-content>Flow content</a>.</dd>
14300 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
14302 <dd>In a <code><a href=#the-head-element-0>head</a></code> element of an <a href=#html-documents title="HTML documents">HTML document</a>, if there are no ancestor <code><a href=#the-noscript-element>noscript</a></code> elements.</dd>
14303 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected in <a href=#html-documents>HTML documents</a>, if there are no ancestor <code><a href=#the-noscript-element>noscript</a></code> elements.</dd>
14305 <dd>When <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a>, in a <code><a href=#the-head-element-0>head</a></code> element: in any order, zero or more <code><a href=#the-link-element>link</a></code> elements, zero or more <code><a href=#the-style-element>style</a></code> elements, and zero or more <code><a href=#meta>meta</a></code> elements.</dd>
14306 <dd>When <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a>, not in a <code><a href=#the-head-element-0>head</a></code> element: <a href=#transparent>transparent</a>, but there must be no <code><a href=#the-noscript-element>noscript</a></code> element descendants.</dd>
14309 <dd><a href=#global-attributes>Global attributes</a></dd>
14311 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
14312 </dl><p>The <code><a href=#the-noscript-element>noscript</a></code> element <a href=#represents>represents</a> nothing
14313 if <a href=#concept-n-script title=concept-n-script>scripting is enabled</a>, and
14314 <a href=#represents>represents</a> its children if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a>. It is used
14319 <p>When used in <a href=#html-documents>HTML documents</a>, the allowed content
14322 <dl><dt>In a <code><a href=#the-head-element-0>head</a></code> element, if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
14323 <code><a href=#the-noscript-element>noscript</a></code> element</dt>
14325 <dd><p>The <code><a href=#the-noscript-element>noscript</a></code> element must contain only
14326 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-style-element>style</a></code>, and <code><a href=#meta>meta</a></code>
14329 <dt>In a <code><a href=#the-head-element-0>head</a></code> element, if <a href=#concept-n-script title=concept-n-script>scripting is enabled</a> for the
14330 <code><a href=#the-noscript-element>noscript</a></code> element</dt>
14332 <dd><p>The <code><a href=#the-noscript-element>noscript</a></code> element must contain only text,
14333 except that invoking the <a href=#html-fragment-parsing-algorithm>HTML fragment parsing
14335 the <code><a href=#the-noscript-element>noscript</a></code> element as the <var title="">context</var> element and the text contents as the <var title="">input</var> must result in a list of nodes that consists
14336 only of <code><a href=#the-link-element>link</a></code>, <code><a href=#the-style-element>style</a></code>, and
14337 <code><a href=#meta>meta</a></code> elements that would be conforming if they were
14338 children of the <code><a href=#the-noscript-element>noscript</a></code> element, and no <a href=#parse-error title="parse error">parse errors</a>.</dd>
14340 <dt>Outside of <code><a href=#the-head-element-0>head</a></code> elements, if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
14341 <code><a href=#the-noscript-element>noscript</a></code> element</dt>
14343 <dd><p>The <code><a href=#the-noscript-element>noscript</a></code> element's content model is
14344 <a href=#transparent>transparent</a>, with the additional restriction that a
14345 <code><a href=#the-noscript-element>noscript</a></code> element must not have a <code><a href=#the-noscript-element>noscript</a></code>
14346 element as an ancestor (that is, <code><a href=#the-noscript-element>noscript</a></code> can't be
14349 <dt>Outside of <code><a href=#the-head-element-0>head</a></code> elements, if <a href=#concept-n-script title=concept-n-script>scripting is enabled</a> for the
14350 <code><a href=#the-noscript-element>noscript</a></code> element</dt>
14354 <p>The <code><a href=#the-noscript-element>noscript</a></code> element must contain only text,
14357 <code><a href=#the-noscript-element>noscript</a></code> elements and no <code><a href=#script>script</a></code>
14359 <a href=#html-parser>HTML parser</a> to flag a <a href=#parse-error>parse error</a>:</p>
14361 <ol><li>Remove every <code><a href=#script>script</a></code> element from the
14364 <li>Make a list of every <code><a href=#the-noscript-element>noscript</a></code> element in the
14365 document. For every <code><a href=#the-noscript-element>noscript</a></code> element in that list,
14369 element of the <code><a href=#the-noscript-element>noscript</a></code> element.</li>
14372 that come before the <code><a href=#the-noscript-element>noscript</a></code> element, and call these
14376 that come <em>after</em> the <code><a href=#the-noscript-element>noscript</a></code> element, and
14380 <a href=#text-node>text node</a> children of the <code><a href=#the-noscript-element>noscript</a></code>
14383 <li>Set the <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code>
14386 <code><a href=#the-noscript-element>noscript</a></code> element to be removed from the
14402 historical reasons, the <code><a href=#the-noscript-element>noscript</a></code> element is handled
14403 differently by the <a href=#html-parser>HTML parser</a> based on whether <a href=#scripting-flag title="scripting flag">scripting was enabled or not</a> when the
14406 <p>The <code><a href=#the-noscript-element>noscript</a></code> element must not be used in <a href=#xml-documents>XML
14409 <p class=note><strong>The <code><a href=#the-noscript-element>noscript</a></code> element is only
14410 effective in <a href=#syntax>the HTML syntax</a>, it has no effect in
14411 <a href=#the-xhtml-syntax>the XHTML syntax</a>.</strong></p>
14415 <p>The <code><a href=#the-noscript-element>noscript</a></code> element has no other requirements. In
14416 particular, children of the <code><a href=#the-noscript-element>noscript</a></code> element are not
14417 exempt from <a href=#form-submission>form submission</a>, scripting, and so forth,
14418 even when <a href=#concept-n-script title=concept-n-script>scripting is enabled</a>
14425 <p>In the following example, a <code><a href=#the-noscript-element>noscript</a></code> element is
14453 <p>The <code><a href=#the-noscript-element>noscript</a></code> element is a blunt
14456 generally better to avoid using <code><a href=#the-noscript-element>noscript</a></code>, and to
14483 <code><a href=#the-noscript-element>noscript</a></code> is not supported in <a href=#the-xhtml-syntax>the XHTML
14495 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
14497 <dd>As the second element in an <code><a href=#the-html-element-0>html</a></code> element.</dd>
14499 <dd><a href=#flow-content>Flow content</a>.</dd>
14501 <dd><a href=#global-attributes>Global attributes</a></dd>
14502 <dd><code title=handler-window-onafterprint><a href=#handler-window-onafterprint>onafterprint</a></code></dd>
14503 <dd><code title=handler-window-onbeforeprint><a href=#handler-window-onbeforeprint>onbeforeprint</a></code></dd>
14504 <dd><code title=handler-window-onbeforeunload><a href=#handler-window-onbeforeunload>onbeforeunload</a></code></dd>
14505 <dd><code title=handler-window-onblur><a href=#handler-window-onblur>onblur</a></code></dd>
14506 <dd><code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code></dd>
14507 <dd><code title=handler-window-onfocus><a href=#handler-window-onfocus>onfocus</a></code></dd>
14508 <dd><code title=handler-window-onhashchange><a href=#handler-window-onhashchange>onhashchange</a></code></dd>
14509 <dd><code title=handler-window-onload><a href=#handler-window-onload>onload</a></code></dd>
14510 <dd><code title=handler-window-onmessage><a href=#handler-window-onmessage>onmessage</a></code></dd>
14511 <dd><code title=handler-window-onoffline><a href=#handler-window-onoffline>onoffline</a></code></dd>
14512 <dd><code title=handler-window-ononline><a href=#handler-window-ononline>ononline</a></code></dd>
14513 <dd><code title=handler-window-onpagehide><a href=#handler-window-onpagehide>onpagehide</a></code></dd>
14514 <dd><code title=handler-window-onpageshow><a href=#handler-window-onpageshow>onpageshow</a></code></dd>
14515 <dd><code title=handler-window-onpopstate><a href=#handler-window-onpopstate>onpopstate</a></code></dd>
14516 <dd><code title=handler-window-onredo><a href=#handler-window-onredo>onredo</a></code></dd>
14517 <dd><code title=handler-window-onresize><a href=#handler-window-onresize>onresize</a></code></dd>
14518 <dd><code title=handler-window-onstorage><a href=#handler-window-onstorage>onstorage</a></code></dd>
14519 <dd><code title=handler-window-onundo><a href=#handler-window-onundo>onundo</a></code></dd>
14520 <dd><code title=handler-window-onunload><a href=#handler-window-onunload>onunload</a></code></dd>
14523 <pre class=idl>interface <dfn id=htmlbodyelement>HTMLBodyElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
14524 attribute <a href=#function>Function</a> <a href=#handler-window-onafterprint title=handler-window-onafterprint>onafterprint</a>;
14525 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeprint title=handler-window-onbeforeprint>onbeforeprint</a>;
14526 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeunload title=handler-window-onbeforeunload>onbeforeunload</a>;
14527 attribute <a href=#function>Function</a> <a href=#handler-window-onblur title=handler-window-onblur>onblur</a>;
14528 attribute <a href=#function>Function</a> <a href=#handler-window-onerror title=handler-window-onerror>onerror</a>;
14529 attribute <a href=#function>Function</a> <a href=#handler-window-onfocus title=handler-window-onfocus>onfocus</a>;
14530 attribute <a href=#function>Function</a> <a href=#handler-window-onhashchange title=handler-window-onhashchange>onhashchange</a>;
14531 attribute <a href=#function>Function</a> <a href=#handler-window-onload title=handler-window-onload>onload</a>;
14532 attribute <a href=#function>Function</a> <a href=#handler-window-onmessage title=handler-window-onmessage>onmessage</a>;
14533 attribute <a href=#function>Function</a> <a href=#handler-window-onoffline title=handler-window-onoffline>onoffline</a>;
14534 attribute <a href=#function>Function</a> <a href=#handler-window-ononline title=handler-window-ononline>ononline</a>;
14535 attribute <a hrefhref=#handler-window-onpopstate title=handler-window-onpopstate>onpopstate</a>;
14536 attribute <a href=#function>Function</a> <a href=#handler-window-onpagehide title=handler-window-onpagehide>onpagehide</a>;
14537 attribute <a href=#function>Function</a> <a href=#handler-window-onpageshow title=handler-window-onpageshow>onpageshow</a>;
14538 attribute <a href=#function>Function</a> <a href=#handler-window-onredo title=handler-window-onredo>onredo</a>;
14539 attribute <a href=#function>Function</a> <a href=#handler-window-onresize title=handler-window-onresize>onresize</a>;
14540 attribute <a href=#function>Function</a> <a href=#handler-window-onstorage title=handler-window-onstorage>onstorage</a>;
14541 attribute <a href=#function>Function</a> <a href=#handler-window-onundo title=handler-window-onundo>onundo</a>;
14542 attribute <a href=#function>Function</a> <a href=#handler-window-onunload title=handler-window-onunload>onunload</a>;
14545 </dl><p>The <code><a href=#the-body-element-0>body</a></code> element <a href=#represents>represents</a> the main
14548 <p>In conforming documents, there is only one <code><a href=#the-body-element-0>body</a></code>
14549 element. The <code title=dom-document-body><a href=#dom-document-body>document.body</a></code>
14551 <code><a href=#the-body-element-0>body</a></code> element.</p>
14556 <a href=#dnd>drag and drop</a> model) are defined in terms of "<a href=#the-body-element>the
14559 <code><a href=#the-body-element-0>body</a></code> element.</p>
14563 <p>The <code><a href=#the-body-element-0>body</a></code> element exposes as <a href=#event-handler-content-attributes>event handler
14564 content attributes</a> a number of the <a href=#event-handlers>event
14565 handlers</a> of the <code><a href=#window>Window</a></code> object. It also mirrors
14566 their <a href=#event-handler-idl-attributes>event handler IDL attributes</a>.</p>
14568 <p>The <code title=handler-window-onblur><a href=#handler-window-onblur>onblur</a></code>, <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code>, <code title=handler-window-onfocus><a href=#handler-window-onfocus>onfocus</a></code>, and <code title=handler-window-onload><a href=#handler-window-onload>onload</a></code> <a href=#event-handlers>event
14569 handlers</a> of the <code><a href=#window>Window</a></code> object, exposed on the
14570 <code><a href=#the-body-element-0>body</a></code> element, shadow the generic <a href=#event-handlers>event
14571 handlers</a> with the same names normally supported by <a href=#html-elements>HTML
14574 <p class=example>Thus, for example, a bubbling <code title=event-error>error</code> event fired on a child of <a href=#the-body-element>the
14575 body element</a> of a <code><a href=#document>Document</a></code> would first trigger
14576 the <code title=handler-onerror><a href=#handler-onerror>onerror</a></code> <a href=#event-handler-content-attributes>event handler
14578 <code><a href=#the-html-element-0>html</a></code> element, and only <em>then</em> would it trigger
14579 the <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code> <a href=#event-handler-content-attributes title="event handler content attributes">event handler content
14580 attribute</a> on the <code><a href=#the-body-element-0>body</a></code> element. This is because
14581 the event would bubble from the target, to the <code><a href=#the-body-element-0>body</a></code>, to
14582 the <code><a href=#the-html-element-0>html</a></code>, to the <code><a href=#document>Document</a></code>, to the
14583 <code><a href=#window>Window</a></code>, and the <a href=#event-handlers title="event handlers">event
14584 handler</a> on the <code><a href=#the-body-element-0>body</a></code> is watching the
14585 <code><a href=#window>Window</a></code> not the <code><a href=#the-body-element-0>body</a></code>. A regular event
14586 listener attached to the <code><a href=#the-body-element-0>body</a></code> using <code title="">addEventListener()</code>, however, would fire when the
14587 event bubbled through the <code><a href=#the-body-element-0>body</a></code> and not when it reaches
14588 the <code><a href=#window>Window</a></code> object.</p>
14620 <dd><a href=#flow-content>Flow content</a>.</dd>
14621 <dd><a href=#sectioning-content>Sectioning content</a>.</dd>
14622 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
14624 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
14626 <dd><a href=#flow-content>Flow content</a>.</dd>
14628 <dd><a href=#global-attributes>Global attributes</a></dd>
14630 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
14631 </dl><p>The <code><a href=#the-section-element>section</a></code> element <a href=#represents>represents</a> a
14642 <code><a href=#the-article-element>article</a></code> element instead of the <code><a href=#the-section-element>section</a></code>
14646 <p class=note id=use-div-for-wrappers>The <code><a href=#the-section-element>section</a></code>
14649 authors are encouraged to use the <code><a href=#the-div-element>div</a></code> element
14650 instead. A general rule is that the <code><a href=#the-section-element>section</a></code> element is
14652 explicitly in the document's <a href=#outline>outline</a>.</p>
14677 <p>Notice how the use of <code><a href=#the-section-element>section</a></code> means that the author
14678 can use <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> elements throughout, without having to
14741 <dd><a href=#flow-content>Flow content</a>.</dd>
14742 <dd><a href=#sectioning-content>Sectioning content</a>.</dd>
14743 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
14745 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
14747 <dd><a href=#flow-content>Flow content</a>.</dd>
14749 <dd><a href=#global-attributes>Global attributes</a></dd>
14751 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
14752 </dl><p>The <code><a href=#the-nav-element>nav</a></code> element <a href=#represents>represents</a> a section of
14757 <code><a href=#the-nav-element>nav</a></code> element — only sections that consist of major
14758 navigation blocks are appropriate for the <code><a href=#the-nav-element>nav</a></code>
14762 <code><a href=#the-footer-element>footer</a></code> element alone is sufficient for such cases,
14763 without a <code><a href=#the-nav-element>nav</a></code> element.</p>
14781 <p><a href="news.html">News</a> -
14782 <a href="blog.html">Blog</a> -
14783 <a href="forums.html">Forums</a></p>
14788 <li><a href="articles.html">Index of all articles</a></li>
14789 <li><a href="today.html">Things sheeple need to wake up for today</a></li>
14790 <li><a href="successes.html">Sheeple we have managed to wake</a></li>
14811 <p><a href="about.html">About</a> -
14812 <a href="policy.html">Privacy Policy</a> -
14813 <a href="contact.html">Contact Us</a></p>
14817 <p>Notice the <code><a href=#the-div-element>div</a></code> elements being used to wrap all the
14825 <p>In the following example, there are two <code><a href=#the-nav-element>nav</a></code>
14833 <li><a href="/">Home</a></li>
14834 <li><a href="/events">Current Events</a></li>
14845 <li><a href="#public">Public demonstrations</a></li>
14846 <li><a href="#destroy">Demolitions</a></li>
14862 <p><a href="?edit">Edit</a> | <a href="?delete">Delete</a> | <a href="?Rename">Rename</a></p>
14876 <dd><a href=#flow-content>Flow content</a>.</dd>
14877 <dd><a href=#sectioning-content>Sectioning content</a>.</dd>
14878 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
14880 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
14882 <dd><a href=#flow-content>Flow content</a>.</dd>
14884 <dd><a href=#global-attributes>Global attributes</a></dd>
14886 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
14887 </dl><p>The <code><a href=#the-article-element>article</a></code> element <a href=#represents>represents</a> a
14895 <p>When <code><a href=#the-article-element>article</a></code> elements are nested, the inner
14896 <code><a href
14899 comments could represent the comments as <code><a href=#the-article-element>article</a></code>
14900 elements nested within the <code><a href=#the-article-element>article</a></code> element for the blog
14903 <p>Author information associated with an <code><a href=#the-article-element>article</a></code>
14904 element (q.v. the <code><a href=#the-address-element>address</a></code> element) does not apply to
14905 nested <code><a href=#the-article-element>article</a></code> elements.</p>
14908 redistributed in syndication, the <code><a href=#the-article-element>article</a></code> element is
14910 Atom. <a href=#refsATOM>[ATOM]</a>
14912 <p class=note>The <code><a href=#the-time-element>time</a></code> element's <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code> attribute can be used to
14913 provide the publication date for an <code><a href=#the-article-element>article</a></code>
14918 <p>This example shows a blog post using the <code><a href=#the-article-element>article</a></code>
14930 <a href="?comments=1">Show comments...</a>
14963 <p>Notice the use of <code><a href=#the-footer-element>footer</a></code> to give the information
14965 <code><a href=#the-footer-element>footer</a></code> element <em>can</em> appear at the start of its
14967 <code><a href=#the-header-element>header</a></code> in this case wouldn't be wrong either; it's
14978 <dd><a href=#flow-content>Flow content</a>.</dd>
14979 <dd><a href=#sectioning-content>Sectioning content</a>.</dd>
14980 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
14982 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
14984 <dd><a href=#flow-content>Flow content</a>.</dd>
14986 <dd><a href=#global-attributes>Global attributes</a></dd>
14988 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
14989 </dl><p>The <code><a href=#the-aside-element>aside</a></code> element <a href=#represents>represents</a> a section
14991 the content around the <code><a href=#the-aside-element>aside</a></code> element, and which could
14996 quotes or sidebars, for advertising, for groups of <code><a href=#the-nav-element>nav</a></code>
15000 <p class=note>It's not appropriate to use the <code><a href=#the-aside-element>aside</a></code>
15047 <p>The following extract shows how <code><a href=#the-aside-element>aside</a></code> can be used
15062 <li><a href="http://blog.example.com/">Example Blog</a>
15068 <li><a href="/last-post">My last post</a>
15069 <li><a href="/first-post">My first post</a>
15089 <p><a href="/last-post" rel=bookmark>Permalink</a>
15106 <p><a href="/first-post" rel=bookmark>Permalink</a>
15111 <a href="/archives">Archives</a> —
15112 <a href="/about">About me</a> —
15113 <a href="/copyright">Copyright</a>
15128 <dd><a href=#flow-content>Flow content</a>.</dd>
15129 <dd><a href=#heading-content>Heading content</a>.</dd>
15130 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
15132 <dd>As a child of an <code><a href=#the-hgroup-element>hgroup</a></code> element.</dd>
15133 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
15135 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
15137 <dd><a href=#global-attributes>Global attributes</a></dd>
15140 <pre class=idl>interface <dfn id=htmlheadingelement>HTMLHeadingElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
15142 </dl><p>These elements <a href=#represents title=represents>represent</a> headings
15146 section on <a href=#headings-and-sections>headings and sections</a>.</p>
15149 their name. The <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> element is said to have the highest
15150 rank, the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element has the lowest rank, and two
15193 <dd><a href=#flow-content>Flow content</a>.</dd>
15194 <dd><a href=#heading-content>Heading content</a>.</dd>
15195 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
15197 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
15199 <dd>One or more <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>, and/or <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements.</dd>
15201 <dd><a href=#global-attributes>Global attributes</a></dd>
15203 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
15204 </dl><p>The <code><a href=#the-hgroup-element>hgroup</a></code> element <a href=#represents>represents</a> the
15206 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements when the heading has
15211 the text of <code><a href=#the-hgroup-element>hgroup</a></code> elements is defined to be the text
15212 of the highest <a href=#rank title=rank>ranked</a>
15213 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element descendant of the
15214 <code><a href=#the-hgroup-element>hgroup</a></code> element, if there are any such elements, and the
15216 <a href=#rank>rank</a>. If there are no such elements, then the text of
15217 the <code><a href=#the-hgroup-element>hgroup</a></code> element is the empty string.</p>
15219 <p>Other elements of <a href=#heading-content>heading content</a> in the
15220 <code><a href=#the-hgroup-element>hgroup</a></code> element indicate subheadings or subtitles.</p>
15222 <p>The <a href=#rank>rank</a> of an <code><a href=#the-hgroup-element>hgroup</a></code> element is the
15223 rank of the highest-ranked <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>
15224 element descendant of the <code><a href=#the-hgroup-element>hgroup</a></code> element, if there are
15225 any such elements, or otherwise the same as for an <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>
15228 <p>The section on <a href=#headings-and-sections>headings and sections</a>
15229 defines how <code><a href=#the-hgroup-element>hgroup</a></code> elements are assigned to individual
15249 <p>The point of using <code><a href=#the-hgroup-element>hgroup</a></code> in these examples is to
15250 mask the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code> element (which acts as a secondary title)
15251 from the <a href=#outline>outline</a> algorithm.</p><!--
15261 <dd><a href=#flow-content>Flow content</a>.</dd>
15262 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
15264 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
15266 <dd><a href=#flow-content>Flow content</a>, but with no <code><a href=#the-header-element>header</a></code> or
15267 <code><a href=#the-footer-element>footer</a></code> element descendants.</dd>
15269 <dd><a href
15271 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
15272 </dl><p>The <code><a href=#the-header-element>header</a></code> element <a href=#represents>represents</a> a group
15275 <p class=note>A <code><a href=#the-header-element>header</a></code> element is intended to usually
15277 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element or an
15278 <code><a href=#the-hgroup-element>hgroup</a></code> element), but this is not required. The
15279 <code><a href=#the-header-element>header</a></code> element can also be used to wrap a section's
15301 <dd><a href="http://www.w3.org/TR/2004/WD-SVG12-20041027/">http://www.w3.org/TR/2004/WD-SVG12-20041027/</a></dd>
15303 <dd><a href="http://www.w3.org/TR/2004/WD-SVG12-20040510/">http://www.w3.org/TR/2004/WD-SVG12-20040510/</a></dd>
15305 <dd><a href="http://www.w3.org/TR/SVG12/">http://www.w3.org/TR/SVG12/</a></dd>
15307 <dd><a href="http://www.w3.org/TR/SVG/">http://www.w3.org/TR/SVG/</a></dd>
15309 <dd>Dean Jackson, W3C, <a href="mailto:dean@w3.org">dean@w3.org</a></dd>
15311 <dd>See <a href="#authors">Author List</a></dd>
15313 <p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notic <em>...</em>
15318 <p class=note>The <code><a href=#the-header-element>header</a></code> element is not
15319 <a href=#sectioning-content>sectioning content</a>; it doesn't introduce a new
15325 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> element, and two subsections whose headings are
15326 given by <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code> elements. The content after the
15327 <code><a href=#the-header-element>header</a></code> element is still part of the last subsection
15328 started in the <code><a href=#the-header-element>header</a></code> element, because the
15329 <code><a href=#the-header-element>header</a></code> element doesn't take part in the
15330 <a href=#outline>outline</a> algorithm.</p>
15337 <li><a href="/games">Games</a>
15338 <li><a href="/forum">Forum</a>
15339 <li><a href="/download">Download</a>
15359 <dd><a href=#flow-content>Flow content</a>.</dd>
15360 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
15362 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
15364 <dd><a href=#flow-content>Flow content</a>, but with no <code><a href=#the-header-element>header</a></code> or
15365 <code><a href=#the-footer-element>footer</a></code> element descendants.</dd>
15367 <dd><a href=#global-attributes>Global attributes</a></dd>
15369 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
15370 </dl><p>The <code><a href=#the-footer-element>footer</a></code> element <a href=#represents>represents</a> a footer
15371 for its nearest ancestor <a href=#sectioning-content>sectioning content</a> or
15372 <a href=#sectioning-root>sectioning root</a> element. A footer typically contains
15377 section belongs in an <code><a href=#the-address-element>address</a></code> element, possibly itself
15378 inside a <code><a href=#the-footer-element>footer</a></code>.</p>
15383 <p>When the <code><a href=#the-footer-element>footer</a></code> element contains entire sections,
15384 they <a href=#represents title=represents>represent</a> appendices, indexes,
15388 <p class=note>The <code><a href=#the-footer-element>footer</a></code> element is not
15389 <a href=#sectioning-content>sectioning content</a>; it doesn't introduce a new
15392 <p>When the nearest ancestor <a href=#sectioning-content>sectioning content</a> or
15393 <a href=#sectioning-root>sectioning root</a> element is <a href=#the-body-element>the body
15402 <footer><a href="../">Back to index...</a></footer>
15414 <footer><a href="../">Back to index...</a></footer>
15421 <p>Here is an example which shows the <code><a href=#the-footer-element>footer</a></code> element
15433 <P><A HREF="/fm/015.ogv">Download video</A>.</P>
15450 <P><A HREF="/credits.html">Credits</A> —
15451 <A HREF="/tos.html">Terms of Service</A> —
15452 <A HREF="/index.html">Blog Index</A></P>
15465 <dd><a href=#flow-content>Flow content</a>.</dd>
15466 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
15468 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
15470 <dd><a href=#flow-content>Flow content</a>, but with no <a href=#heading-content>heading
15471 content</a> descendants, no <a href=#sectioning-content>sectioning content</a>
15472 descendants, and no <code><a href=#the-header-element>header</a></code>, <code><a href=#the-footer-element>footer</a></code>, or
15473 <code><a href=#the-address-element>address</a></code> element descendants.</dd>
15475 <dd><a href=#global-attributes>Global attributes</a></dd>
15477 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
15478 </dl><p>The <code><a href=#the-address-element>address</a></code> element <a href=#represents>represents</a> the
15479 contact information for its nearest <code><a href=#the-article-element>article</a></code> or
15480 <code><a href=#the-body-element-0>body</a></code> element ancestor. If that is <a href=#the-body-element>the body
15488 <A href="../People/Raggett/">Dave Raggett</A>,
15489 <A href="../People/Arnaud/">Arnaud Le Hors</A>,
15490 contact persons for the <A href="Activity">W3C HTML Activity</A>
15494 <p>The <code><a href=#the-address-element>address</a></code> element must not be used to represent
15496 are in fact the relevant contact information. (The <code><a href=#the-p-element>p</a></code>
15500 <p>The <code><a href=#the-address-element>address</a></code> element must not contain information
15505 <code><a href=#the-address-element>address</a></code> element:</p>
15509 <p>Typically, the <code><a href=#the-address-element>address</a></code> element would be included
15510 along with other information in a <code><a href=#the-footer-element>footer</a></code> element.</p>
15515 collection of <code><a href=#the-address-element>address</a></code> elements defined by the first
15518 <dl class=switch><dt>If <var title="">node</var> is an <code><a href=#the-article-element>article</a></code> element</dt>
15519 <dt>If <var title="">node</var> is a <code><a href=#the-body-element-0>body</a></code> element</dt>
15524 <code><a href=#the-address-element>address</a></code> elements that have <var title="">node</var>
15525 as an ancestor and do not have another <code><a href=#the-body-element-0>body</a></code> or
15526 <code><a href=#the-article-element>article</a></code> element ancestor that is a descendant of <var title="">node</var>.</p>
15530 <dt>If <var title="">node</var> has an ancestor element that is an <code><a href=#the-article-element>article</a></code> element</dt>
15531 <dt>If <var title="">node</var> has an ancestor element that is a <code><a href=#the-body-element-0>body</a></code> element</dt>
15536 as the contact information of the nearest <code><a href=#the-article-element>article</a></code> or
15537 <code><a href=#the-body-element-0>body</a></code> element ancestor, whichever is nearest.</p>
15541 <dt>If <var title="">node</var>'s <code><a href=#document>Document</a></code> has <a href=#the-body-element title="the body element">a body element</a></dt>
15546 as the contact information <a href=#the-body-element>the body element</a> of the
15547 <code><a href=#document>Document</a></code>.</p>
15569 <p>The <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements and the
15570 <code><a href=#the-hgroup-element>hgroup</a></code> element are headings.</p>
15572 <p>The first element of <a href=#heading-content>heading content</a> in an element
15573 of <a href=#sectioning-content>sectioning content</a> <a href=#represents>represents</a> the
15575 <a href=#rank>rank</a> start new (implied) sections, headings of lower
15576 <a href=#rank>rank</a> start implied subsections that are part of the
15577 previous one. In both cases, the element <a href=#represents>represents</a> the
15581 root">sectioning roots</dfn>, including <code><a href=#the-blockquote-element>blockquote</a></code> and
15582 <code><a href=#the-td-element>td</a></code> elements. These elements can have their own
15587 <ul class="brief category-list"><li><code><a href=#the-blockquote-element>blockquote</a></code></li>
15588 <li><code><a href=#the-body-element-0>body</a></code></li>
15590 <li><code><a href=#the-details-element>details</a></code></li>
15591 <li><code><a href=#the-fieldset-element>fieldset</a></code></li>
15592 <li><code><a href=#the-figure-element>figure</a></code></li>
15593 <li><code><a href=#the-td-element>td</a></code></li>
15597 what their sectioning root is. --><p><a href=#sectioning-content>Sectioning content</a> elements are always considered
15598 subsections of their nearest ancestor <a href=#sectioning-root>sectioning root</a>
15599 or their nearest ancestor element of <a href=#sectioning-content>sectioning
15620 Foo (heading of explicit <code><a href=#the-body-element-0>body</a></code> section, containing the "Grunt" paragraph)
15628 Thud (heading of explicit <code><a href=#the-section-element>section</a></code> section)
15631 </ol><p>Notice how the <code><a href=#the-section-element>section</a></code> ends the earlier implicit
15636 <p>Sections may contain headings of any <a href=#rank>rank</a>, but
15637 authors are strongly encouraged to either use only <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>
15638 elements, or to use elements of the appropriate <a href=#rank>rank</a>
15642 elements of <a href=#sectioning-content>sectioning content</a>, instead of relying on
15644 element of <a href=#sectioning-content>sectioning content</a>.</p>
15696 <a href=#sectioning-content>sectioning content</a> element or a <a href=#sectioning-root>sectioning
15703 <p>The <dfn id=outline>outline</dfn> for a <a href=#sectioning-content>sectioning content</a>
15704 element or a <a href=#sectioning-root>sectioning root</a> element consists of a list
15705 of one or more potentially nested <a href=#concept-section title=concept-section>sections</a>. A <dfn id=concept-section title=concept-section>section</dfn> is a container that
15711 outline aren't <code><a href=#the-section-element>section</a></code> elements, though some may
15729 <code><a href=#the-body-element-0>body</a></code> node (and thus the entire document):</p>
15732 <p>Section created for <code><a href=#the-body-element-0>body</a></code> node.</p>
15737 <p>Section implied for first <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code> element.</p>
15743 <p>Section implied for second <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code> element.</p>
15754 subtree rooted at a <a href=#sectioning-content>sectioning content</a> element or a
15755 <a href=#sectioning-root>sectioning root</a> element to determine that element's
15756 <a href=#outline>outline</a> is as follows:</p>
15759 the element whose <a href=#outline>outline</a> is being created.)</li>
15762 pointer to a <a href=#concept-section title=concept-section>section</a>, so that
15770 <p>As you walk over the DOM in <a href=#tree-order>tree order</a>, trigger
15779 <p class=note>The element being exited is a <a href=#heading-content>heading
15787 <dt>If the top of the stack is a <a href=#heading-content>heading content</a>
15793 <dt>When entering a <a href=#sectioning-content>sectioning content</a> element or a
15794 <a href=#sectioning-root>sectioning root</a> element</dt>
15809 <a href=#concept-section title=concept-section>section</a> for the <var title="">current outlinee</var> element.</p>
15811 <p>Let there be a new <a href=#outline>outline</a> for the new <var title="">current outlinee</var>, initialized with just the new
15812 <var title="">current section</var> as the only <a href=#concept-section title=concept-section>section</a> in the outline.</p>
15817 <dt>When exiting a <a href=#sectioning-content>sectioning content</a> element, if
15825 in the <a href=#outline>outline</a> of the <var title="">current
15828 <p>Append the <a href=#outline>outline</a> of the <a href=#sectioning-content>sectioning
15831 section in the <a href=#outline>outline</a>.)</p>
15836 <dt>When exiting a <a href=#sectioning-root>sectioning root</a> element, if the
15846 section in the <a href=#outline>outline</a> of the <var title="">current
15853 child <a href=#concept-section title=concept-section>section</a> of the
15862 <dt>When exiting a <a href=#sectioning-content>sectioning content</a> element or a
15863 <a href=#sectioning-root>sectioning root</a> element</dt>
15870 <p>Let <var title="">current section</var> be the first <a href=#concept-section title=concept-section>section</a> in the
15871 <a href=#outline>outline</a> of the <var title="">current outlinee</var>
15885 <dt>When entering a <a href=#heading-content>heading content</a> element</dt>
15893 <a href=#rank>rank</a> equal to or greater than the heading of the
15894 last section of the <a href=#outline>outline</a> of the <var title="">current outlinee</var>, then create a new <a href=#concept-section title=concept-section>section</a> and append it to the
15895 <a href=#outline>outline</a> of the <var title="">current outlinee</var>
15905 <li><p>If the element being entered has a <a href=#rank>rank</a>
15906 lower than the <a href=#rank>rank</a> of the heading of the <var title="">candidate section</var>, then create a new <a href=#concept-section title=concept-section>section</a>, and append it to <var title="">candidate section</var>. (This does not change which
15911 <a href=#concept-section title=concept-section>section</a> that contains <var title="">candidate section</var> in the <a href=#outline>outline</a> of
15921 <p class=note>Recall that <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> has the
15922 <em>highest</em> rank, and <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> has the lowest
15934 section</var> is not null, associate the node with the <a href=#concept-section title=concept-section>section</a> <var title="">current
15940 then there was no <a href=#sectioning-content>sectioning content</a> element or
15941 <a href=#sectioning-root>sectioning root</a> element in the DOM. There is no
15942 <a href=#outline>outline</a>. Abort these steps.</li>
15944 <li><p>Associate any nodes that were not associated with a <a href=#concept-section title=concept-section>section</a> in the steps above with <var title="">current outlinee</var> as their section.</li>
15946 <li><p>Associate all nodes with the heading of the <a href=#concept-section title=concept-section>section</a> with which they are
15949 <li><p>If <var title="">current outlinee</var> is <a href=#the-body-element>the body
15951 <a href=#outline>outline</a> of the entire document.</li>
15958 jump the user to the relevant <a href=#sectioning-content>sectioning content</a>
15959 element, if the <a href=#concept-section title=concept-section>section</a> was
15961 relevant <a href=#heading-content>heading content</a> element, if the <a href=#concept-section title=concept-section>section</a> in the tree was generated for
15964 <p class=note>Selecting the first <a href=#concept-section title=concept-section>section</a> of the document therefore
15966 where the first heading in the <code><a href=#the-body-element-0>body</a></code> is to be found.</p>
15968 <p>The <dfn id=outline-depth>outline depth</dfn> of a <a href=#heading-content>heading content</a>
15969 element associated with a <a href=#concept-section title=concept-section>section</a> <var title="">section</var>
15970 is the number of <a href=#concept-section title=concept-section>sections</a> that
15972 <a href=#outline>outline</a> that <var title="">section</var> finds itself
15973 in when the <a href=#outline title=outline>outlines</a> of its
15974 <code><a href=#document>Document</a></code>'s elements are created, plus 1. The
15975 <a href=#outline-depth>outline depth</a> of a <a href=#heading-content>heading content</a> element
15976 not associated with a <a href=#concept-section title=concept-section>section</a>
15988 <p><a href="/">Home</a></p>
15997 sections: a document (the <code><a href=#the-body-element-0>body</a></code>) with two subsections
15998 (a <code><a href=#the-nav-element>nav</a></code> and an <code><a href=#the-aside-element>aside</a></code>). A user agent could
16017 the nodes as they are entered and exited. <a href=#refsECMA262>[ECMA262]</a></p>
16052 <dd><a href=#flow-content>Flow content</a>.</dd>
16053 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
16055 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16057 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
16059 <dd><a href=#global-attributes>Global attributes</a></dd>
16062 <pre class=idl>interface <dfn id=htmlparagraphelement>HTMLParagraphElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
16064 </dl><p>The <code><a href=#the-p-element>p</a></code> element <a href=#represents>represents</a> a
16065 <a href=#paragraph>paragraph</a>.</p>
16087 <p>The <code><a href=#the-p-element>p</a></code> element should not be used when a more
16124 <dd><a href=#flow-content>Flow content</a>.</dd>
16126 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16130 <dd><a href=#global-attributes>Global attributes</a></dd>
16133 <pre class=idl>interface <dfn id=htmlhrelement>HTMLHRElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
16135 </dl><p>The <code><a href=#the-hr-element>hr</a></code> element <a href=#represents>represents</a> a
16136 <a href=#paragraph>paragraph</a>-level thematic break, e.g. a scene change in
16143 sections that use the <code><a href=#the-hr-element>hr</a></code> element to separate topics
16181 <p>There is no need for an <code><a href=#the-hr-element>hr</a></code> element between the
16182 sections themselves, since the <code><a href=#the-section-element>section</a></code> elements and
16183 the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> elements imply thematic changes themselves.</p>
16194 <code><a href=#the-hr-element>hr</a></code> element.</p>
16219 <p class=note>The <code><a href=#the-hr-element>hr</a></code> element does not affect the
16220 document's <a href=#outline>outline</a>.</p>
16226 <dd><a href=#flow-content>Flow content</a>.</dd>
16227 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
16229 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16231 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
16233 <dd><a href=#global-attributes>Global attributes</a></dd>
16236 <pre class=idl>interface <dfn id=htmlpreelement>HTMLPreElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
16238 </dl><p>The <code><a href=#the-pre-element>pre</a></code> element <a href=#represents>represents</a> a block of
16242 <p class=note>In <a href=#syntax>the HTML syntax</a>, a leading
16243 newline character immediately following the <code><a href=#the-pre-element>pre</a></code> element
16246 <p>Some examples of cases where the <code><a href=#the-pre-element>pre</a></code> element could
16264 <p>To represent a block of computer code, the <code><a href=#the-pre-element>pre</a></code>
16265 element can be used with a <code><a href=#the-code-element>code</a></code> element; to represent a
16266 block of computer output the <code><a href=#the-pre-element>pre</a></code> element can be used
16267 with a <code><a href=#the-samp-element>samp</a></code> element. Similarly, the <code><a href=#the-kbd-element>kbd</a></code>
16268 element can be used within a <code><a href=#the-pre-element>pre</a></code> element to indicate
16287 <p>In the following snippet, <code><a href=#the-samp-element>samp</a></code> and <code><a href=#the-kbd-element>kbd</a></code>
16288 elements are mixed in the contents of a <code><a href=#the-pre-element>pre</a></code> element to
16307 <code><a href=#the-pre-element>pre</a></code> element to preserve its unusual formatting, which
16331 <dd><a href=#flow-content>Flow content</a>.</dd>
16332 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
16333 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
16335 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16337 <dd><a href=#flow-content>Flow content</a>.</dd>
16339 <dd><a href=#global-attributes>Global attributes</a></dd>
16340 <dd><code title=attr-blockquote-cite><a href=#attr-blockquote-cite>cite</a></code></dd>
16343 <pre class=idl>interface <dfn id=htmlquoteelement>HTMLQuoteElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
16344 attribute DOMString <a href=#dom-quote-cite title=dom-quote-cite>cite</a>;
16346 <p class=note>The <code><a href=#htmlquoteelement>HTMLQuoteElement</a></code> interface is
16347 also used by the <code><a href=#the-q-element>q</a></code> element.</p>
16349 </dl><p>The <code><a href=#the-blockquote-element>blockquote</a></code> element <a href=#represents>represents</a> a
16352 <p>Content inside a <code><a href=#the-blockquote-element>blockquote</a></code> must be quoted from
16357 <p>If the <code title=attr-blockquote-cite><a href=#attr-blockquote-cite>cite</a></code> attribute
16358 is present, it must be a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially surrounded by
16360 citation link, the value of the attribute must be <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the element. User
16366 attribute must <a href=#reflect>reflect</a> the element's <code title="">cite</code> content attribute.</p>
16372 <p>This next example shows the use of <code><a href=#the-cite-element>cite</a></code> alongside
16373 <code><a href=#the-blockquote-element>blockquote</a></code>:</p>
16386 <code><a href=#the-blockquote-element>blockquote</a></code> to show what post a user is replying
16387 to. The <code><a href=#the-article-element>article</a></code> element is used for each post, to mark
16391 <h1><a href="http://bacon.example.com/?blog=109431">Bacon on a crowbar</a></h1>
16395 <footer><a href="?pid=29578">permalink</a></footer>
16400 <footer><a href="?pid=29579">permalink</a></footer>
16409 <footer><a href="?pid=29580">permalink</a></footer>
16414 <footer><a href="?pid=29581">permalink</a></footer>
16423 <footer><a href="?pid=29582">permalink</a></footer>
16430 <p class=note><a href=#conversations>Examples of how to
16432 appropriate to use the <code><a href=#the-cite-element>cite</a></code> and <code><a href=#the-blockquote-element>blockquote</a></code>
16440 <dd><a href=#flow-content>Flow content</a>.</dd>
16442 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16444 <dd>Zero or more <code><a href=#the-li-element>li</a></code> elements.</dd>
16446 <dd><a href=#global-attributes>Global attributes</a></dd>
16447 <dd><code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code></dd>
16448 <dd><code title=attr-ol-start><a href=#attr-ol-start>start</a></code></dd>
16451 <pre class=idl>interface <dfn id=htmlolistelement>HTMLOListElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
16452 attribute boolean <a href=#dom-ol-reversed title=dom-ol-reversed>reversed</a>;
16453 attribute long <a href=#dom-ol-start title=dom-ol-start>start</a>;
16456 </dl><p>The <code><a href=#the-ol-element>ol</a></code> element <a href=#represents>represents</a> a list of
16460 <p>The items of the list are the <code><a href=#the-li-element>li</a></code> element child nodes
16461 of the <code><a href=#the-ol-element>ol</a></code> element, in <a href=#tree-order>tree order</a>.</p>
16464 attribute is a <a href=#boolean-attribute>boolean attribute</a>. If present, it
16470 attribute, if present, must be a <a href=#valid-integer>valid integer</a> giving
16475 <p>If the <code title=attr-ol-start><a href=#attr-ol-start>start</a></code> attribute is
16476 present, user agents must <a href=#rules-for-parsing-integers title="rules for parsing
16480 the referenced algorithm, is 1 if the element has no <code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code> attribute, and is the
16481 number of child <code><a href=#the-li-element>li</a></code> elements otherwise.</p>
16484 <code><a href=#the-ol-element>ol</a></code> element's <code title=attr-ol-start><a href=#attr-ol-start>start</a></code>
16485 attribute, unless that <code><a href=#the-li-element>li</a></code> element has a <code title=attr-li-value><a href=#attr-li-value>value</a></code> attribute with a value that can
16487 by that <code title=attr-li-value><a href=#attr-li-value>value</a></code> attribute.</p>
16490 its <code title=attr-li-value><a href=#attr-li-value>value</a></code> attribute, if it has
16492 one if the <code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code> is absent,
16496 attribute must <a href=#reflect>reflect</a> the value of the <code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code> content attribute.</p>
16499 attribute must <a href=#reflect>reflect</a> the value of the <code title=attr-ol-start><a href=#attr-ol-start>start</a></code> content attribute.</p>
16508 where the <code><a href=#the-ol-element>ol</a></code> element is therefore appropriate. Compare
16509 this list to the equivalent list in the <code><a href=#the-ul-element>ul</a></code> section to
16510 see an example of the same items using the <code><a href=#the-ul-element>ul</a></code>
16542 <dd><a href=#flow-content>Flow content</a>.</dd>
16544 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16546 <dd>Zero or more <code><a href=#the-li-element>li</a></code> elements.</dd>
16548 <dd><a href=#global-attributes>Global attributes</a></dd>
16551 <pre class=idl>interface <dfn id=htmlulistelement>HTMLUListElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
16553 </dl><p>The <code><a href=#the-ul-element>ul</a></code> element <a href=#represents>represents</a> a list of
16558 <p>The items of the list are the <code><a href=#the-li-element>li</a></code> element child nodes
16559 of the <code><a href=#the-ul-element>ul</a></code> element.</p>
16564 matter, and where the <code><a href=#the-ul-element>ul</a></code> element is therefore
16566 <code><a href=#the-ol-element>ol</a></code> section to see an example of the same items using
16567 the <code><a href=#the-ol-element>ol</a></code> element.</p>
16599 <dd>Inside <code><a href=#the-ol-element>ol</a></code> elements.</dd>
16600 <dd>Inside <code><a href=#the-ul-element>ul</a></code> elements.</dd>
16601 <dd>Inside <code><a href=#menus>menu</a></code> elements.</dd>
16603 <dd><a href=#flow-content>Flow content</a>.</dd>
16605 <dd><a href=#global-attributes>Global attributes</a></dd>
16606 <dd>If the element is a child of an <code><a href=#the-ol-element>ol</a></code> element: <code title=attr-li-value><a href=#attr-li-value>value</a></code></dd>
16609 <pre class=idl>interface <dfn id=htmllielement>HTMLLIElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
16610 attribute long <a href=#dom-li-value title=dom-li-value>value</a>;
16613 </dl><p>The <code><a href=#the-li-element>li</a></code> element <a href=#represents>represents</a> a list
16614 item. If its parent element is an <code><a href=#the-ol-element>ol</a></code>, <code><a href=#the-ul-element>ul</a></code>,
16615 or <code><a href=#menus>menu</a></code> element, then the element is an item of the
16618 <code><a href=#the-li-element>li</a></code> element.</p>
16621 attribute, if present, must be a <a href=#valid-integer>valid integer</a> giving
16626 <p>If the <code title=attr-li-value><a href=#attr-li-value>value</a></code> attribute is
16627 present, user agents must <a href=#rules-for-parsing-integers title="rules for parsing
16633 <p>The <code title=attr-li-value><a href=#attr-li-value>value</a></code> attribute is
16634 processed relative to the element's parent <code><a href=#the-ol-element>ol</a></code> element
16639 attribute must <a href=#reflect>reflect</a> the value of the <code title=dom-li-value><a href=#dom-li-value>value</a></code> content attribute.</p>
16646 <code><a href=#the-figure-element>figure</a></code> element and its <code><a href=#the-figcaption-element>figcaption</a></code>
16664 <p>The markup could also be written as follows, using the <code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code> attribute on the
16665 <code><a href=#the-ol-element>ol</a></code> element:</p>
16684 <p class=note>If the <code><a href=#the-li-element>li</a></code> element is the child of a
16685 <code><a href=#menus>menu</a></code> element and itself has a child that defines a
16686 <a href=#concept-command title=concept-command>command</a>, then the
16687 <code><a href=#the-li-element>li</a></code> element will match the <code title=selector-enabled><a href=#selector-enabled>:enabled</a></code> and <code title=selector-disabled><a href=#selector-disabled>:disabled</a></code> pseudo-classes in the
16695 <dd><a href=#flow-content>Flow content</a>.</dd>
16697 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16700 <code><a href=#the-dt-element>dt</a></code> elements followed by one or more <code><a href=#the-dd-element>dd</a></code>
16703 <dd><a href=#global-attributes>Global attributes</a></dd>
16706 <pre class=idl>interface <dfn id=htmldlistelement>HTMLDListElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
16708 </dl><p>The <code><a href=#the-dl-element>dl</a></code> element <a href=#represents>represents</a> an
16711 (<code><a href=#the-dt-element>dt</a></code> elements) followed by one or more values
16712 (<code><a href=#the-dd-element>dd</a></code> elements). Within a single <code><a href=#the-dl-element>dl</a></code> element,
16713 there should not be more than one <code><a href=#the-dt-element>dt</a></code> element for each
16721 <code><a href=#the-dd-element>dd</a></code> element.</p>
16728 <p>If a <code><a href
16730 <p>If a <code><a href=#the-dl-element>dl</a></code> element contains non-<a href=#inter-element-whitespace title="inter-element whitespace">whitespace</a> <a href=#text-node title="text
16731 node">text nodes</a>, or elements other than <code><a href=#the-dt-element>dt</a></code> and
16732 <code><a href=#the-dd-element>dd</a></code>, then those elements or <a href=#text-node title="text node">text
16734 <code><a href=#the-dl-element>dl</a></code>.</p>
16736 <p>If a <code><a href=#the-dl-element>dl</a></code> element contains only <code><a href=#the-dt-element>dt</a></code>
16740 <p>If a <code><a href=#the-dl-element>dl</a></code> element contains only <code><a href=#the-dd-element>dd</a></code>
16744 <p>If a <code><a href=#the-dl-element>dl</a></code> element starts with one or more
16745 <code><a href=#the-dd-element>dd</a></code> elements, then the first group has no associated
16748 <p>If a <code><a href=#the-dl-element>dl</a></code> element ends with one or more
16749 <code><a href=#the-dt-element>dt</a></code> elements, then the last group has no associated
16752 <p class=note>When a <code><a href=#the-dl-element>dl</a></code> element doesn't match its
16753 content model, it is often due to accidentally using <code><a href=#the-dd-element>dd</a></code>
16754 elements in the place of <code><a href=#the-dt-element>dt</a></code> elements and vice
16785 <p>The following example illustrates the use of the <code><a href=#the-dl-element>dl</a></code>
16803 <p>The following example shows the <code><a href=#the-dl-element>dl</a></code> element used to
16823 <p>The following snippet shows a <code><a href=#the-dl-element>dl</a></code> element being used
16824 as a glossary. Note the use of <code><a href=#the-dfn-element>dfn</a></code> to indicate the
16837 <p class=note>The <code><a href=#the-dl-element>dl</a></code> element is inappropriate for
16838 marking up dialogue. <a href=#conversations>Examples of how to
16848 <dd>Before <code><a href=#the-dd-element>dd</a></code> or <code><a href=#the-dt-element>dt</a></code> elements inside <code><a href=#the-dl-element>dl</a></code> elements.</dd>
16850 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
16852 <dd><a href=#global-attributes>Global attributes</a></dd>
16854 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
16855 </dl><p>The <code><a href=#the-dt-element>dt</a></code> element <a href=#represents>represents</a> the term, or
16857 (<code><a href=#the-dl-element>dl</a></code> element).</p>
16859 <p class=note>The <code><a href=#the-dt-element>dt</a></code> element itself, when used in a
16860 <code><a href=#the-dl-element>dl</a></code> element, does not indicate that its contents are a
16862 <code><a href=#the-dfn-element>dfn</a></code> element.</p>
16867 marked up using the <code><a href=#the-dt-element>dt</a></code> element for questions and the
16868 <code><a href=#the-dd-element>dd</a></code> element for answers.</p>
16891 <dd>After <code><a href=#the-dt-element>dt</a></code> or <code><a href=#the-dd-element>dd</a></code> elements inside <code><a href=#the-dl-element>dl</a></code> elements.</dd>
16893 <dd><a href=#flow-content>Flow content</a>.</dd>
16895 <dd><a href=#global-attributes>Global attributes</a></dd>
16897 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
16898 </dl><p>The <code><a href=#the-dd-element>dd</a></code> element <a href=#represents>represents</a> the
16900 in a description list (<code><a href=#the-dl-element>dl</a></code> element).</p>
16904 <p>A <code><a href=#the-dl-element>dl</a></code> can be used to define a vocabulary list, like
16906 <code><a href=#the-dt-element>dt</a></code> with a <code><a href=#the-dfn-element>dfn</a></code>, has several
16907 <code><a href=#the-dd-element>dd</a></code>s, showing the various parts of the definition.</p>
16927 <dd><a href=#flow-content>Flow content</a>.</dd>
16928 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
16930 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
16932 <dd>Either: One <code><a href=#the-figcaption-element>figcaption</a></code> element followed by <a href=#flow-content>flow content</a>.</dd>
16933 <dd>Or: <a href=#flow-content>Flow content</a> followed by one <code><a href=#the-figcaption-element>figcaption</a></code> element.</dd>
16934 <dd>Or: <a href=#flow-content>Flow content</a>.</dd>
16936 <dd><a href=#global-attributes>Global attributes</a></dd>
16938 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
16939 </dl><!-- v2: Add a <credit> element for photo credits --><p>The <code><a href=#the-figure-element>figure</a></code> element <a href=#represents>represents</a> some
16940 <a href=#flow-content>flow content</a>, optionally with a caption, that is
16950 <p>The <span class=impl>first</span> <code><a href=#the-figcaption-element>figcaption</a></code>
16952 <code><a href=#the-figure-element>figure</a></code> element's contents. If there is no child
16953 <code><a href=#the-figcaption-element>figcaption</a></code> element, then there is no caption.</p>
16957 <p>This example shows the <code><a href=#the-figure-element>figure</a></code> element to mark up a
16960 <pre><p>In <a href="#l4">listing 4</a> we see the primary core interface
16976 <p>Here we see a <code><a href=#the-figure-element>figure</a></code> element to mark up a
17024 <code><a href=#the-figure-element>figure</a></code>.</p>
17059 <dd>As the first or last child of a <code><a href=#the-figure-element>figure</a></code> element.</dd>
17061 <dd><a href=#flow-content>Flow content</a>.</dd>
17063 <dd><a href=#global-attributes>Global attributes</a></dd>
17065 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17066 </dl><p>The <code><a href=#the-figcaption-element>figcaption</a></code> element <a href=#represents>represents</a> a
17068 <code><a href=#the-figcaption-element>figcaption</a></code> element's parent <code><a href=#the-figure-element>figure</a></code>
17076 <dd><a href=#flow-content>Flow content</a>.</dd>
17077 <dd><a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>.</dd>
17079 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
17081 <dd><a href=#flow-content>Flow content</a>.</dd>
17083 <dd><a href=#global-attributes>Global attributes</a></dd>
17086 <pre class=idl>interface <dfn id=htmldivelement>HTMLDivElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
17088 </dl><p>The <code><a href=#the-div-element>div</a></code> element has no special meaning at all. It
17089 <a href=#represents>represents</a> its children. It can be used with the <code title=attr-class><a href=#classes>class</a></code>, <code title=attr-lang><a href=#attr-lang>lang</a></code>, and <code title=attr-title><a href=#the-title-attribute>title</a></code> attributes to mark up semantics
17093 <code><a href=#the-div-element>div</a></code> element as an element of last resort, for when no
17094 other element is suitable. Use of the <code><a href=#the-div-element>div</a></code> element
17101 <code><a href=#the-article-element>article</a></code>, a chapter using <code><a href=#the-section-element>section</a></code>, a
17102 page's navigation aids using <code><a href=#the-nav-element>nav</a></code>, and a group of form
17103 controls using <code><a href=#the-fieldset-element>fieldset</a></code>.</p>
17105 <p>On the other hand, <code><a href=#the-div-element>div</a></code> elements can be useful for
17108 example, we see <code><a href=#the-div-element>div</a></code> elements used as a way to set the
17137 <dd><a href=#flow-content>Flow content</a>.</dd>
17138 <dd>When the element only contains <a href=#phrasing-content>phrasing content</a>: <a href=#phrasing-content>phrasing content</a>.</dd>
17139 <dd><a href=#interactive-content>Interactive content</a>.</dd>
17141 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17143 <dd><a href=#transparent>Transparent</a>, but there must be no <a href=#interactive-content>interactive content</a> descendant.</dd>
17145 <dd><a href=#global-attributes>Global attributes</a></dd>
17146 <dd><code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code></dd>
17147 <dd><code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code></dd>
17149 <dd><code title=attr-hyperlink-ping><a href=#ping>ping</a></code></dd>
17151 <dd><code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code></dd>
17152 <dd><code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code></dd>
17153 <dd><code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code></dd>
17154 <dd><code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code></dd>
17157 <pre class=idl>interface <dfn id=htmlanchorelement>HTMLAnchorElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
17158 stringifier attribute DOMString <a href=#dom-a-href title=dom-a-href>href</a>;
17159 attribute DOMString <a href=#dom-a-target title=dom-a-target>target</a>;
17161 attribute DOMString <a href=#dom-a-ping title=dom-a-ping>ping</a>;
17163 attribute DOMString <a href=#dom-a-rel title=dom-a-rel>rel</a>;
17164 readonly attribute <a href=#domtokenlist>DOMTokenList</a> <a href=#dom-a-rellist title=dom-a-relList>relList</a>;
17165 attribute DOMString <a href=#dom-a-media title=dom-a-media>media</a>;
17166 attribute DOMString <a href=#dom-a-hreflang title=dom-a-hreflang>hreflang</a>;
17167 attribute DOMString <a href=#dom-a-type title=dom-a-type>type</a>;
17169 attribute DOMString <a href=#dom-a-text title=dom-a-text>text</a>;
17171 // <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a>
17172 attribute DOMString <a href=#dom-a-protocol title=dom-a-protocol>protocol</a>;
17173 attribute DOMString <a href=#dom-a-host title=dom-a-host>host</a>;
17174 attribute DOMString <a href=#dom-a-hostname title=dom-a-hostname>hostname</a>;
17175 attribute DOMString <a href=#dom-a-port title=dom-a-port>port</a>;
17176 attribute DOMString <a href=#dom-a-pathname title=dom-a-pathname>pathname</a>;
17177 attribute DOMString <a href=#dom-a-search title=dom-a-search>search</a>;
17178 attribute DOMString <a href=#dom-a-hash title=dom-a-hash>hash</a>;
17181 </dl><p>If the <code><a href=#the-a-element>a</a></code> element has an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, then it
17182 <a href=#represents>represents</a> a <a href=#hyperlink>hyperlink</a> (a hypertext
17191 <p>If the <code><a href=#the-a-element>a</a></code> element has no <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, then the element
17192 <a href=#represents>represents</a> a placeholder for where a link might
17195 <p>The <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>,
17197 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>,
17199 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>, <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes must be omitted
17200 if the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute is
17206 marked up using an <code><a href=#the-a-element>a</a></code> element:</p>
17209 <li> <a href="/">Home</a> </li>
17210 <li> <a href="/news">News</a> </li>
17212 <li> <a href="/legal">Legal</a> </li>
17219 <p>The <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>, <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>
17221 and <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>
17224 happens when users <a href=#following-hyperlinks title="following hyperlinks">follow
17225 hyperlinks</a> created using the <code><a href=#the-a-element>a</a></code> element. The
17226 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>, <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes may be used to
17230 <p>The <a href=#activation-behavior>activation behavior</a> of <code><a href=#the-a-element>a</a></code> elements
17231 that represent <a href=#hyperlink title=hyperlink>hyperlinks</a> is to run
17234 <ol><li><p>If the <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code>
17235 event in question is not <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> (i.e. a <code title=dom-click><a href=#dom-click>click()</a></code> method call was the reason for the
17236 event being dispatched), and the <code><a href=#the-a-element>a</a></code> element's <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute is such that
17237 applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a
17238 browsing context name</a>, using the value of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute as the
17240 browsing context, then raise an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code>
17243 <li><p>If the target of the <code title=event-click><a href=#event-click>click</a></code>
17244 event is an <code><a href=#the-img-element>img</a></code> element with an <code title=attr-img-ismap><a href=#attr-img-ismap>ismap</a></code> attribute specified, then
17247 <ol><!-- http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A...%3Ca%20href%3D%22%23%22%3E%3Cimg%20ismap%20usemap%3D%22%23a%22%20src%3D/resources/images/smallcats%3E%3C/a%3E%0A%3Cmap%20name%3Da%3E%3Carea%20shape%3Drect%20coords%3D0%2C0%2C50%2C50%20href%3Db%3E%3C/map%3E --><li>If the <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code>
17249 pointing-device-triggered <code title=event-click><a href=#event-click>click</a></code>
17250 event on the <code><a href=#the-img-element>img</a></code> element, then let <var title="">x</var> be the distance in CSS pixels from the left edge
17267 <li><p>Finally, the user agent must <a href=#following-hyperlinks title="following
17269 <code><a href=#the-a-element>a</a></code> element. If the steps above defined a <var><a href=#hyperlink-suffix>hyperlink
17275 <dl class=domintro><dt><var title="">a</var> . <code title=dom-a-text><a href=#dom-a-text>text</a></code></dt>
17279 <p>Same as <code><a href=#textcontent>textContent</a></code>.</p>
17285 <p>The IDL attributes <dfn id=dom-a-href title=dom-a-href><code>href</code></dfn>,
17290 <a href=#reflect>reflect</a> the respective content attributes of the same
17294 <a href=#reflect>reflect</a> the <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>
17299 <code><a href=#textcontent>textContent</a></code> IDL attribute on the element, and on
17300 setting, must act as if the <code><a href=#textcontent>textContent</a></code> IDL attribute
17303 <p>The <code><a href=#the-a-element>a</a></code> element also supports the complement of
17304 <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a>, <dfn id=dom-a-protocol title=dom-a-protocol><code>protocol</code></dfn>, <dfn id=dom-a-host title=dom-a-host><code>host</code></dfn>, <dfn id=dom-a-port title=dom-a-port><code>port</code></dfn>, <dfn id=dom-a-hostname title=dom-a-hostname><code>hostname</code></dfn>, <dfn id=dom-a-pathname title=dom-a-pathname><code>pathname</code></dfn>, <dfn id=dom-a-search title=dom-a-search><code>search</code></dfn>, and <dfn id=dom-a-hash title=dom-a-hash><code>hash</code></dfn>. These must follow the
17305 rules given for URL decomposition IDL attributes, with the <a href=#concept-uda-input title=concept-uda-input>input</a> being the result of <a href=#resolve-a-url title="resolve a url">resolving</a> the element's <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute relative to the
17307 successful, or the empty string otherwise; and the <a href=#concept-uda-setter title=concept-uda-setter>common setter action</a> being the
17308 same as setting the element's <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute to the new output
17315 <p>The <code><a href=#the-a-element>a</a></code> element may be wrapped around entire
17323 <a href="http://ad.example.com/?adid=1929&amp;pubid=1422">
17330 <a href="http://ad.example.com/?adid=375&amp;pubid=1422">
17345 <dd><a href=#flow-content>Flow content</a>.</dd>
17346 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17348 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17350 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17352 <dd><a href=#global-attributes>Global attributes</a></dd>
17354 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17355 </dl><p>The <code><a href=#the-em-element>em</a></code> element <a href=#represents>represents</a> stress
17359 given by its number of ancestor <code><a href=#the-em-element>em</a></code> elements.</p>
17412 <p>The <code><a href=#the-em-element>em</a></code> element isn't a generic "italics"
17415 the <code><a href=#the-i-element>i</a></code> element is more appropriate.</p>
17417 <p>The <code><a href=#the-em-element>em</a></code> element also isn't intended to convey
17418 importance; for that purpose, the <code><a href=#the-strong-element>strong</a></code> element is
17439 <dd><a href=#flow-content>Flow content</a>.</dd>
17440 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17442 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17444 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17446 <dd><a href=#global-attributes>Global attributes</a></dd>
17448 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17449 </dl><p>The <code><a href=#the-strong-element>strong</a></code> element <a href=#represents>represents</a> strong
17453 by its number of ancestor <code><a href=#the-strong-element>strong</a></code> elements; each
17454 <code><a href=#the-strong-element>strong</a></code> element increases the importance of its
17458 <code><a href=#the-strong-element>strong</a></code> element does not change the meaning of the
17476 <dd><a href=#flow-content>Flow content</a>.</dd>
17477 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17479 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17481 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17483 <dd><a href=#global-attributes>Global attributes</a></dd>
17485 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17486 </dl><p>The <code><a href=#the-small-element>small</a></code> element <a href=#represents>represents</a> side
17493 <p class=note>The <code><a href=#the-small-element>small</a></code> element does not
17495 <code><a href=#the-em-element>em</a></code> element or marked as important with the
17496 <code><a href=#the-strong-element>strong</a></code> element. To mark text as not emphasized or
17497 important, simply do not mark it up with the <code><a href=#the-em-element>em</a></code> or
17498 <code><a href=#the-strong-element>strong</a></code> elements respectively.</p>
17500 <p>The <code><a href=#the-small-element>small</a></code> element should not be used for extended
17504 candidate for the <code><a href=#the-small-element>small</a></code> element: in such a case, the
17515 <a href="mailto:js@example.com">John Smith</a>.
17524 <p>In this second example, the <code><a href=#the-small-element>small</a></code> element is used
17545 href="http://example.com/about.html">example.com</a> home
17553 <p>In this last example, the <code><a href=#the-small-element>small</a></code> element is marked
17564 <dd><a href=#flow-content>Flow content</a>.</dd>
17565 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17567 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17569 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17571 <dd><a href=#global-attributes>Global attributes</a></dd>
17573 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17574 </dl><p>The <code><a href=#the-cite-element>cite</a></code> element <a href=#represents>represents</a> the title
17601 <code><a href=#the-b-element>b</a></code> element might be appropriate for names; e.g. in a
17605 <code><a href=#the-span-element>span</a></code> element can be used.)</p>
17615 <p>This next example shows a typical use of the <code><a href=#the-cite-element>cite</a></code>
17634 <code><a href=#the-cite-element>cite</a></code> element here is containing far more than the
17646 <p>The <code><a href=#the-cite-element>cite</a></code> element is obviously a key part of any
17656 which the <code><a href=#the-q-element>q</a></code> element is appropriate).</p>
17660 <p>This is incorrect usage, because <code><a href=#the-cite-element>cite</a></code> is not for
17670 <p>The correct usage does not use a <code><a href=#the-cite-element>cite</a></code> element:</p>
17674 <p>As mentioned above, the <code><a href=#the-b-element>b</a></code> element might be relevant
17688 <dd><a href=#flow-content>Flow content</a>.</dd>
17689 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17691 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17693 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17695 <dd><a href=#global-attributes>Global attributes</a></dd>
17696 <dd><code title=attr-q-cite><a href=#attr-q-cite>cite</a></code></dd>
17698 <dd>Uses <code><a href=#htmlquoteelement>HTMLQuoteElement</a></code>.</dd>
17699 </dl><p>The <code><a href=#the-q-element>q</a></code> element <a href=#represents>represents</a> some <a href=#phrasing-content title="phrasing content">phrasing content</a> quoted from another
17704 after, or inside <code><a href=#the-q-element>q</a></code> elements; they will be inserted into
17707 <p>Content inside a <code><a href=#the-q-element>q</a></code> element must be quoted from
17713 <p>If the <code title=attr-q-cite><a href=#attr-q-cite>cite</a></code> attribute is
17714 present, it must be a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially surrounded by
17716 citation link, the value of the attribute must be <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the element. User
17719 <p>The <code><a href=#the-q-element>q</a></code> element must not be used in place of quotation
17721 to use the <code><a href=#the-q-element>q</a></code> element for marking up sarcastic
17724 <p>The use of <code><a href=#the-q-element>q</a></code> elements to mark up quotations is
17726 <code><a href=#the-q-element>q</a></code> elements is just as correct.</p>
17730 <p>Here is a simple example of the use of the <code><a href=#the-q-element>q</a></code>
17741 <code><a href=#the-q-element>q</a></code> element, and an explicit citation outside:</p>
17765 the <code><a href=#the-q-element>q</a></code> element:</p>
17775 quotation marks are used to name a word. Use of the <code><a href=#the-q-element>q</a></code>
17787 <dd><a href=#flow-content>Flow content</a>.</dd>
17788 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17790 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17792 <dd><a href=#phrasing-content>Phrasing content</a>, but there must be no <code><a href=#the-dfn-element>dfn</a></code> element descendants.</dd>
17794 <dd><a href=#global-attributes>Global attributes</a></dd>
17795 <dd>Also, the <code title=attr-dfn-title><a href=#attr-dfn-title>title</a></code> attribute has special semantics on this element.</dd>
17797 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17798 </dl><p>The <code><a href=#the-dfn-element>dfn</a></code> element <a href=#represents>represents</a> the defining
17799 instance of a term. The <a href=#paragraph title=paragraph>paragraph</a>,
17800 <a href=#the-dl-element title=dl>description list group</a>, or <a href=#sectioning-content title="sectioning content">section</a> that is the nearest
17801 ancestor of the <code><a href=#the-dfn-element>dfn</a></code> element must also contain the
17802 definition(s) for the <a href=#defining-term title="defining term">term</a> given
17803 by the <code><a href=#the-dfn-element>dfn</a></code> element.</p>
17805 <p><dfn id=defining-term>Defining term</dfn>: If the <code><a href=#the-dfn-element>dfn</a></code> element has a
17809 child <a href=#text-node title="text node">text nodes</a>, and that child
17810 element is an <code><a href=#the-abbr-element>abbr</a></code> element with a <code title=attr-abbr-title><a href=#attr-abbr-title>title</a></code> attribute, then the exact value
17812 is the exact <code><a href=#textcontent>textContent</a></code> of the <code><a href=#the-dfn-element>dfn</a></code>
17817 <p>If the <code title=attr-dfn-title><a href=#attr-dfn-title>title</a></code> attribute of the
17818 <code><a href=#the-dfn-element>dfn</a></code> element is present, then it must contain only the
17821 <p class=note>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
17822 of ancestor elements does not affect <code><a href=#the-dfn-element>dfn</a></code> elements.</p>
17824 <p>An <code><a href=#the-a-element>a</a></code> element that links to a <code><a href=#the-dfn-element>dfn</a></code>
17826 <code><a href=#the-dfn-element>dfn</a></code> element.</p>
17839 <p>With the addition of an <code><a href=#the-a-element>a</a></code> element, the reference
17845 <p>Teal'c activated his <a href=#gdo><abbr title="Garage Door Opener">GDO</abbr></a>
17855 <dd><a href=#flow-content>Flow content</a>.</dd>
17856 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17858 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17860 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17862 <dd><a href=#global-attributes>Global attributes</a></dd>
17863 <dd>Also, the <code title=attr-abbr-title><a href=#attr-abbr-title>title</a></code> attribute has special semantics on this element.</dd>
17865 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
17866 </dl><p>The <code><a href=#the-abbr-element>abbr</a></code> element <a href=#represents>represents</a> an
17874 <code><a href=#the-abbr-element>abbr</a></code> element. This paragraph <a href=#defining-term title="defining
17896 use the <code><a href=#the-abbr-element>abbr</a></code> element.</p>
17904 <pre><p>The <a href="#whatwg"><abbr
17944 where using the <code><a href=#the-abbr-element>abbr</a></code> element with a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute is an alternative to
17949 up the abbreviation using a <code><a href=#the-abbr-element>abbr</a></code> element with a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute or include the expansion
17954 and given specific styles, for which the <code><a href=#the-abbr-element>abbr</a></code> element
17955 can be used without a <code title=attr-title><a href=#the-title-attribute>title</a></code>
17958 </ul><p title=note>Providing an expansion in a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute once will not necessarily
17959 cause other <code><a href=#the-abbr-element>abbr</a></code> elements in the same document with the
17960 same contents but without a <code title=attr-title><a href=#the-title-attribute>title</a></code>
17962 <code><a href=#the-abbr-element>abbr</a></code> element is independent.</p>
17970 <dd><a href=#flow-content>Flow content</a>.</dd>
17971 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
17973 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
17975 <dd><a href=#phrasing-content>Phrasing content</a>, but there must be no <code><a href=#the-time-element>time</a></code> element descendants.</dd>
17977 <dd><a href=#global-attributes>Global attributes</a></dd>
17978 <dd><code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code></dd>
17979 <dd><code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code></dd>
17982 <pre class=idl>interface <dfn id=htmltimeelement>HTMLTimeElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
17983 attribute DOMString <a href=#dom-time-datetime title=dom-time-datetime>dateTime</a>;
17984 attribute boolean <a href=#dom-time-pubdate title=dom-time-pubDate>pubDate</a>;
17985 readonly attribute <span>Date</span> <a href=#dom-time-valueasdate title=dom-time-valueAsDate>valueAsDate</a>;
17988 </dl><p>The <code><a href=#the-time-element>time</a></code> element <a href=#represents>represents</a> either a
17991 offset. <a href=#refsGREGORIAN>[GREGORIAN]</a></p>
18004 <p>The <code><a href=#the-time-element>time</a></code> element is not intended for encoding times
18011 authors are encouraged to not use the <code><a href=#the-time-element>time</a></code> element, or
18021 attribute is a <a href=#boolean-attribute>boolean attribute</a>. If specified, it
18024 <code><a href=#the-article-element>article</a></code> element, or, if the element has no ancestor
18025 <code><a href=#the-article-element>article</a></code> element, of the document as a whole. If the
18026 element has a <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code>
18028 each <code><a href=#the-article-element>article</a></code> element, there must no more than one
18029 <code><a href=#the-time-element>time</a></code> element with a <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code> attribute whose nearest
18030 ancestor is that <code><a href=#the-article-element>article</a></code> element. Furthermore, for each
18031 <code><a href=#document>Document</a></code>, there must be no more than one
18032 <code><a href=#the-time-element>time</a></code> element with a <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code> attribute that does not
18033 have an ancestor <code><a href=#the-article-element>article</a></code> element.</p>
18040 <p>If the element <i><a href=#needs-a-date>needs a date</a></i>, and the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute is present,
18041 then the attribute's value must be a <a href=#valid-date-string-with-optional-time>valid date string with
18044 <p>If the element <i><a href=#needs-a-date>needs a date</a></i>, but the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute is not present,
18045 then the element's <code><a href=#textcontent>textContent</a></code> must be a <a href=#valid-date-string-in-content-with-optional-time>valid
18048 <p>If the element does not <i>need a date</i>, and the <code title=attr-time-datetime><a href
18049 then the attribute's value must be a <a href=#valid-date-or-time-string>valid date or time
18052 <p>If the element does not <i>need a date</i>, but the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute is not present,
18053 then the element's <code><a href=#textcontent>textContent</a></code> must be a <a href=#valid-date-or-time-string-in-content>valid
18061 <p>If the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute
18069 <p>The <code><a href=#the-time-element>time</a></code> element can be used to encode dates, for
18072 <code><a href=#the-time-element>time</a></code> element:</p>
18075 <a class="url" href="http://www.web2con.com/">http://www.web2con.com/</a>
18090 <p>The <code><a href=#the-time-element>time</a></code> element is not necessary for encoding
18092 <code><a href=#the-time-element>time</a></code>, so that it can be restyled (e.g. using XBL2) to
18113 attribute must <a href=#reflect>reflect</a> the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> content attribute.</p>
18116 attribute must <a href=#reflect>reflect</a> the <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code> content attribute.</p>
18119 a <code><a href=#the-time-element>time</a></code> element, must follow these steps:</p>
18121 <ol><li>If the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code>
18122 attribute is present, then use the rules to <a href=#parse-a-date-or-time-string>parse a date or
18126 <li>Otherwise, use the rules to <a href=#parse-a-date-or-time-string>parse a date or time
18128 <code><a href=#textcontent>textContent</a></code>, and let the result be <var title="">result</var>.</li>
18131 failed), then the <a href=#concept-time-date title=concept-time-date>date</a> is
18132 unknown, the <a href=#concept-time-time title=concept-time-time>time</a> is
18133 unknown, and the <a href=#concept-time-timezone title=concept-time-timezone>time-zone
18137 that is the <a href=#concept-time-date title=concept-time-date>date</a>; if <var title="">result</var> contains a time, then that is the <a href=#concept-time-time title=concept-time-time>time</a>; and if <var title="">result</var> contains a time-zone offset, then the
18138 time-zone offset is the element's <a href=#concept-time-timezone title=concept-time-timezone>time-zone offset</a>. (A time-zone
18144 <dl class=domintro><dt><var title="">time</var> . <code title=dom-time-valueAsDate><a href=#dom-time-valueasdate>valueAsDate</a></code></dt>
18159 <dl><dt>If the <a href=#concept-time-date title=concept-time-date>date</a> is known but
18160 the <a href=#concept-time-time title=concept-time-time>time</a> is not</dt>
18163 of the given <a href=#concept-time-date title=concept-time-date>date</a>.</dd>
18165 <dt>If the <a href=#concept-time-time title=concept-time-time>time</a> is known but
18166 the <a href=#concept-time-date title=concept-time-date>date</a> is not</dt>
18168 <dd>The time corresponding to the given <a href=#concept-time-time title=concept-time-time>time</a> of 1970-01-01, with the time
18171 <dt>If both the <a href=#concept-time-date title=concept-time-date>date</a> and the
18172 <a href=#concept-time-time title=concept-time-time>time</a> are known</dt>
18174 <dd>The time corresponding to the <a href=#concept-time-date title=concept-time-date>date</a> and <a href=#concept-time-time title=concept-time-time>time</a>, with the given <a href=#concept-time-timezone title=concept-time-timezone>time-zone offset</a>.</dd>
18176 <dt>If neither the <a href=#concept-time-date title=concept-time-date>date</a> nor
18177 the <a href=#concept-time-time title=concept-time-time>time</a> are known</dt>
18194 <p>...the <code><a href=#the-time-element>time</a></code> element's <code title=dom-time-valueAsDate><a href=#dom-time-valueasdate>valueAsDate</a></code> attribute would
18207 <p>...the <code><a href=#the-time-element>time</a></code> element's <code title=dom-time-valueAsDate><a href=#dom-time-valueasdate>valueAsDate</a></code> attribute would
18215 using <code><a href=#the-time-element>time</a></code>:</p>
18252 <dd><a href=#flow-content>Flow content</a>.</dd>
18253 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18255 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18257 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18259 <dd><a href=#global-attributes>Global attributes</a></dd>
18261 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18262 </dl><p>The <code><a href=#the-code-element>code</a></code> element <a href=#represents>represents</a> a fragment
18269 <code><a href=#the-code-element>code</a></code> elements with the language used, e.g. so that
18296 up using the <code><a href=#the-pre-element>pre</a></code> and <code><a href=#the-code-element>code</a></code> elements.</p>
18308 <p class=note>See the <code><a href=#the-pre-element>pre</a></code> element for more details.</p>
18314 <dd><a href=#flow-content>Flow content</a>.</dd>
18315 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18317 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18319 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18321 <dd><a href=#global-attributes>Global attributes</a></dd>
18323 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18324 </dl><p>The <code><a href=#the-var-element>var</a></code> element <a href=#represents>represents</a> a
18339 <code><a href=#the-var-element>var</a></code> element can still be used to refer to specific
18347 figure's legend using <code><a href=#the-var-element>var</a></code>.</p>
18371 <dd><a href=#flow-content>Flow content</a>.</dd>
18372 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18374 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18376 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18378 <dd><a href=#global-attributes>Global attributes</a></dd>
18380 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18381 </dl><p>The <code><a href=#the-samp-element>samp</a></code> element <a href=#represents>represents</a> (sample)
18384 <p class=note>See the <code><a href=#the-pre-element>pre</a></code> and <code><a href=#the-kbd-element>kbd</a></code>
18388 <p>This example shows the <code><a href=#the-samp-element>samp</a></code> element being used
18394 <code><a href=#the-samp-element>samp</a></code> and <code><a href=#the-kbd-element>kbd</a></code> elements allow for the
18409 <dd><a href=#flow-content>Flow content</a>.</dd>
18410 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18412 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18414 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18416 <dd><a href=#global-attributes>Global attributes</a></dd>
18418 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18419 </dl><p>The <code><a href=#the-kbd-element>kbd</a></code> element <a href=#represents>represents</a> user input
18423 <p>When the <code><a href=#the-kbd-element>kbd</a></code> element is nested inside a
18424 <code><a href=#the-samp-element>samp</a></code> element, it represents the input as it was echoed
18427 <p>When the <code><a href=#the-kbd-element>kbd</a></code> element <em>contains</em> a
18428 <code><a href=#the-samp-element>samp</a></code> element, it represents input based on system
18431 <p>When the <code><a href=#the-kbd-element>kbd</a></code> element is nested inside another
18432 <code><a href=#the-kbd-element>kbd</a></code> element, it represents an actual key or other
18436 <p>Here the <code><a href=#the-kbd-element>kbd</a></code> element is used to indicate keys to press:</p>
18440 menu item. The outer <code><a href=#the-kbd-element>kbd</a></code> element marks up a block of
18441 input, with the inner <code><a href=#the-kbd-element>kbd</a></code> elements representing each
18442 individual step of the input, and the <code><a href=#the-samp-element>samp</a></code> elements
18460 <dd><a href=#flow-content>Flow content</a>.</dd>
18461 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18463 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18465 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18467 <dd><a href=#global-attributes>Global attributes</a></dd>
18469 <dd>Use <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18470 </dl><p>The <code><a href=#the-sub-and-sup-elements>sup</a></code> element <a href=#represents>represents</a> a
18471 superscript and the <code><a href=#the-sub-and-sup-elements>sub</a></code> element <a href=#represents>represents</a>
18477 inappropriate for the <code><a href=#the-sub-and-sup-elements>sub</a></code> and <code><a href=#the-sub-and-sup-elements>sup</a></code> elements
18492 <p>The <code><a href=#the-sub-and-sup-elements>sub</a></code> element can be used inside a
18493 <code><a href=#the-var-element>var</a></code> element, for variables that have subscripts.</p>
18497 <p>Here, the <code><a href=#the-sub-and-sup-elements>sub</a></code> element is used to represents the
18509 authors may opt to use <code><a href=#the-sub-and-sup-elements>sub</a></code> and <code><a href=#the-sub-and-sup-elements>sup</a></code> if
18510 detailed mathematical markup is not desired. <a href=#refsMATHML>[MATHML]</a></p>
18522 <dd><a href=#flow-content>Flow content</a>.</dd>
18523 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18525 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18527 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18529 <dd><a href=#global-attributes>Global attributes</a></dd>
18531 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18532 </dl><p>The <code><a href=#the-i-element>i</a></code> element <a href=#represents>represents</a> a span of text
18540 annotated with <code title=attr-lang><a href=#attr-lang>lang</a></code> attributes (or,
18541 in XML, <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code>
18545 <p>The examples below show uses of the <code><a href=#the-i-element>i</a></code> element:</p>
18550 <code><a href=#the-i-element>i</a></code> elements.</p>
18561 <p>Authors are encouraged to use the <code title=attr-class><a href=#classes>class</a></code> attribute on the <code><a href=#the-i-element>i</a></code>
18568 <code><a href=#the-i-element>i</a></code> element, for instance the <code><a href=#the-em-element>em</a></code> element for
18569 marking up stress emphasis, or the <code><a href=#the-dfn-element>dfn</a></code> element to mark
18572 <p class=note>Style sheets can be used to format <code><a href=#the-i-element>i</a></code>
18574 not the case that content in <code><a href=#the-i-element>i</a></code> elements will
18581 <dd><a href=#flow-content>Flow content</a>.</dd>
18582 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18584 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18586 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18588 <dd><a href=#global-attributes>Global attributes</a></dd>
18590 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18591 </dl><p>The <code><a href=#the-b-element>b</a></code> element <a href=#represents>represents</a> a span of text
18598 <p>The following example shows a use of the <code><a href=#the-b-element>b</a></code> element
18605 highlighted as being special by use of the <code><a href=#the-b-element>b</a></code>
18612 <p>Another case where the <code><a href=#the-b-element>b</a></code> element is appropriate is
18614 following example shows how a <a href=http://news.bbc.co.uk/2/hi/uk_news/scotland/north_east/7101506.stm>BBC
18626 <p>As with the <code><a href=#the-i-element>i</a></code> element, authors are encouraged to use
18627 the <code title=attr-class><a href=#classes>class</a></code> attribute on the
18628 <code><a href=#the-b-element>b</a></code> element to identify why the element is being used, so
18632 <p>The <code><a href=#the-b-element>b</a></code> element should be used as a last resort when
18634 use the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> to <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements, stress emphasis
18635 should use the <code><a href=#the-em-element>em</a></code> element, importance should be denoted
18636 with the <code><a href=#the-strong-element>strong</a></code> element, and text marked or highlighted
18637 should use the <code><a href=#the-mark-element>mark</a></code> element.</p>
18643 been <code><a href=#the-strong-element>strong</a></code>, not <code><a href=#the-b-element>b</a></code>.</p>
18646 <p class=note>Style sheets can be used to format <code><a href=#the-b-element>b</a></code>
18648 not the case that content in <code><a href=#the-b-element>b</a></code> elements will
18656 <dd><a href=#flow-content>Flow content</a>.</dd>
18657 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18659 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18661 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18663 <dd><a href=#global-attributes>Global attributes</a></dd>
18665 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18666 </dl><!-- v2: attribute that means "highlight this on the scrollbar" --><p>The <code><a href=#the-mark-element>mark</a></code> element <a href=#represents>represents</a> a run of
18679 <p>This example shows how the <code><a href=#the-mark-element>mark</a></code> element can be used
18692 <p>Another example of the <code><a href=#the-mark-element>mark</a></code> element is highlighting
18716 <code><a href=#the-span-element>span</a></code> is more appropriate. Combining both, one would
18729 <p>This is another example showing the use of <code><a href=#the-mark-element>mark</a></code> to
18732 led the author to explicitly style <code><a href=#the-mark-element>mark</a></code> elements in
18758 <p>Note, incidentally, the distinction between the <code><a href=#the-em-element>em</a></code>
18760 quoted, and the <code><a href=#the-mark-element>mark</a></code> element, which is highlighting a
18768 <em>importance</em> of a span of text (<code><a href=#the-strong-element>strong</a></code>) as
18770 (<code><a href=#the-mark-element>mark</a></code>). It is an extract from a textbook, where the
18801 <dd><a href=#flow-content>Flow content</a>.</dd>
18802 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18804 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18806 <dd>One or more groups of: <a href=#phrasing-content>phrasing content</a> followed either by a single <code><a href=#the-rt-element>rt</a></code> element, or an <code><a href=#the-rp-element>rp</a></code> element, an <code><a href=#the-rt-element>rt</a></code> element, and another <code><a href=#the-rp-element>rp</a></code> element.</dd>
18808 <dd><a href=#global-attributes>Global attributes</a></dd>
18810 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18811 </dl><p>The <code><a href=#the-ruby-element>ruby</a></code> element allows one or more spans of
18818 <p>A <code><a href=#the-ruby-element>ruby</a></code> element <a href=#represents>represents</a> the spans of
18819 phrasing content it contains, ignoring all the child <code><a href=#the-rt-element>rt</a></code>
18820 and <code><a href=#the-rp-element>rp</a></code> elements and their descendants. Those spans of
18822 <code><a href=#the-rt-element>rt</a></code> element.</p>
18893 <dd>As a child of a <code><a href=#the-ruby-element>ruby</a></code> element.</dd>
18895 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18897 <dd><a href=#global-attributes>Global attributes</a></dd>
18899 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18900 </dl><p>The <code><a href=#the-rt-element>rt</a></code> element marks the ruby text component of a
18903 <p>An <code><a href=#the-rt-element>rt</a></code> element <span class=impl>that is a child of
18904 a <code><a href=#the-ruby-element>ruby</a></code> element</span> <a href=#represents>represents</a> an
18907 <code><a href=#the-ruby-element>ruby</a></code> element, ignoring <code><a href=#the-rp-element>rp</a></code> elements.</p>
18911 <p>An <code><a href=#the-rt-element>rt</a></code> element that is not a child of a
18912 <code><a href=#the-ruby-element>ruby</a></code> element represents the same thing as its
18923 <dd>As a child of a <code><a href=#the-ruby-element>ruby</a></code> element, either immediately before or immediately after an <code><a href=#the-rt-element>rt</a></code> element.</dd>
18925 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18931 <dd><a href=#global-attributes>Global attributes</a></dd>
18933 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18934 </dl><p>The <code><a href=#the-rp-element>rp</a></code> element can be used to provide parentheses
18938 <p>An <code><a href=#the-rp-element>rp</a></code> element <span class=impl>that is a child of
18939 a <code><a href=#the-ruby-element>ruby</a></code> element</span> <a href=#represents>represents</a>
18941 ignored</span>. <span class=impl>An <code><a href=#the-rp-element>rp</a></code> element whose
18942 parent element is not a <code><a href=#the-ruby-element>ruby</a></code> element
18943 <a href=#represents>represents</a> its children.</span></p>
18948 phonetic reading, could be expanded to use <code><a href=#the-rp-element>rp</a></code> so that in
18970 <dd><a href=#flow-content>Flow content</a>.</dd>
18971 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18973 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
18975 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
18977 <dd><a href=#global-attributes>Global attributes</a></dd>
18978 <dd>Also, the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> global attribute has special semantics on this element.</dd>
18980 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
18981 </dl><p>The <code><a href=#the-bdo-element>bdo</a></code> element <a href=#represents>represents</a> explicit
18984 explicitly specifying a direction override. <a href=#refsBIDI>[BIDI]</a></p>
18986 <p>Authors must specify the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code>
18993 <p>If the element has the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code>
19000 <p>If the element has the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code>
19007 <p>The requirements on handling the <code><a href=#the-bdo-element>bdo</a></code> element for the
19010 requirements by implementing the CSS 'unicode-bidi' property. <a href=#refsCSS>[CSS]</a></p>
19019 <dd><a href=#flow-content>Flow content</a>.</dd>
19020 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
19022 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
19024 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
19026 <dd><a href=#global-attributes>Global attributes</a></dd>
19029 <pre class=idl>interface <dfn id=htmlspanelement>HTMLSpanElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
19031 </dl><p>The <code><a href=#the-span-element>span</a></code> element doesn't mean anything on its own,
19033 e.g. <code title=attr-class><a href=#classes>class</a></code>, <code title=attr-lang><a href=#attr-lang>lang</a></code>, or <code title=attr-dir><a href=#the-dir-attribute>dir</a></code>. It <a href=#represents>represents</a> its
19039 <code><a href=#the-span-element>span</a></code> elements and <code title=attr-class><a href=#classes>class</a></code> attributes so that its keywords and
19058 <dd><a href=#flow-content>Flow content</a>.</dd>
19059 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
19061 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
19065 <dd><a href=#global-attributes>Global attributes</a></dd>
19068 <pre class=idl>interface <dfn id=htmlbrelement>HTMLBRElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
19070 </dl><p>The <code><a href=#the-br-element>br</a></code> element <a href=#represents>represents</a> a line
19073 <p><code><a href=#the-br-element>br</a></code> elements must be used only for line breaks that
19078 <p>The following example is correct usage of the <code><a href=#the-br-element>br</a></code>
19087 <p><code><a href=#the-br-element>br</a></code> elements must not be used for separating thematic
19093 <code><a href=#the-br-element>br</a></code> element:</p>
19111 <p>If a <a href=#paragraph>paragraph</a> consists of nothing but a single
19112 <code><a href=#the-br-element>br</a></code> element, it represents a placeholder blank line
19118 <p>Any content inside <code><a href=#the-br-element>br</a></code> elements must not be
19121 <p>A <code><a href=#the-br-element>br</a></code> element does not separate paragraphs for the
19122 purposes of the Unicode bidirectional algorithm. <a href=#refsBIDI>[BIDI]</a></p>
19130 <dd><a href=#flow-content>Flow content</a>.</dd>
19131 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
19133 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
19137 <dd><a href=#global-attributes>Global attributes</a></dd>
19139 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
19140 </dl><p>The <code><a href=#the-wbr-element>wbr</a></code> element <a href=#represents>represents</a> a line break
19148 words in the quote are separated using a <code><a href=#the-wbr-element>wbr</a></code>
19158 <p>Any content inside <code><a href=#the-wbr-element>wbr</a></code> elements must not be
19172 <tbody><tr><td><code><a href=#the-a-element>a</a></code>
19174 <td><pre class=example>Visit my <strong><a href="drinks.html">drinks</a></strong> page.</pre>
19176 <tr><td><code><a href=#the-em-element>em</a></code>
19180 <tr><td><code><a href=#the-strong-element>strong</a></code>
19184 <tr><td><code><a href=#the-small-element>small</a></code>
19188 <tr><td><code><a href=#the-cite-element>cite</a></code>
19192 <tr><td><code><a href=#the-q-element>q</a></code>
19196 <tr><td><code><a href=#the-dfn-element>dfn</a></code>
19200 <tr><td><code><a href=#the-abbr-element>abbr</a></code>
19204 <tr><td><code><a href=#the-time-element>time</a></code>
19208 <tr><td><code><a href=#the-code-element>code</a></code>
19212 <tr><td><code><a href=#the-var-element>var</a></code>
19216 <tr><td><code><a href=#the-samp-element>samp</a></code>
19220 <tr><td><code><a href=#the-kbd-element>kbd</a></code>
19224 <tr><td><code><a href=#the-sub-and-sup-elements>sub</a></code>
19228 <tr><td><code><a href=#the-sub-and-sup-elements>sup</a></code>
19232 <tr><td><code><a href=#the-i-element>i</a></code>
19236 <tr><td><code><a href=#the-b-element>b</a></code>
19240 <tr><td><code><a href=#the-mark-element>mark</a></code>
19244 <tr><td><code><a href=#the-ruby-element>ruby</a></code>, <code><a href=#the-rt-element>rt</a></code>, <code><a href=#the-rp-element>rp</a></code>
19248 <tr><td><code><a href=#the-bdo-element>bdo</a></code>
19252 <tr><td><code><a href=#the-span-element>span</a></code>
19256 <tr><td><code><a href=#the-br-element>br</a></code>
19260 <tr><td><code><a href=#the-wbr-element>wbr</a></code>
19266 <p>The <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements represent
19273 <dd><a href=#flow-content>Flow content</a>.</dd>
19274 <dd>When the element only contains <a href=#phrasing-content>phrasing content</a>: <a href=#phrasing-content>phrasing content</a>.</dd>
19276 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
19278 <dd><a href=#transparent>Transparent</a>.</dd>
19280 <dd><a href=#global-attributes>Global attributes</a></dd>
19281 <dd><code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code></dd>
19282 <dd><code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code></dd>
19284 <dd>Uses the <code><a href=#htmlmodelement>HTMLModElement</a></code> interface.</dd>
19285 </dl><p>The <code><a href=#the-ins-element>ins</a></code> element <a href=#represents>represents</a> an addition
19298 <p>As does this, because everything in the <code><a href=#the-aside-element>aside</a></code>
19299 element here counts as <a href=#phrasing-content>phrasing content</a> and therefore
19300 there is just one <a href=#paragraph>paragraph</a>:</p>
19313 <p><code><a href=#the-ins-element>ins</a></code> elements should not cross <a href=#paragraph title=paragraph>implied paragraph</a> boundaries.</p>
19319 <code><a href=#the-ins-element>ins</a></code> element in this example thus crosses a paragraph
19357 <dd><a href=#flow-content>Flow content</a>.</dd>
19358 <dd>When the element only contains <a href=#phrasing-content>phrasing content</a>: <a href=#phrasing-content>phrasing content</a>.</dd>
19360 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
19362 <dd><a href=#transparent>Transparent</a>.</dd>
19364 <dd><a href=#global-attributes>Global attributes</a></dd>
19365 <dd><code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code></dd>
19366 <dd><code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code></dd>
19368 <dd>Uses the <code><a href=#htmlmodelement>HTMLModElement</a></code> interface.</dd>
19369 </dl><p>The <code><a href=#the-del-element>del</a></code> element <a href=#represents>represents</a> a removal
19372 <p><code><a href=#the-del-element>del</a></code> elements should not cross <a href=#paragraph title=paragraph>implied paragraph</a> boundaries.</p>
19392 <h4 id=attributes-common-to-ins-and-del-elements><span class=secno>4.7.3 </span>Attributes common to <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements</h4>
19401 <p>If the <code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code> attribute is
19402 present, it must be a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially surrounded by
19405 <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the
19413 <p>If present, the <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code>
19414 attribute must be a <a href=#valid-global-date-and-time-string>valid global date and time string</a>
19419 href=#attr-mod-datetime>datetime</a></code> attribute according to the
19420 <a href=#parse-a-global-date-and-time-string>parse a global date and time string</a> algorithm. If that
19422 timestamp (the value is non-conforming; it is not a <a href=#valid-global-date-and-time-string>valid
19430 <p>The <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements <span class=impl>must</span> implement the <code><a href=#htmlmodelement>HTMLModElement</a></code>
19433 <pre class=idl>interface <dfn id=htmlmodelement>HTMLModElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
19434 attribute DOMString <a href=#dom-mod-cite title=dom-mod-cite>cite</a>;
19435 attribute DOMString <a href=#dom-mod-datetime title=dom-mod-datetime>dateTime</a>;
19441 attribute must <a href=#reflect>reflect</a> the element's <code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code> content attribute. The <dfn id=dom-mod-datetime title=dom-mod-datetime><code>dateTime</code></dfn> IDL attribute
19442 must <a href=#reflect>reflect</a> the element's <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code> content attribute.</p>
19452 <p>Since the <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements do not
19453 affect <a href=#paragraph title=paragraph>paragraphing</a>, it is possible,
19454 in some cases where paragraphs are <a href=#paragraph title=paragraph>implied</a> (without explicit <code><a href=#the-p-element>p</a></code>
19455 elements), for an <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> element to
19456 span both an entire paragraph or other non-<a href=#phrasing-content>phrasing
19471 <p>By only wrapping some paragraphs in <code><a href=#the-p-element>p</a></code> elements, one
19474 <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> element (though this is very
19486 <p>However, due to the way <a href=#paragraph title=paragraph>implied
19489 same <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> element. You instead have
19490 to use one (or two) <code><a href=#the-p-element>p</a></code> element(s) and two
19491 <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> elements, as for example:</p>
19502 <code><a href=#the-p-element>p</a></code> element, instead of having <code><a href=#the-ins-element>ins</a></code> or
19503 <code><a href=#the-del-element>del</a></code> elements that cross <a href=#paragraph title=paragraph>implied
19511 <p>The content models of the <code><a href=#the-ol-element>ol</a></code> and <code><a href=#the-ul-element>ul</a></code>
19512 elements do not allow <code><a href=#the-ins-element>ins</a></code> and <code><a href=#the-del-element>del</a></code> elements
19517 <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> element can be wrapped around
19518 the contents of the <code><a href=#the-li-element>li</a></code> element. To indicate that an
19519 item has been replaced by another, a single <code><a href=#the-li-element>li</a></code> element
19520 can have one or more <code><a href=#the-del-element>del</a></code> elements followed by one or
19521 more <code><a href=#the-ins-element>ins</a></code> elements.</p>
19573 <dd><a href=#flow-content>Flow content</a>.</dd>
19574 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
19575 <dd><a href=#embedded-content>Embedded content</a>.</dd>
19576 <dd>If the element has a <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute: <a href=#interactive-content>Interactive content</a>.</dd>
19578 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
19582 <dd><a href=#global-attributes>Global attributes</a></dd>
19583 <dd><code title=attr-img-alt><a href=#attr-img-alt>alt</a></code></dd>
19584 <dd><code title=attr-img-src><a href=#attr-img-src>src</a></code></dd>
19585 <dd><code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code></dd>
19586 <dd><code title=attr-img-ismap><a href=#attr-img-ismap>ismap</a></code></dd>
19587 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
19588 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
19591 <pre class=idl>[NamedConstructor=<a href=#dom-image title=dom-image>Image</a>(),
19592 NamedConstructor=<a href=#dom-image-w title=dom-image-w>Image</a>(in unsigned long width),
19593 NamedConstructor=<a href=#dom-image-wh title=dom-image-wh>Image</a>(in unsigned long width, in unsigned long height)]
19594 interface <dfn id=htmlimageelement>HTMLImageElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
19595 attribute DOMString <a href=#dom-img-alt title=dom-img-alt>alt</a>;
19596 attribute DOMString <a href=#dom-img-src title=dom-img-src>src</a>;
19597 attribute DOMString <a href=#dom-img-usemap title=dom-img-useMap>useMap</a>;
19598 attribute boolean <a href=#dom-img-ismap title=dom-img-isMap>isMap</a>;
19599 attribute unsigned long <a href=#dom-img-width title=dom-img-width>width</a>;
19600 attribute unsigned long <a href=#dom-img-height title=dom-img-height>height</a>;
19601 readonly attribute unsigned long <a href=#dom-img-naturalwidth title=dom-img-naturalWidth>naturalWidth</a>;
19602 readonly attribute unsigned long <a href=#dom-img-naturalheight title=dom-img-naturalHeight>naturalHeight</a>;
19603 readonly attribute boolean <a href=#dom-img-complete title=dom-img-complete>complete</a>;
19606 </dl><p>An <code><a href=#the-img-element>img</a></code> element represents an image.</p>
19627 <code><a href=#the-img-element>img</a></code> element's <a href=#fallback-content>fallback content</a>.</p>
19629 <p>The <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute must be
19630 present, and must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially
19643 <p>The requirements on the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
19644 attribute's value are described <a href=#alt>in the next
19648 <p>The <code><a href=#the-img-element>img</a></code> must not be used as a layout tool. In
19649 particular, <code><a href=#the-img-element>img</a></code> elements should not be used to display
19657 demand, then, when an <code><a href=#the-img-element>img</a></code> is created with a <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute, and whenever the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute is set subsequently, the
19661 <ol><li><p>If the element's <code title=attr-img-src><a href=#attr-img-src>src</a></code>
19662 attribute's value is the empty string, then <a href=#queue-a-task>queue a
19663 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the <code><a href=#the-img-element>img</a></code> element,
19668 <p>Otherwise, <a href=#resolve-a-url title="resolve a url">resolve</a> the value
19670 successful must then <a href=#fetch>fetch</a> that resource.</p> <!--
19674 elsewhere --> <p>Fetching the image must <a href=#delay-the-load-event>delay the load
19675 event</a> of the element's document until the <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a
19676 task">queued</a> by the <a href=#networking-task-source>networking task source</a>
19677 once the resource has been <a href=#fetch title=fetch>fetched</a> (<a href=#img-load>defined below</a>) has been run.</p>
19683 <a href=#origin title=origin>cross-origin</a> access control policies
19692 supports incremental rendering of images; in such cases, each <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a
19693 task">queued</a> by the <a href=#networking-task-source>networking task source</a> while
19694 the image is being <a href=#fetch title=fetch>fetched</a> must update
19700 is disabled, or because the <code title=attr-img-src><a href=#attr-img-src>src</a></code>
19702 previous paragraph are not met, then the image is <em>not</em> <i title=img-available><a href=#img-available>available</a></i>.</p>
19705 the response code was a 2xx code <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>) must be
19712 <p>The user agents should apply the <a href=#content-type-sniffing:-image title="Content-Type
19714 of the image, with the image's <a href=#content-type title=Content-Type>associated
19717 href=#content-type title=Content-Type>associated Content-Type headers</a>.</p>
19720 <code><a href=#the-img-element>img</a></code> element (e.g. XML files whose root element is an
19731 <p id=img-load>The <a href=#concept-task title=concept-task>task</a> that is
19732 <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking
19733 task source</a> once the resource has been <a href=#fetch title=fetch>fetched</a>, must act as appropriate given the
19736 <dl class=switch><dt>If the download was successful and the image is <i title=img-available><a href=#img-available>available</a></i></dt>
19738 <dd><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
19739 named <code title=event-load>load</code> at the <code><a href=#the-img-element>img</a></code>
19740 element (this happens after <code title=dom-img-complete><a href=#dom-img-complete>complete</a></code> starts returning
19747 <dd><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
19749 <code><a href=#the-img-element>img</a></code> element.</dd>
19751 </dl><p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#dom-manipulation-task-source>DOM manipulation
19754 <hr><p>What an <code><a href=#the-img-element>img</a></code> element represents depends on the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute and the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute.</p>
19756 <dl class=switch><dt>If the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute is set
19757 and the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute is set to
19766 <p>If the image is <i title=img-available><a href=#img-available>available</a></i> and the
19768 <a href=#represents>represents</a> the image specified by the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute.</p>
19770 <p>Otherwise, the element <a href=#represents>represents</a> nothing, and may
19777 <dt>If the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute is set
19778 and the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute is set to a
19783 <p>The image is a key part of the content; the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute gives a textual
19786 <p>If the image is <i title=img-available><a href=#img-available>available</a></i> and the
19788 <a href=#represents>represents</a> the image specified by the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute.</p>
19790 <p>Otherwise, the element <a href=#represents>represents</a> the text given
19791 by the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute. User
19797 <dt>If the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute is set
19798 and the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute is not</dt>
19805 <p class=note>In a conforming document, the absence of the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute indicates that the image
19809 <p>If the image is <i title=img-available><a href=#img-available>available</a></i>, the
19810 element <a href=#represents>represents</a> the image specified by the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute.</p>
19812 <p>If the image is not <i title=img-available><a href=#img-available>available</a></i> or
19821 of 'critical-no-alt' --><li><p>If the image has a <code title=attr-title><a href=#the-title-attribute>title</a></code>
19826 <li><p>If the image is the child of a <code><a href=#the-figure-element>figure</a></code> element
19827 that has a child <code><a href=#the-figcaption-element>figcaption</a></code> element, then the
19828 contents of the first such <code><a href=#the-figcaption-element>figcaption</a></code> element are
19833 <dt>If the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute is not
19834 set and either the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute
19835 is set to the empty string or the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute is not set at all</dt>
19839 <p>The element <a href=#represents>represents</a> nothing.</p>
19847 <p>The element <a href=#represents>represents</a> the text given by the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute.</p>
19851 </dl><p>The <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute does not
19853 contents of the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute in
19854 the same way as content of the <code title=attr-title><a href=#the-title-attribute>title</a></code>
19867 of missing <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attributes, authors
19868 must not rely on such behavior. <a href=#alt>Requirements for
19872 <p>The <em>contents</em> of <code><a href=#the-img-element>img</a></code> elements, if any, are
19877 <hr><p>The <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute,
19879 <a href=#image-map>image map</a>.</p>
19883 <code><a href=#the-a-element>a</a></code> element with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, indicates by its
19886 <code><a href=#the-a-element>a</a></code> element.</p>
19888 <p>The <code title=attr-img-ismap><a href=#attr-img-ismap>ismap</a></code> attribute is a
19889 <a href=#boolean-attribute>boolean attribute</a>. The attribute must not be specified
19890 on an element that does not have an ancestor <code><a href=#the-a-element>a</a></code> element
19891 with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute.</p>
19893 <p>The <code><a href=#the-img-element>img</a></code> element supports <a href=#dimension-attributes>dimension
19899 <a href=#reflect>reflect</a> the respective content attributes of the same
19904 <dl class=domintro><dt><var title="">image</var> . <code title=dom-img-width><a href=#dom-img-width>width</a></code> [ = <var title="">value</var> ]</dt>
19905 <dt><var title="">image</var> . <code title=dom-img-height><a href=#dom-img-height>height</a></code> [ = <var title="">value</var> ]</dt>
19917 <dt><var title="">image</var> . <code title=dom-img-naturalWidth><a href=#dom-img-naturalwidth>naturalWidth</a></code></dt>
19918 <dt><var title="">image</var> . <code title=dom-img-naturalHeight><a href=#dom-img-naturalheight>naturalHeight</a></code></dt>
19927 <dt><var title="">image</var> . <code title=dom-img-complete><a href=#dom-img-complete>complete</a></code></dt>
19936 <dt><var title="">image</var> = new <code title=dom-image><a href=#dom-image>Image</a></code>( [ <var title="">width</var> [, <var title="">height</var> ] ] )</dt>
19940 <p>Returns a new <code><a href=#the-img-element>img</a></code> element, with the <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> and <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> attributes set to the values
19949 is <a href=#being-rendered>being rendered</a>, and is being rendered to a visual
19951 pixels, if the image is <i title=img-available><a href=#img-available>available</a></i> but
19953 not <i title=img-available><a href=#img-available>available</a></i>. <a href=#refsCSS>[CSS]</a></p>
19955 <p>On setting, they must act as if they <a href=#reflect title=reflect>reflected</a> the respective content attributes
19961 pixels, if the image is <i title=img-available><a href=#img-available>available</a></i>, or
19962 else 0. <a href=#refsCSS>[CSS]</a></p>
19965 true if the user agent has fetched the image specified in the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute, and it is in a supported
19967 final <a href=#concept-task title=concept-task>task</a> queued by the
19968 <a href=#networking-task-source>networking task source</a> for the <a href=#fetch title=fetch>fetching</a> of the image resource has not yet been
19971 <p class=note>The value of <code title=dom-img-complete><a href=#dom-img-complete>complete</a></code> can thus change while a
19972 <a href=#concept-script title=concept-script>script</a> is executing.</p>
19975 <code><a href=#htmlimageelement>HTMLImageElement</a></code> objects (in addition to the factory
19977 these must return a new <code><a href=#htmlimageelement>HTMLImageElement</a></code> object (a new
19978 <code><a href=#the-img-element>img</a></code> element). If the <var title="">width</var> argument
19979 is present, the new object's <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> content attribute must be set to
19981 argument is also present, the new object's <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> content attribute must be set
19983 <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing context</a> of
19984 the <code><a href=#window>Window</a></code> object on which the interface object of the
19995 <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> text is different each
20034 caption for the image is provided, in the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute:</p>
20099 <p>Except where otherwise specified, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must be specified and its
20101 replacement for the image. The specific requirements for the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute depend on what the image
20108 <p>When an <a href=#the-a-element>a</a> element that is a <a href=#hyperlink>hyperlink</a>,
20109 or a <code><a href=#the-button-element>button</a></code> element, has no textual content but
20110 contains one or more images, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attributes must contain text that
20122 <li><a href="green.html"><strong><img src="green.jpeg" alt="Green"></strong></a></li>
20123 <li><a href="blue.html"><strong><img src="blue.jpeg" alt="Blue"></strong></a></li>
20124 <li><a href="red.html"><strong><img src="red.jpeg" alt="Red"></strong></a></li>
20160 the <code><a href=#the-img-element>img</a></code> element, but the lesser textual version must
20168 <p>The text must be given in the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute, and must convey the
20169 same message as the image specified in the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute.</p>
20177 <p>In the following example we have <a href=images/parsing-model-overview.png>a flowchart</a> in image
20178 form, with text in the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20223 <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute or in the
20224 <code><a href=#the-figcaption-element>figcaption</a></code> element of a <code><a href=#the-figure-element>figure</a></code> with this
20237 conveying the same meaning. In those cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must be present but must
20243 so they have an empty <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20247 <p><a href="/help/"><strong><img src="/icons/help.png" alt=""></strong> Help</a></p>
20248 <p><a href="/configure/"><strong><img src="/icons/configuration.png" alt=""></strong>
20256 cases, an equivalent textual label must be given in the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute.</p>
20291 heading, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must
20293 <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must <em>not</em>
20298 it represents, then the logo is supplemental, and its <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must instead be
20352 such that if the image isn't <i title=img-available><a href
20365 <p>In such cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20387 cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must be
20408 then either the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute can
20409 be used, or the <code><a href=#the-figure-element>figure</a></code> and <code><a href=#the-figcaption-element>figcaption</a></code>
20474 using the <code><a href=#the-img-element>img</a></code> element. Such images are decorative, but
20475 still form part of the content. In these cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must be present but its
20507 the images must have its <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20510 have their <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute set to
20544 <p>Generally, <a href=#image-map title="image map">image maps</a> should be
20549 per link must have alternative text in its <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute representing the purpose
20562 <strong><p><a href="?go=left" ><img src="fsm-left.png" alt="Left side. "></a
20564 ><a href="?go=right"><img src="fsm-right.png" alt="Right side."></a></p></strong></pre>
20589 of the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute.</p>
20639 <p>In these cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20713 <p>In such cases, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20718 of 'critical-no-alt' --><li>The <code title=attr-title><a href
20721 <li>The <code><a href=#the-img-element>img</a></code> element is in a <code><a href=#the-figure-element>figure</a></code>
20722 element that contains a <code><a href=#the-figcaption-element>figcaption</a></code> element that
20723 contains content other than <a href=#inter-element-whitespace>inter-element
20729 not be acceptable to omit the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>
20789 mark up a CAPTCHA (note the <code title=attr-title><a href=#the-title-attribute>title</a></code>
20796 href="?audio">audio</a> test instead.)</p></pre>
20816 as possible is still included in the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute.</p>
20824 browser, or simply because they are blind), the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute is only allowed to be
20828 is not an acceptable reason for omitting the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute.</p>
20834 <p>Generally authors should avoid using <code><a href=#the-img-element>img</a></code> elements
20837 <p>If an <code><a href=#the-img-element>img</a></code> element is being used for purposes other
20839 views, then the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute must
20842 <p>In such cases, the <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> and
20843 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> attributes should both
20857 view images, the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute may
20872 with the text of its <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute
20879 <p>A corollary to this is that the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute's value should never
20883 image; it is not meant to supplement the image. The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute can be used for
20907 <p>As a last resort, implementors should either set the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute to the empty string, under
20910 content, or omit the <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute
20932 <p>A conformance checker must report the lack of an <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code> attribute as an error unless one of
20936 of 'critical-no-alt' --><li>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute is present
20937 and has a non-empty value (as <a href=#unknown-images>described
20940 <li>The <code><a href=#the-img-element>img</a></code> element is in a <code><a href=#the-figure-element>figure</a></code>
20941 element that contains a <code><a href=#the-figcaption-element>figcaption</a></code> element that
20942 contains content other than <a href=#inter-element-whitespace>inter-element whitespace</a>
20943 (as <a href=#unknown-images>described above</a>).</li>
20952 <li>The document has a <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute whose value is an
20953 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title=meta-generator><a href=#meta-generator>generator</a></code>". (This case does not
20967 <dd><a href=#flow-content>Flow content</a>.</dd>
20968 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
20969 <dd><a href=#embedded-content>Embedded content</a>.</dd>
20970 <dd><a href=#interactive-content>Interactive content</a>.</dd>
20972 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
20976 <dd><a href=#global-attributes>Global attributes</a></dd>
20977 <dd><code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code></dd>
20978 <dd><code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code></dd>
20979 <dd><code title=attr-iframe-name><a href=#attr-iframe-name>name</a></code></dd>
20980 <dd><code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code></dd>
20981 <dd><code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code></dd>
20982 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
20983 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
20986 <pre class=idl>interface <dfn id=htmliframeelement>HTMLIFrameElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
20987 attribute DOMString <a href=#dom-iframe-src title=dom-iframe-src>src</a>;
20988 attribute DOMString <a href=#dom-iframe-srcdoc title=dom-iframe-srcdoc>srcdoc</a>;
20989 attribute DOMString <a href=#dom-iframe-name title=dom-iframe-name>name</a>;
20990 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <a href=#dom-iframe-sandbox title=dom-iframe-sandbox>sandbox</a>;
20991 attribute boolean <a href=#dom-iframe-seamless title=dom-iframe-seamless>seamless</a>;
20992 attribute DOMString <a href=#dom-dim-width title=dom-dim-width>width</a>;
20993 attribute DOMString <a href=#dom-dim-height title=dom-dim-height>height</a>;
20994 readonly attribute Document <a href=#dom-iframe-contentdocument title=dom-iframe-contentDocument>contentDocument</a>;
20995 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-iframe-contentwindow title=dom-iframe-contentWindow>contentWindow</a>;
20998 </dl><p>The <code><a href=#the-iframe-element>iframe</a></code> element <a href=#represents>represents</a> a
20999 <a href=#nested-browsing-context>nested browsing context</a>.</p>
21002 gives the address of a page that the <a href=#nested-browsing-context>nested browsing
21004 <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
21008 attribute gives the content of the page that the <a href=#nested-browsing-context>nested
21012 <p>For <code><a href=#the-iframe-element>iframe</a></code> elements in <a href=#html-documents>HTML documents</a>,
21013 the attribute, if present, must have a value using <a href=#syntax>the HTML
21017 <ol><li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
21018 <a href=#space-character title="space character">space characters</a>.</li>
21020 <li>Optionally, a <a href=#syntax-doctype title=syntax-doctype>DOCTYPE</a>.
21022 <li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
21023 <a href=#space-character title="space character">space characters</a>.</li>
21025 <li>The root element, in the form of an <code><a href=#the-html-element-0>html</a></code> <a href=#syntax-elements title=syntax-elements>element</a>.</li>
21027 <li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
21028 <a href
21030 </ol><p>For <code><a href=#the-iframe-element>iframe</a></code> elements in <a href=#xml-documents>XML documents</a>,
21032 production labeled <code><a href=#document>document</a></code> in the XML
21033 specification. <a href=#refsXML>[XML]</a></p>
21035 <p>If the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute and the
21036 <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute are both
21037 specified together, the <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code>
21039 <a href=#url>URL</a> for legacy user agents that do not support the
21040 <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute.</p>
21044 <p>When an <code><a href=#the-iframe-element>iframe</a></code> element is first <a href=#insert-an-element-into-a-document title="insert
21046 user agent must create a <a href=#nested-browsing-context>nested browsing context</a>, and
21047 then <a href=#process-the-iframe-attributes>process the <code>iframe</code> attributes</a> for the
21050 <p>Whenever an <code><a href=#the-iframe-element>iframe</a></code> element with a <a href=#nested-browsing-context>nested
21051 browsing context</a> has its <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute set or changed,
21052 the user agent must <a href=#process-the-iframe-attributes>process the <code>iframe</code>
21055 <p>Similarly, whenever an <code><a href=#the-iframe-element>iframe</a></code> element with a
21056 <a href=#nested-browsing-context>nested browsing context</a> but with no <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute specified has its
21057 <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute set or changed,
21058 the user agent must <a href=#process-the-iframe-attributes>process the <code>iframe</code>
21066 <dl class=switch><dt>If the <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute
21069 <dd><p><a href=#navigate>Navigate</a> the element's <a href=#browsing-context>browsing
21070 context</a> to a resource whose <a href=#content-type>Content-Type</a> is
21071 <code><a href=#text/html>text/html</a></code>, whose <a href=#url>URL</a> is
21072 <code><a href=#about:srcdoc>about:srcdoc</a></code>, and whose data consists of the value of
21075 <dt>If the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code>
21076 attribute is specified but the <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute is not</dt>
21080 <ol><li><p>If the value of the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute is the empty string,
21083 <li><p><a href=#resolve-a-url title="resolve a url">Resolve</a> the value of
21084 the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute, relative
21085 to the <code><a href=#the-iframe-element>iframe</a></code> element.</li>
21089 <li><p>If the resulting <a href=#absolute-url>absolute URL</a> is an
21090 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string
21091 "<code><a href=#about:blank>about:blank</a></code>", and the user agent is processing this
21092 <code><a href=#the-iframe-element>iframe</a></code>'s attributes for the first time, then jump to
21094 first time, <code><a href=#about:blank>about:blank</a></code> is loaded
21097 <li><p><a href=#navigate>Navigate</a> the element's <a href=#browsing-context>browsing
21098 context</a> to the resulting <a href=#absolute-url>absolute
21103 processing this <code><a href=#the-iframe-element>iframe</a></code>'s attributes for the first
21104 time, then the user agent must <a href=#queue-a-task>queue a task</a> to
21105 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load>load</code> at the <code><a href=#the-iframe-element>iframe</a></code>
21115 <p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
21117 <code><a href=#the-iframe-element>iframe</a></code> element.</p>
21121 </dl><p>Any <a href=#navigate title=navigate>navigation</a> required of the user
21122 agent in the <a href=#process-the-iframe-attributes>process the <code>iframe</code> attributes</a>
21123 algorithm must be completed with the <code><a href=#the-iframe-element>iframe</a></code> element's
21124 document's <a href=#browsing-context>browsing context</a> as the <a href=#source-browsing-context>source
21127 <p>Furthermore, if the <a href=#process-the-iframe-attributes>process the <code>iframe</code>
21129 element (i.e. as a result of the element being <a href=#insert-an-element-into-a-document title="insert
21131 any <a href=#navigate title=navigate>navigation</a> required of the user
21132 agent in that algorithm must be completed with <a href=#replacement-enabled>replacement
21137 <p class=note>If, when the element is created, the <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute is not set, and
21138 the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute is either
21139 also not set or set but its value cannot be <a href=#resolve-a-url title="resolve a
21141 initial <code><a href=#about:blank>about:blank</a></code> page.</p>
21143 <p class=note>If the user <a href=#navigate title=navigate>navigates</a>
21144 away from this page, the <code><a href=#the-iframe-element>iframe</a></code>'s corresponding
21145 <code><a href=#windowproxy>WindowProxy</a></code> object will proxy new <code><a href=#window>Window</a></code>
21146 objects for new <code><a href=#document>Document</a></code> objects, but the <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute will not change.</p>
21150 <p>Here a blog uses the <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code> attribute in conjunction
21151 with the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> and <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code> attributes described
21163 <p>Written by <a href="/users/cap">cap</a>.
21167 <footer> At <time pubdate>2009-08-21T23:35Z</time>, <a href="/users/ch">ch</a> writes: </footer>
21171 <footer> At <time pubdate>2009-08-21T23:44Z</time>, <a href="/users/cap">cap</a> writes: </footer>
21172 <iframe seamless sandbox="allow-same-origin" srcdoc="<p>Yeah, you can see it <a href=&quot;/gallery?mode=cover&amp;amp;page=1&quot;>in my gallery</a>."></iframe>
21175 <footer> At <time pubdate>2009-08-21T23:58Z</time>, <a href="/users/ch">ch</a> writes: </footer>
21181 <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute would
21185 preserved when originally parsing the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute, and once more
21191 <p class=note>In <a href=#syntax>the HTML syntax</a>, authors need only
21194 and U+0026 AMPERSAND (&) characters, and to specify the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute, to ensure safe
21202 attribute, if present, must be a <a href=#valid-browsing-context-name>valid browsing context
21203 name</a>. The given value is used to name the <a href=#nested-browsing-context>nested
21205 context is created, if the attribute is present, the <a href=#browsing-context-name>browsing
21207 otherwise, the <a href=#browsing-context-name>browsing context name</a> must be set to the
21212 <p>Whenever the <code title=attr-iframe-name><a href=#attr-iframe-name>name</a></code> attribute
21213 is set, the nested <a href=#browsing-context>browsing context</a>'s <a href=#browsing-context-name title="browsing context name">name</a> must be changed to the new
21214 value. If the attribute is removed, the <a href=#browsing-context-name>browsing context
21217 <p>When content loads in an <code><a href=#the-iframe-element>iframe</a></code>, after any <code title=event-load>load</code> events are fired within the content
21218 itself, the user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
21220 the <code><a href=#the-iframe-element>iframe</a></code> element. When content whose <a href=#url>URL</a>
21221 has the <a href=#same-origin>same origin</a> as the <code><a href=#the-iframe-element>iframe</a></code>
21222 element's <code><a href=#document>Document</a></code> fails to load (e.g. due to a DNS
21224 code <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or
21225 equivalent</a>), then the user agent must <a href=#queue-a-task>queue a
21226 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the element instead. (This event
21227 does not fire for <a href=#parse-error title="parse error">parse errors</a>,
21230 <p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#dom-manipulation-task-source>DOM manipulation
21234 fired at the <code><a href=#the-iframe-element>iframe</a></code> element when it is created if no
21237 <p>When there is an <a href=#active-parser>active parser</a> in the
21238 <code><a href=#the-iframe-element>iframe</a></code>, and when anything in the <code><a href=#the-iframe-element>iframe</a></code> is
21239 <a href=#delay-the-load-event title="delay the load event">delaying the load event</a> of
21240 the <code><a href=#the-iframe-element>iframe</a></code>'s <a href=#browsing-context>browsing context</a>'s
21241 <a href=#active-document>active document</a>, the <code><a href=#the-iframe-element>iframe</a></code> must
21242 <a href=#delay-the-load-event>delay the load event</a> of its document.</p>
21244 <p class=note>If, during the handling of the <code title=event-load>load</code> event, the <a href=#browsing-context>browsing
21245 context</a> in the <code><a href=#the-iframe-element>iframe</a></code> is again <a href=#navigate title=navigate>navigated</a>, that will further <a href=#delay-the-load-event>delay the
21252 any content hosted by the <code><a href=#the-iframe-element>iframe</a></code>. Its value must be an
21253 <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>. The
21254 allowed values are <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>,
21255 <code title=attr-iframe-sandbox-allow-top-navigation><a href=#attr-iframe-sandbox-allow-top-navigation>allow-top-navigation</a></code>,
21256 <code title=attr-iframe-sandbox-allow-forms><a href=#attr-iframe-sandbox-allow-forms>allow-forms</a></code>,
21257 and <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>. When
21259 <a href=#origin>origin</a>, forms and scripts are disabled, links are
21260 prevented from targeting other <a href=#browsing-context title="browsing
21262 <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21264 origin instead of forcing it into a unique origin, the <code title=attr-iframe-sandbox-allow-top-navigation><a href=#attr-iframe-sandbox-allow-top-navigation>allow-top-navigation</a></code>
21265 keyword allows the content to <a href=#navigate>navigate</a> its
21266 <a href=#top-level-browsing-context>top-level browsing context</a>, and the <code title=attr-iframe-sandbox-allow-forms><a href=#attr-iframe-sandbox-allow-forms>allow-forms</a></code> and <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>
21270 <p class=warning>Setting both the <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code> and
21271 <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21272 keywords together when the embedded page has the <a href=#same-origin>same
21273 origin</a> as the page containing the <code><a href=#the-iframe-element>iframe</a></code> allows
21274 href=#attr-iframe-sandbox>sandbox</a></code> attribute.</p>
21278 directly, rather than in the <code><a href=#the-iframe-element>iframe</a></code>. To limit the
21280 served using the <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> MIME type.</p>
21291 <p>While the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code>
21292 attribute is specified, the <code><a href=#the-iframe-element>iframe</a></code> element's
21293 <a href=#nested-browsing-context>nested browsing context</a> must have the flags given in
21294 the following list set. In addition, any browsing contexts <a href=#nested-browsing-context title="nested browsing context">nested</a> within an
21295 <code><a href=#the-iframe-element>iframe</a></code>, either directly or indirectly, must have all
21296 the flags set on them as were set on the <code><a href=#the-iframe-element>iframe</a></code>'s
21297 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> when the
21298 <code><a href=#the-iframe-element>iframe</a></code>'s <code><a href=#document>Document</a></code> was created.</p>
21304 <p>This flag <a href=#sandboxLinks>prevents content from
21307 it), and the <a href=#top-level-browsing-context>top-level browsing context</a> (which is
21308 protected by the <a href=#sandboxed-top-level-navigation-browsing-context-flag>sandboxed top-level navigation browsing
21311 <p>This flag also <a href=#sandboxWindowOpen>prevents content
21313 <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute or the
21314 <code title=dom-open><a href=#dom-open>window.open()</a></code> method.</p>
21320 flag</dfn>, unless the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute's value, when
21321 <a href=#split-a-string-on-spaces title="split a string on spaces">split on spaces</a>, is
21327 <p>This flag <a href=#sandboxLinks>prevents content from
21330 <p>When the <code title=attr-iframe-sandbox-allow-top-navigation><a href=#attr-iframe-sandbox-allow-top-navigation>allow-top-navigation</a></code>
21331 is set, content can navigate its <a href=#top-level-browsing-context>top-level browsing
21332 context</a>, but other <a href=#browsing-context title="browsing context">browsing
21333 contexts</a> are still protected by the <a href=#sandboxed-navigation-browsing-context-flag>sandboxed
21343 <p>This flag prevents content from instantiating <a href=#plugin title=plugin>plugins</a>, whether using <a href=#sandboxPluginEmbed>the <code>embed</code> element</a>, <a href=#sandboxPluginObject>the <code>object</code> element</a>,
21344 <a href=#sandboxPluginApplet>the <code>applet</code>
21345 element</a>, or through <a href=#sandboxPluginNavigate>navigation</a> of a <a href=#nested-browsing-context>nested
21355 <p>This flag prevents content from using the <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code> attribute on
21356 descendant <code><a href=#the-iframe-element>iframe</a></code> elements.</p>
21358 <p class=note>This prevents a page inserted using the <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21369 the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute's
21370 value, when <a href=#split-a-string-on-spaces title="split a string on spaces">split on
21376 <p>This flag <a href=#sandboxOrigin>forces content into a unique
21378 the same <a href=#origin>origin</a>.</p>
21380 <p>This flag also <a href=#sandboxCookies>prevents script from
21384 <a href=#refsWEBSTORAGE>[WEBSTORAGE]</a>
21386 <a href=#refsWEBSQL>[WEBSQL]</a>
21391 <p>The <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21410 the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute's
21411 value, when <a href=#split-a-string-on-spaces title="split a string on spaces">split on
21417 <p>This flag <a href=#sandboxSubmitBlocked>blocks form
21424 the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute's
21425 value, when <a href=#split-a-string-on-spaces title="split a string on spaces">split on
21431 <p>This flag <a href=#sandboxScriptBlocked>blocks script
21438 flag</dfn>, unless the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute's value, when
21439 <a href=#split-a-string-on-spaces title="split a string on spaces">split on spaces</a>, is
21440 found to have the <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>
21446 <a href=#attr-media-autoplay title=attr-media-autoplay>automatically playing a
21447 video</a> or <a href=#attr-fe-autofocus title=attr-fe-autofocus>automatically
21460 <a href=#nested-browsing-context>nested browsing context</a> of the <code><a href=#the-iframe-element>iframe</a></code> is
21461 <a href=#navigate title=navigate>navigated</a>. Removing then, or removing
21462 the entire <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code>
21483 visible in the <code title=dom-document-cookie><a href=#dom-document-cookie>document.cookie</a></code> IDL
21487 user-provided HTML using the <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> MIME
21521 <pre><a href=D>Link</a></pre>
21524 <code><a href=#text/html>text/html</a></code>.</p>
21527 set. Scripts are disabled, because the <code><a href=#the-iframe-element>iframe</a></code> in A has
21528 scripts disabled, and this overrides the <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>
21529 keyword set on the <code><a href=#the-iframe-element>iframe</a></code> in B. Forms are also
21530 disabled, because the inner <code><a href=#the-iframe-element>iframe</a></code> (in B) does not
21531 have the <code title=attr-iframe-sandbox-allow-forms><a href=#attr-iframe-sandbox-allow-forms>allow-forms</a></code> keyword
21534 <p>Suppose now that a script in A removes all the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attributes in A and
21536 link in C, loading page D into the <code><a href=#the-iframe-element>iframe</a></code> in B, page D
21537 would now act as if the <code><a href=#the-iframe-element>iframe</a></code> in B had the <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21538 and <code title=attr-iframe-sandbox-allow-forms><a href=#attr-iframe-sandbox-allow-forms>allow-forms</a></code> keywords
21539 set, because that was the state of the <a href=#nested-browsing-context>nested browsing
21540 context</a> in the <code><a href=#the-iframe-element>iframe</a></code> in A when page B was
21543 <p>Generally speaking, dynamically removing or changing the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute is
21550 same server as the file containing the <code><a href=#the-iframe-element>iframe</a></code> element
21551 by labeling them as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> instead of
21552 <code><a href=#text/html>text/html</a></code>. This ensures that scripts in the files are
21555 pages directly, without the protection of the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute.</p>
21557 <p class=warning>If the <code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>
21558 keyword is set along with <code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>
21559 keyword, and the file is from the <a href=#same-origin>same origin</a> as the
21560 <code><a href=#the-iframe-element>iframe</a></code>'s <code><a href=#document>Document</a></code>, then a script in the
21561 "sandboxed" iframe could just reach out, remove the <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code> attribute, and then
21569 attribute is a <a href=#boolean-attribute>boolean attribute</a>. When specified, it
21570 indicates that the <code><a href=#the-iframe-element>iframe</a></code> element's <a href=#browsing-context>browsing
21574 attribute is set on an <code><a href=#the-iframe-element>iframe</a></code> element whose owner
21575 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> did not have
21576 the <a href=#sandboxed-seamless-iframes-flag>sandboxed seamless iframes flag</a> set when that
21577 <code><a href
21578 <a href=#browsing-context>browsing context</a>'s <a href=#active-document>active document</a> has the
21579 <a href=#same-origin>same origin</a> as the <code><a href=#the-iframe-element>iframe</a></code> element's
21580 document, or the <a href=#browsing-context>browsing context</a>'s <a href=#active-document>active
21581 document</a>'s <em><a href="#the-document's-address" title="the document's
21582 address">address</a></em> has the <a href=#same-origin>same origin</a> as the
21583 <code><a href=#the-iframe-element>iframe</a></code> element's document, the following requirements
21589 context flag</dfn> to true for that <a href=#browsing-context>browsing
21590 context</a>. This will <a href=#seamlessLinks>cause links to
21594 the style sheets that apply to the <code><a href=#the-iframe-element>iframe</a></code> element to
21595 the cascade of the <a href=#active-document>active document</a> of the
21596 <code><a href=#the-iframe-element>iframe</a></code> element's <a href=#nested-browsing-context>nested browsing context</a>,
21602 the <a href=#active-document>active document</a> of the <code><a href=#the-iframe-element>iframe</a></code>
21603 element's <a href=#nested-browsing-context>nested browsing context</a> as being a child of
21604 the <code><a href=#the-iframe-element>iframe</a></code> element. (Thus inherited properties on the
21605 root element of the document in the <code><a href=#the-iframe-element>iframe</a></code> will
21607 <code><a href=#the-iframe-element>iframe</a></code> element instead of taking their initial
21611 should set the intrinsic width of the <code><a href=#the-iframe-element>iframe</a></code> to the
21616 agent should set the intrinsic height of the <code><a href=#the-iframe-element>iframe</a></code> to
21618 <code><a href=#the-iframe-element>iframe</a></code> at its current width (as given in the previous
21621 <code><a href=#the-iframe-element>iframe</a></code> was aligned with the origin of that content's
21628 <a href=#active-document>active document</a> of the <a href=#nested-browsing-context>nested browsing
21629 context</a> of the <code><a href=#the-iframe-element>iframe</a></code> to zero.</p>
21640 <li><p>In speech media, the user agent should render the <a href=#nested-browsing-context>nested
21646 <p>User agents should, in general, act as if the <a href=#active-document>active
21647 document</a> of the <code><a href=#the-iframe-element>iframe</a></code>'s <a href=#nested-browsing-context>nested browsing
21649 <code><a href=#the-iframe-element>iframe</a></code> is in.</p>
21658 </ul><p>If the attribute is not specified, or if the <a href=#origin>origin</a>
21660 render the <a href=#nested-browsing-context>nested browsing context</a> in a manner that is
21661 clearly distinguishable as a separate <a href=#browsing-context>browsing context</a>,
21662 and the <a href=#seamless-browsing-context-flag>seamless browsing context flag</a> must be set to
21663 false for that <a href=#browsing-context>browsing context</a>.</p>
21666 above conditions whenever the <a href=#active-document>active document</a> of the
21667 <a href=#nested-browsing-context>nested browsing context</a> of the <code><a href=#the-iframe-element>iframe</a></code>
21668 changes, such that the <a href=#seamless-browsing-context-flag>seamless browsing context flag</a>
21669 gets unset if the <a href=#nested-browsing-context>nested browsing context</a> is <a href=#navigate title=navigate>navigated</a> to another origin.</p>
21679 client-side include using an <code><a href=#the-iframe-element>iframe</a></code>. Any links in the
21680 <code><a href=#the-iframe-element>iframe</a></code> will, in new user agents, be automatically
21681 opened in the <code><a href=#the-iframe-element>iframe</a></code>'s parent browsing context; for
21682 legacy user agents, the site could also include a <code><a href=#the-base-element>base</a></code>
21683 element with a <code title=attr-base-target><a href=#attr-base-target>target</a></code>
21695 <hr><p>The <code><a href=#the-iframe-element>iframe</a></code> element supports <a href=#dimension-attributes>dimension
21699 <p>An <code><a href=#the-iframe-element>iframe</a></code> element never has <a href=#fallback-content>fallback
21700 content</a>, as it will always create a nested <a href=#browsing-context>browsing
21704 <p>Descendants of <code><a href=#the-iframe-element>iframe</a></code> elements represent
21706 <code><a href=#the-iframe-element>iframe</a></code> elements, the contents would be parsed as markup
21709 <p>When used in <a href=#html-documents>HTML documents</a>, the allowed content
21710 model of <code><a href=#the-iframe-element>iframe</a></code> elements is text, except that invoking
21711 the <a href=#html-fragment-parsing-algorithm>HTML fragment parsing algorithm</a> with the
21712 <code><a href=#the-iframe-element>iframe</a></code> element as the <var title="">context</var>
21714 result in a list of nodes that are all <a href=#phrasing-content>phrasing
21715 content</a>, with no <a href=#parse-error title="parse error">parse
21716 errors</a> having occurred, with no <code><a href=#script>script</a></code> elements
21721 <p>The <code><a href=#the-iframe-element>iframe</a></code> element must be empty in <a href=#xml-documents>XML
21724 <p class=note>The <a href=#html-parser>HTML parser</a> treats markup inside
21725 <code><a href=#the-iframe-element>iframe</a></code> elements as text.</p>
21730 <a href=#reflect>reflect</a> the respective content attributes of the same
21734 IDL attribute must return the <code><a href=#document>Document</a></code> object of the
21735 <a href=#active-document>active document</a> of the <code><a href=#the-iframe-element>iframe</a></code> element's
21736 <a href=#nested-browsing-context>nested browsing context</a>.</p>
21739 IDL attribute must return the <code><a href=#windowproxy>WindowProxy</a></code> object of the
21740 <code><a href=#the-iframe-element>iframe</a></code> element's <a href=#nested-browsing-context>nested browsing
21747 <p>Here is an example of a page using an <code><a href=#the-iframe-element>iframe</a></code> to
21777 <dd><a href=#flow-content>Flow content</a>.</dd>
21778 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
21779 <dd><a href=#embedded-content>Embedded content</a>.</dd>
21780 <dd><a href=#interactive-content>Interactive content</a>.</dd>
21782 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
21786 <dd><a href=#global-attributes>Global attributes</a></dd>
21787 <dd><code title=attr-embed-src><a href=#attr-embed-src>src</a></code></dd>
21788 <dd><code title=attr-embed-type><a href=#attr-embed-type>type</a></code></dd>
21789 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
21790 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
21794 <pre class=idl>interface <dfn id=htmlembedelement>HTMLEmbedElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
21795 attribute DOMString <a href=#dom-embed-src title=dom-embed-src>src</a>;
21796 attribute DOMString <a href=#dom-embed-type title=dom-embed-type>type</a>;
21797 attribute DOMString <a href=#dom-dim-width title=dom-dim-width>width</a>;
21798 attribute DOMString <a href=#dom-dim-height title=dom-dim-height>height</a>;
21802 <code><a href=#the-embed-element>embed</a></code> element, the node may also support other
21806 </dl><p>The <code><a href=#the-embed-element>embed</a></code> element <a href=#represents>represents</a> an
21812 present, must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially
21816 attribute, if present, gives the <a href=#mime-type>MIME type</a> by which the
21817 plugin to instantiate is selected. The value must be a <a href=#valid-mime-type>valid
21818 MIME type</a>. If both the <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute and the <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute are present, then the
21819 <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute must specify the
21820 same type as the <a href=#content-type title=Content-Type>explicit Content-Type
21821 metadata</a> of the resource given by the <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute.</p>
21825 <p>When the element is created with neither a <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute nor a <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute, and when attributes
21827 anymore, and when the element has a <a href=#media-element>media element</a>
21828 ancestor, and when the element has an ancestor <code><a href=#the-object-element>object</a></code>
21829 element that is <em>not</em> showing its <a href=#fallback-content>fallback
21831 removed, and the <code><a href=#the-embed-element>embed</a></code> element represents nothing.</p>
21835 <ul><li>the <a href=#sandboxed-plugins-browsing-context-flag>sandboxed plugins browsing context flag</a> was
21836 set on the <a href=#browsing-context>browsing context</a> for which the
21837 <code><a href=#the-embed-element>embed</a></code> element's <code><a href=#document>Document</a></code> is the
21838 <a href=#active-document>active document</a> when that <code><a href=#document>Document</a></code> was
21841 <li>the <code><a href=#the-embed-element>embed</a></code> element's <code><a href=#document>Document</a></code> was
21842 parsed from a resource whose <a href=#content-type-sniffing-0 title="Content-Type
21843 sniffing">sniffed type</a> as determined during <a href=#navigate title=navigate>navigation</a> is
21844 <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code></li>
21846 </ul><p>...then the user agent must render the <code><a href=#the-embed-element>embed</a></code> element
21847 in a manner that conveys that the <a href=#plugin>plugin</a> was
21849 the sandbox and instantiate the <a href=#plugin>plugin</a> anyway; if the
21860 <p>An <code><a href=#the-embed-element>embed</a></code> element is said to be <dfn id=concept-embed-active title=concept-embed-active>potentially active</dfn> when the
21863 <ul class=brief><li>The element is <a href=#in-a-document title="in a document">in a <code>Document</code></a>.</li>
21864 <li>The element's <code><a href=#document>Document</a></code> is <a href=#fully-active>fully active</a>.</li>
21865 <li>The element has either a <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute set or a <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute set (or both).</li>
21866 <li>The element's <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute is either absent or its value is the empty string.</li>
21867 <li>The element is not in a <code><a href=#document>Document</a></code> whose <a href=#browsing-context>browsing context</a> had the <a href=#sandboxed-plugins-browsing-context-flag>sandboxed plugins browsing context flag</a> set when the <code><a href=#document>Document</a></code> was created (unless this has been overridden as described above).</li>
21868 <li>The element's <code><a href=#document>Document</a></code> was not parsed from a resource whose <a href=#content-type-sniffing-0 title="Content-Type sniffing">sniffed type</a> as determined during <a href=#navigate title=navigate>navigation</a> is <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> (unless this has been overridden as described above).</li>
21869 <li>The element is not a descendant of a <a href=#media-element>media element</a>.</li>
21870 <li>The element is not a descendant of an <code><a href=#the-object-element>object</a></code> element that is not showing its <a href=#fallback-content>fallback content</a>.</li>
21871 </ul><p>Whenever an <code><a href=#the-embed-element>embed</a></code> element that was not <a href=#concept-embed-active title=concept-embed-active>potentially active</a> becomes <a href=#concept-embed-active title=concept-embed-active>potentially active</a>, and whenever
21872 a <a href=#concept-embed-active title=concept-embed-active>potentially active</a>
21873 <code><a href=#the-embed-element>embed</a></code> element's <code title=attr-embed-type><a href=#attr-embed-type>src</a></code> attribute is set, changed, or
21874 removed, and whenever a <a href=#concept-embed-active title=concept-embed-active>potentially active</a>
21875 <code><a href=#the-embed-element>embed</a></code> element's <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute is set, changed, or
21879 <dl class=switch><dt>If the element has a <code title=attr-embed-src><a href=#attr-embed-src>src</a></code>
21884 <p>The user agent must <a href=#resolve-a-url title="resolve a url">resolve</a>
21885 the value of the element's <code title=attr-embed-src><a href=#attr-embed-src>src</a></code>
21887 user agent should <a href=#fetch>fetch</a> the resulting <a href=#absolute-url>absolute
21888 URL</a>, from the element's <a href=#browsing-context-scope-origin>browsing context scope
21890 sensitive -->. The <a href=#concept-task title=concept-task>task</a> that is
21891 <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking
21892 task source</a> once the resource has been <a href=#fetch title=fetch>fetched</a> must find and instantiate an
21893 appropriate <a href=#plugin>plugin</a> based on the <a href=#concept-embed-type title=concept-embed-type>content's type</a>, and hand that
21894 <a href=#plugin>plugin</a> the content of the resource, replacing any
21898 <p>Fetching the resource must <a href=#delay-the-load-event>delay the load event</a> of
21912 <dt>If the element has no <code title=attr-embed-src><a href=#attr-embed-src>src</a></code>
21916 <a href=#plugin>plugin</a> based on the value of the <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute.</p>
21918 </dl><p>Whenever an <code><a href=#the-embed-element>embed</a></code> element that was <a href=#concept-embed-active title=concept-embed-active>potentially active</a> stops being
21919 <a href=#concept-embed-active title=concept-embed-active>potentially active</a>, any
21920 <a href=#plugin>plugin</a> that had been instantiated for that element must
21923 <p class=note>The <code><a href=#the-embed-element>embed</a></code> element is unaffected by the
21930 <ol><li><p>If the element has a <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute, and that attribute's
21931 value is a type that a <a href=#plugin>plugin</a> supports, then the value
21932 of the <code title=attr-embed-type><a href=#attr-embed-type>type</a></code> attribute is the
21933 <a href=#concept-embed-type title=concept-embed-type>content's type</a>.</li>
21941 <p>Otherwise, if the <a href=#url-path title=url-path><path></a>
21942 component of the <a href=#url>URL</a> of the specified resource (after
21943 any redirects) matches a pattern that a <a href=#plugin>plugin</a>
21944 supports, then the <a href=#concept-embed-type title=concept-embed-type>content's
21948 handle resources with <a href=#url-path title=url-path><path></a>
21956 <li><p>Otherwise, if the specified resource has <a href=#content-type title=Content-Type>explicit Content-Type metadata</a>, then
21957 that is the <a href=#concept-embed-type title=concept-embed-type>content's
21961 appropriate <a href=#plugin>plugin</a> for it.</li>
21965 </ol><p>The <code><a href=#the-embed-element>embed</a></code> element has no <a href=#fallback-content>fallback
21971 the response code was a 2xx code <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>) must be
21981 <p>Any namespace-less attribute other than <code title=attr-embed-name><a href=#attr-embed-name>name</a></code>, <code title=attr-embed-align><a href=#attr-embed-align>align</a></code>, <code title=attr-embed-hspace><a href=#attr-embed-hspace>hspace</a></code>, and <code title=attr-embed-vspace><a href=#attr-embed-vspace>vspace</a></code> <!-- when editing, see also
21982 note below --> may be specified on the <code><a href=#the-embed-element>embed</a></code> element,
21983 so long as its name is <a href=#xml-compatible>XML-compatible</a> and contains no
21986 parameters to the <a href=#plugin>plugin</a>.</p>
21988 <p class=note>All attributes in <a href=#html-documents>HTML documents</a> get
21994 <a href=#plugin>plugin</a>.</p>
21999 attributes of the <code><a href=#the-embed-element>embed</a></code> element that have no namespace
22000 to the <a href=#plugin>plugin</a> used, when it is instantiated.</p>
22002 <p>If the <a href=#plugin>plugin</a> instantiated for the
22003 <code><a href=#the-embed-element>embed</a></code> element supports a scriptable interface, the
22004 <code><a href=#htmlembedelement>HTMLEmbedElement</a></code> object representing the element should
22009 <p>The <code><a href=#the-embed-element>embed</a></code> element supports <a href=#dimension-attributes>dimension
22015 <a href=#reflect>reflect</a> the respective content attributes of the same
22037 <code><a href=#the-object-element>object</a></code> element instead:</p>
22051 <dd><a href=#flow-content>Flow content</a>.</dd>
22052 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
22053 <dd><a href=#embedded-content>Embedded content</a>.</dd>
22054 <dd>If the element has a <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute: <a href=#interactive-content>Interactive content</a>.</dd> <!-- also when showing a plugin or a nested browsing context, but checking that statically is hard...) -->
22055 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-submit title=category-submit>submittable</a>, <a href=#form-associated-element>form-associated element</a>.</dd>
22057 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
22059 <dd>Zero or more <code><a href=#the-param-element>param</a></code> elements, then, <a href=#transparent>transparent</a>.</dd>
22061 <dd><a href=#global-attributes>Global attributes</a></dd>
22062 <dd><code title=attr-object-data><a href=#attr-object-data>data</a></code></dd>
22063 <dd><code title=attr-object-type><a href=#attr-object-type>type</a></code></dd>
22064 <dd><code title=attr-object-name><a href=#attr-object-name>name</a></code></dd>
22065 <dd><code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code></dd>
22066 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
22067 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
22068 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
22071 <pre class=idl>interface <dfn id=htmlobjectelement>HTMLObjectElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
22072 attribute DOMString <a href=#dom-object-data title=dom-object-data>data</a>;
22073 attribute DOMString <a href=#dom-object-type title=dom-object-type>type</a>;
22074 attribute DOMString <a href=#dom-object-name title=dom-object-name>name</a>;
22075 attribute DOMString <a href=#dom-object-usemap title=dom-object-useMap>useMap</a>;
22076 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
22077 attribute DOMString <a href=#dom-dim-width title=dom-dim-width>width</a>;
22078 attribute DOMString <a href=#dom-dim-height title=dom-dim-height>height</a>;
22079 readonly attribute Document <a href=#dom-object-contentdocument title=dom-object-contentDocument>contentDocument</a>;
22080 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-object-contentwindow title=dom-object-contentWindow>contentWindow</a>;
22082 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
22083 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
22084 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
22085 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
22086 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
22090 <code><a href=#the-object-element>object</a></code> element, the node also supports other
22094 </dl><p>The <code><a href=#the-object-element>object</a></code> element can represent an external
22096 be treated as an image, as a <a href=#nested-browsing-context>nested browsing context</a>,
22098 <a href=#plugin>plugin</a>.</p>
22102 present, the attribute must be a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty
22107 present, the attribute must be a <a href=#valid-mime-type>valid MIME type</a>.</p>
22109 <p>At least one of either the <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute or the <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute must be present.</p>
22112 attribute, if present, must be a <a href=#valid-browsing-context-name>valid browsing context
22113 name</a>. The given value is used to name the <a href=#nested-browsing-context>nested
22119 <a href=#stack-of-open-elements>stack of open elements</a> of an <a href=#html-parser>HTML parser</a>
22120 or <a href
22121 <a href=#insert-an-element-into-a-document title="insert an element into a document">inserted into a
22122 document</a> or <a href=#remove-an-element-from-a-document title="remove an element from a
22124 <code><a href=#document>Document</a></code> changes whether it is <a href=#fully-active>fully
22125 active</a>; and whenever an ancestor <code><a href=#the-object-element>object</a></code> element
22126 changes to or from showing its <a href=#fallback-content>fallback content</a>; and
22127 whenever the element's <code title=attr-object-classid><a href=#attr-object-classid>classid</a></code> attribute is set,
22128 changed, or removed; and, when its <code title=attr-object-classid><a href=#attr-object-classid>classid</a></code> attribute is not present,
22129 whenever its <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute is
22130 set, changed, or removed; and, when neither its <code title=attr-object-classid><a href=#attr-object-classid>classid</a></code> attribute nor its <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute are present, whenever
22131 its <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute is set,
22132 changed, or removed: the user agent must <a href=#queue-a-task>queue a task</a>
22134 <code><a href=#the-object-element>object</a></code> element represents. The <a href=#task-source>task source</a>
22135 for this <a href=#concept-task title=concept-task>task</a> is the <a href=#dom-manipulation-task-source>DOM
22142 <code><a href=#the-object-element>object</a></code> element's <a href=#fallback-content>fallback content</a> be
22147 <a href=#fallback-content>fallback content</a> to be shown because that content
22154 <p>If the element has an ancestor <a href=#media-element>media element</a>, or
22155 has an ancestor <code><a href=#the-object-element>object</a></code> element that is <em>not</em>
22156 showing its <a href=#fallback-content>fallback content</a>, or if the element is
22157 not <a href=#in-a-document title="in a document">in a <code>Document</code></a>
22158 with a <a href=#browsing-context>browsing context</a>, or if the element's
22159 <code><a href=#document>Document</a></code> is not <a href=#fully-active>fully active</a>, or if the
22160 element is still in the <a href=#stack-of-open-elements>stack of open elements</a> of an
22161 <a href=#html-parser>HTML parser</a> or <a href=#xml-parser>XML parser</a>, then jump to
22171 <p>If the <code title=attr-object-classid><a href=#attr-object-classid>classid</a></code>
22173 then: if the user agent can find a <a href=#plugin>plugin</a> suitable
22174 according to the value of the <code title=attr-object-classid><a href=#attr-object-classid>classid</a></code> attribute, and <a href=#sandboxPluginObject>plugins aren't being sandboxed</a>,
22175 then that <a href=#plugin>plugin</a> <a href=#object-plugin>should be
22176 used</a>, and the value of the <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute, if any, should be
22177 passed to the <a href=#plugin>plugin</a>. If no suitable
22178 <a href=#plugin>plugin</a> can be found, or if the <a href=#plugin>plugin</a>
22210 <li><p>If the <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute
22213 <ol><li><p>If the <code title=attr-object-type><a href=#attr-object-type>type</a></code>
22216 <a href=#plugin>plugin</a> for, then the user agent may jump to the last
22220 <li><p><a href=#resolve-a-url title="resolve a url">Resolve</a> the
22221 <a href=#url>URL</a> specified by the <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute, relative to the
22224 <li><p>If that failed, <a href=#fire-a-simple-event>fire a simple event</a> named
22230 <p><a href=#fetch>Fetch</a> the resulting <a href=#absolute-url>absolute URL</a>,
22231 from the element's <a href=#browsing-context-scope-origin>browsing context scope origin</a> if
22236 must <a href=#delay-the-load-event>delay the load event</a> of the element's document
22237 until the <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking task
22238 source</a> once the resource has been <a href=#fetch title=fetch>fetched</a> (defined next) has been run.</p>
22246 <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue
22247 a task">queued</a> by the <a href=#networking-task-source>networking task source</a>
22254 there was a DNS error), <a href=#fire-a-simple-event>fire a simple event</a> named
22326 <a href=#content-type title=Content-Type>associated Content-Type
22328 type</var> be the type specified in <a href=#content-type title=Content-Type>the resource's Content-Type
22336 <p>If there is a <code title=attr-object-type><a href=#attr-object-type>type</a></code>
22337 attribute present on the <code><a href=#the-object-element>object</a></code> element, and that
22339 but it <em>is</em> a type that a <a href=#plugin>plugin</a> supports,
22341 specified in that <code title=attr-object-type><a href=#attr-object-type>type</a></code>
22352 <dl class=switch><dt>The resource has <a href=#content-type title=Content-Type>associated
22365 <p>If the type specified in <a href=#content-type title=Content-Type>the
22368 <a href=#content-type-sniffing:-text-or-binary title="Content-Type sniffing: text or binary">rules
22377 <p>If the type specified in <a href=#content-type title=Content-Type>the
22387 <a href=#content-type title=Content-Type>the resource's Content-Type
22395 <p>If there is a <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute present on
22396 the <code><a href=#the-object-element>object</a></code> element, and its value is not
22402 <p>If the attribute's value is a type that a <a href=#plugin>plugin</a> supports, or
22403 the attribute's value is a type that starts with "<code>image/</code>" that is not also an <a href=#xml-mime-type>XML MIME type</a>,
22404 then let the <var title="">resource type</var> be the type specified in that <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute.</p>
22418 <dt>The resource does not have <a href=#content-type title=Content-Type>associated Content-Type
22425 <p>If there is a <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute present on
22426 the <code><a href=#the-object-element>object</a></code> element, then let the <var title="">tentative type</var> be the type specified in that
22427 <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute.</p>
22430 <a href=#content-type-sniffing-0 title="content-type sniffing">sniffed type of the
22454 <p>If the <a href=#url-path title=url-path><path></a> component
22455 of the <a href=#url>URL</a> of the specified resource (after any
22456 redirects) matches a pattern that a <a href=#plugin>plugin</a>
22461 handle resources with <a href=#url-path title=url-path><path></a> components that end with
22480 <a href=#plugin>plugin</a> supports</dt>
22484 <p>If <a href=#sandboxPluginObject>plugins are being
22488 <p>Otherwise, the user agent should <a href=#object-plugin>use the plugin that supports <var title="">resource type</var></a> and pass the content of the
22489 resource to that <a href=#plugin>plugin</a>. If the
22490 <a href=#plugin>plugin</a> reports an error, then jump to the last
22496 <dt>If the <var title="">resource type</var> is an <a href=#xml-mime-type>XML MIME
22504 <p>The <code><a href=#the-object-element>object</a></code> element must be associated with a
22505 newly created <a href=#nested-browsing-context>nested browsing context</a>, if it does
22508 <p>If the <a href=#url>URL</a> of the given resource is not
22509 <code><a href=#about:blank>about:blank</a></code>, the element's <a href=#nested-browsing-context>nested browsing
22510 context</a> must then be <a href=#navigate title=navigate>navigated</a> to that resource, with
22511 <a href=#replacement-enabled>replacement enabled</a>, and with the
22512 <code><a href=#the-object-element>object</a></code> element's document's <a href=#browsing-context>browsing
22513 context</a> as the <a href=#source-browsing-context>source browsing
22514 context</a>. (The <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute of the
22515 <code><a href=#the-object-element>object</a></code> element doesn't get updated if the
22519 <p>If the <a href=#url>URL</a> of the given resource <em>is</em>
22520 <code><a href=#about:blank>about:blank</a></code>, then, instead, the user agent must
22521 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
22523 <code><a href=#the-object-element>object</a></code> element.</p>
22525 <p>The <code><a href=#the-object-element>object</a></code> element <a href=#represents>represents</a> the
22526 <a href=#nested-browsing-context>nested browsing context</a>.</p>
22528 <p>If the <code title=attr-object-name><a href=#attr-object-name>name</a></code> attribute
22529 is present, the <a href=#browsing-context-name>browsing context name</a> must be set
22530 to the value of this attribute; otherwise, the <a href=#browsing-context-name>browsing
22533 <p class=note>It's possible that the <a href=#navigate title=navigate>navigation</a> of the <a href=#browsing-context>browsing
22535 different <a href=#application-cache>application cache</a>. Even if the resource
22537 part of a <a href=#nested-browsing-context>nested browsing context</a>; this algorithm
22551 <p>Apply the <a href=#content-type-sniffing:-image title="content-type sniffing: image">image
22554 <p>The <code><a href=#the-object-element>object</a></code> element <a href=#represents>represents</a> the
22555 specified image. The image is not a <a href=#nested-browsing-context>nested browsing
22581 <code><a href=#the-object-element>object</a></code> element represents.</p>
22585 <p>Once the resource is completely loaded, <a href=#queue-a-task>queue a
22586 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load>load</code> at the element.</p>
22588 <p>The <a href=#task-source>task source</a> for this task<!--tasks mentioned
22589 in this section--> is the <a href=#dom-manipulation-task-source>DOM manipulation task
22596 <li><p>If the <code title=attr-object-data><a href=#attr-object-data>data</a></code> attribute
22597 is absent but the <code title=attr-object-type><a href=#attr-object-type>type</a></code>
22598 attribute is present, <a href=#sandboxPluginObject>plugins aren't
22600 <a href=#plugin>plugin</a> suitable according to the value of the <code title=attr-object-type><a href=#attr-object-type>type</a></code> attribute, then that
22601 <a href=#plugin>plugin</a> <a href=#object-plugin>should be used</a>. If
22602 no suitable <a href=#plugin>plugin</a> can be found, or if the
22603 <a href=#plugin>plugin</a> reports an error, jump to the next step
22606 <li><p>(Fallback.) The <code><a href=#the-object-element>object</a></code> element
22607 <a href=#represents>represents</a> the element's children, ignoring any
22608 leading <code><a href=#the-param-element>param</a></code> element children. This is the element's
22609 <a href=#fallback-content>fallback content</a>. If the element has an instantiated
22610 <a href=#plugin>plugin</a>, then unload it.</li>
22613 <a href=#plugin>plugin</a>, the user agent should pass to the
22614 <a href=#plugin>plugin</a> used the names and values of all the attributes
22618 followed by all the names and values of <a href=#concept-param-parameter title=concept-param-parameter>parameters</a> given by
22619 <code><a href=#the-param-element>param</a></code> elements that are children of the
22620 <code><a href=#the-object-element>object</a></code> element, in <a href=#tree-order>tree order</a>. If the
22621 <a href=#plugin>plugin</a> supports a scriptable interface, the
22622 <code><a href=#htmlobjectelement>HTMLObjectElement</a></code> object representing the element
22623 should expose that interface. The <code><a href=#the-object-element>object</a></code> element
22624 <a href=#represents>represents</a> the <a href=#plugin>plugin</a>. The
22625 <a href=#plugin>plugin</a> is not a nested <a href=#browsing-context>browsing
22630 <ul><li>the <a href=#sandboxed-plugins-browsing-context-flag>sandboxed plugins browsing context flag</a> was
22631 set on the <code><a href=#the-object-element>object</a></code> element's <code><a href=#document>Document</a></code>'s
22632 <a href=#browsing-context>browsing context</a> when the <code><a href=#document>Document</a></code> was
22635 <li>the <code><a href=#the-object-element>object</a></code> element's <code><a href=#document>Document</a></code> was
22636 parsed from a resource whose <a href=#content-type-sniffing-0 title="Content-Type
22637 sniffing">sniffed type</a> as determined during <a href=#navigate title=navigate>navigation</a> is
22638 <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code></li>
22641 find a <a href=#plugin>plugin</a>, even if one would otherwise have been
22650 <p>Due to the algorithm above, the contents of <code><a href=#the-object-element>object</a></code>
22651 elements act as <a href=#fallback-content>fallback content</a>, used only when
22653 error). This allows multiple <code><a href=#the-object-element>object</a></code> elements to be
22658 <p>Whenever the <code title=attr-object-name><a href=#attr-object-name>name</a></code> attribute
22659 is set, if the <code><a href=#the-object-element>object</a></code> element has a nested
22660 <a href=#browsing-context>browsing context</a>, its <a href=#browsing-context-name title="browsing context
22662 is removed, if the <code><a href=#the-object-element>object</a></code> element has a <a href=#browsing-context>browsing
22663 context</a>, the <a href=#browsing-context-name>browsing context name</a> must be set
22668 <p>The <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute,
22669 if present while the <code><a href=#the-object-element>object</a></code> element represents an
22670 image, can indicate that the object has an associated <a href=#image-map>image
22672 <code><a href=#the-object-element>object</a></code> element doesn't represent an image.</span></p>
22674 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
22675 explicitly associate the <code><a href=#the-object-element>object</a></code> element with its
22676 <a href=#form-owner>form owner</a>.</p>
22680 <p><strong>Constraint validation</strong>: <code><a href=#the-object-element>object</a></code>
22681 elements are always <a href=#barred-from-constraint-validation>barred from constraint
22686 <p>The <code><a href=#the-object-element>object</a></code> element supports <a href=#dimension-attributes>dimension
22692 <a href=#reflect>reflect</a> the respective content attributes of the same
22696 IDL attribute must return the <code><a href=#document>Document</a></code> object of the
22697 <a href=#active-document>active document</a> of the <code><a href=#the-object-element>object</a></code> element's
22698 <a href=#nested-browsing-context>nested browsing context</a>, if it has one; otherwise, it
22702 IDL attribute must return the <code><a href=#windowproxy>WindowProxy</a></code> object of the
22703 <code><a href=#the-object-element>object</a></code> element's <a href=#nested-browsing-context>nested browsing context</a>,
22706 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
22707 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
22708 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
22709 <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute is part of the
22717 using the <code><a href
22737 <code><a href=#the-object-element>object</a></code> element.</p>
22751 using the <code><a href=#video>video</a></code> element to show the video for those
22752 using user agents that support <code><a href=#video>video</a></code>, and finally
22754 a <code><a href=#video>video</a></code>-capable browser.</p>
22762 <a href="http://video.example.com/vids/315981">View video</a>.
22776 <dd>As a child of an <code><a href=#the-object-element>object</a></code> element, before any <a href=#flow-content>flow content</a>.</dd>
22780 <dd><a href=#global-attributes>Global attributes</a></dd>
22781 <dd><code title=attr-param-name><a href=#attr-param-name>name</a></code></dd>
22782 <dd><code title=attr-param-value><a href=#attr-param-value>value</a></code></dd>
22785 <pre class=idl>interface <dfn id=htmlparamelement>HTMLParamElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
22786 attribute DOMString <a href=#dom-param-name title=dom-param-name>name</a>;
22787 attribute DOMString <a href=#dom-param-value title=dom-param-value>value</a>;
22790 </dl><p>The <code><a href=#the-param-element>param</a></code> element defines parameters for plugins
22791 invoked by <code><a href=#the-object-element>object</a></code> elements. It does not <a href=#represents title=represents>represent</a> anything on its own.</p>
22804 <code><a href=#the-param-element>param</a></code> is an <code><a href=#the-object-element>object</a></code> element, then the
22809 <a href=#reflect>reflect</a> the respective content attributes of the same
22816 <p>The following example shows how the <code><a href=#the-param-element>param</a></code> element
22845 <dd><a href=#flow-content>Flow content</a>.</dd>
22846 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
22847 <dd><a href=#embedded-content>Embedded content</a>.</dd>
22848 <dd>If the element has a <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute: <a href=#interactive-content>Interactive content</a>.</dd>
22850 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
22852 <dd>If the element has a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute:
22854 zero or more <code><a href=#the-track-element>track</a></code> elements, then
22856 <a href=#transparent>transparent</a>, but with no <a href=#media-element>media element</a> descendants.</dd>
22857 <dd>If the element does not have a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute: one or more <code><a href=#the-source-element>source</a></code> elements, then
22859 zero or more <code><a href=#the-track-element>track</a></code> elements, then
22861 <a href=#transparent>transparent</a>, but with no <a href=#media-element>media element</a> descendants.</dd>
22863 <dd><a href=#global-attributes>Global attributes</a></dd>
22864 <dd><code title=attr-media-src><a href=#attr-media-src>src</a></code></dd>
22865 <dd><code title=attr-video-poster><a href=#attr-video-poster>poster</a></code></dd>
22866 <dd><code title=attr-media-preload><a href=#attr-media-preload>preload</a></code></dd>
22867 <dd><code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code></dd>
22868 <dd><code title=attr-media-loop><a href=#attr-media-loop>loop</a></code></dd>
22869 <dd><code title=attr-media-controls><a href=#attr-media-controls>controls</a></code></dd>
22870 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
22871 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
22874 <pre class=idl>interface <dfn id=htmlvideoelement>HTMLVideoElement</dfn> : <a href=#htmlmediaelement>HTMLMediaElement</a> {
22875 attribute DOMString <a href=#dom-dim-width title=dom-dim-width>width</a>;
22876 attribute DOMString <a href=#dom-dim-height title=dom-dim-height>height</a>;
22877 readonly attribute unsigned long <a href=#dom-video-videowidth title=dom-video-videoWidth>videoWidth</a>;
22878 readonly attribute unsigned long <a href=#dom-video-videoheight title=dom-video-videoHeight>videoHeight</a>;
22879 attribute DOMString <a href=#dom-video-poster title=dom-video-poster>poster</a>;
22882 </dl><p>A <code><a href=#video>video</a></code> element is used for playing videos or
22885 <p>Content may be provided inside the <code><a href=#video>video</a></code>
22888 not support <code><a href=#video>video</a></code>, so that legacy video plugins can be
22900 <p>The <code><a href=#video>video</a></code> element is a <a href=#media-element>media element</a>
22901 whose <a href=#media-data>media data</a> is ostensibly video data, possibly
22904 <p>The <code title=attr-media-src><a href=#attr-media-src>src</a></code>, <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code>, <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code>, <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code>, and <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attributes are <a href=#media-element-attributes title="media element attributes">the attributes common to all media
22910 must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
22912 used, then, when the element is created or when the <code title=attr-video-poster><a href=#attr-video-poster>poster</a></code> attribute is set, if its
22913 value is not the empty string, its value must be <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the element, and
22914 if that is successful, the resulting <a href=#absolute-url>absolute URL</a> must
22915 be <a href=#fetch title=fetch>fetched</a>, from the element's
22916 <code><a href=#document>Document</a></code>'s <a href=#origin>origin</a>; this must <a href=#delay-the-load-event>delay
22922 <p class=note>The image given by the <code title=attr-video-poster><a href=#attr-video-poster>poster</a></code> attribute, the <i><a href=#poster-frame>poster
22930 attribute must <a href=#reflect>reflect</a> the <code title=attr-video-poster><a href=#attr-video-poster>poster</a></code> content attribute.</p>
22932 <hr><p>When no video data is available (the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is either
22933 <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, or <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> but no video
22934 data has yet been obtained at all), the <code><a href=#video>video</a></code> element
22935 <a href=#represents>represents</a> either the <a href=#poster-frame>poster frame</a>, or
22938 <p>When a <code><a href=#video>video</a></code> element is <a href=#dom-media-paused title=dom-media-paused>paused</a> and the <a href=#current-playback-position title="current
22940 frame of video, the element <a href=#represents>represents</a> either the frame
22941 of video corresponding to the <a href=#current-playback-position title="current playback
22942 position">current playback position</a> or the <a href=#poster-frame>poster
22945 <p>Notwithstanding the above, the <a href=#poster-frame>poster frame</a> should
22946 be preferred over nothing, but the <a href=#poster-frame>poster frame</a> should
22949 <p>When a <code><a href=#video>video</a></code> element is <a href=#dom-media-paused title=dom-media-paused>paused</a> at any other position, the
22950 element <a href=#represents>represents</a> the frame of video corresponding to
22951 the <a href=#current-playback-position title="current playback position">current playback
22956 <p>When a <code><a href=#video>video</a></code> element is <a href=#potentially-playing>potentially
22957 playing</a>, it <a href=#represents>represents</a> the frame of video at the
22958 continuously increasing <a href=#current-playback-position title="current playback
22959 position">"current" position</a>. When the <a href=#current-playback-position>current playback
22961 longer the frame corresponding to the <a href=#current-playback-position>current playback
22964 played, be played synchronized with the <a href=#current-playback-position>current playback
22965 position</a>, at the specified <a href=#dom-media-volume title=dom-media-volume>volume</a> with the specified <a href=#dom-media-muted title=dom-media-muted>mute state</a>.</p>
22967 <p>When a <code><a href=#video>video</a></code> element is neither <a href=#potentially-playing>potentially
22968 playing</a> nor <a href=#dom-media-paused title=dom-media-paused>paused</a>
22969 (e.g. when seeking or stalled), the element <a href=#represents>represents</a>
22983 element <a href=#represents title=represents>represent</a> a link to an
22988 <dl class=domintro><dt><var title="">video</var> . <code title=dom-video-videoWidth><a href=#dom-video-videowidth>videoWidth</a></code></dt>
22989 <dt><var title="">video</var> . <code title=dom-video-videoHeight><a href=#dom-video-videoheight>videoHeight</a></code></dt>
23002 <a href=#media-resource>media resource</a> are the dimensions of the resource in
23012 attribute must return the <a href=#concept-video-intrinsic-width title=concept-video-intrinsic-width>intrinsic width</a> of the
23014 attribute must return the <a href=#concept-video-intrinsic-height title=concept-video-intrinsic-height>intrinsic height</a> of
23015 the video in CSS pixels. If the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, then the
23020 <p>The <code><a href=#video>video</a></code> element supports <a href=#dimension-attributes>dimension
23034 <p>The intrinsic width of a <code><a href=#video>video</a></code> element's playback
23035 area is the <a href=#concept-video-intrinsic-width title=concept-video-intrinsic-width>intrinsic
23037 it is the intrinsic width of the <a href=#poster-frame>poster frame</a>, if that
23040 <p>The intrinsic height of a <code><a href=#video>video</a></code> element's playback
23041 area is the <a href=#concept-video-intrinsic-height title=concept-video-intrinsic-height>intrinsic
23043 it is the intrinsic height of the <a href=#poster-frame>poster frame</a>, if that
23056 rendering unless the user agent is <a href=#expose-a-user-interface-to-the-user title="expose a user
23060 controls, even if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is absent.</p>
23107 <p><a href="tgif.vid">Download the video file</a>.</p></pre>
23143 <dd><a href=#flow-content>Flow content</a>.</dd>
23144 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
23145 <dd><a href=#embedded-content>Embedded content</a>.</dd>
23146 <dd>If the element has a <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute: <a href=#interactive-content>Interactive content</a>.</dd>
23148 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
23150 <dd>If the element has a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute:
23152 zero or more <code><a href=#the-track-element>track</a></code> elements, then
23154 <a href=#transparent>transparent</a>, but with no <a href=#media-element>media element</a> descendants.</dd>
23155 <dd>If the element does not have a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute: one or more <code><a href=#the-source-element>source</a></code> elements, then
23157 zero or more <code><a href=#the-track-element>track</a></code> elements, then
23159 <a href=#transparent>transparent</a>, but with no <a href=#media-element>media element</a> descendants.</dd>
23161 <dd><a href=#global-attributes>Global attributes</a></dd>
23162 <dd><code title=attr-media-src><a href=#attr-media-src>src</a></code></dd>
23163 <dd><code title=attr-media-preload><a href=#attr-media-preload>preload</a></code></dd>
23164 <dd><code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code></dd>
23165 <dd><code title=attr-media-loop><a href=#attr-media-loop>loop</a></code></dd>
23166 <dd><code title=attr-media-controls><a href=#attr-media-controls>controls</a></code></dd>
23169 <pre class=idl>[NamedConstructor=<a href=#dom-audio title=dom-Audio>Audio</a>(),
23170 NamedConstructor=<a href=#dom-audio-s title=dom-Audio-s>Audio</a>(in DOMString src)]
23171 interface <dfn id=htmlaudioelement>HTMLAudioElement</dfn> : <a href=#htmlmediaelement>HTMLMediaElement</a> {};</pre>
23173 </dl><p>An <code><a href=#audio>audio</a></code> element <a href=#represents>represents</a> a sound or
23193 <p>Content may be provided inside the <code><a href=#audio>audio</a></code>
23196 not support <code><a href=#audio>audio</a></code>, so that legacy audio plugins can be
23207 <p>The <code><a href=#audio>audio</a></code> element is a <a href=#media-element>media element</a>
23208 whose <a href=#media-data>media data</a> is ostensibly audio data.</p>
23210 <p>The <code title=attr-media-src><a href=#attr-media-src>src</a></code>, <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code>, <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code>, <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code>, and <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attributes are <a href=#media-element-attributes title="media element attributes">the attributes common to all media
23215 <p>When an <code><a href=#audio>audio</a></code> element is <a href=#potentially-playing>potentially
23217 the <a href=#current-playback-position>current playback position</a>, at the specified <a href=#dom-media-volume title=dom-media-volume>volume</a> with the specified <a href=#dom-media-muted title=dom-media-muted>mute state</a>.</p>
23219 <p>When an <code><a href=#audio>audio</a></code> element is not <a href=#potentially-playing>potentially
23224 <dl class=domintro><dt><var title="">audio</var> = new <code title=dom-Audio><a href=#dom-audio>Audio</a></code>( [ <var title="">url</var> ] )</dt>
23228 <p>Returns a new <code><a href=#audio>audio</a></code> element, with the <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute set to the value
23236 <code><a href=#htmlaudioelement>HTMLAudioElement</a></code> objects (in addition to the factory
23238 these must return a new <code><a href=#htmlaudioelement>HTMLAudioElement</a></code> object (a new
23239 <code><a href=#audio>audio</a></code> element). The element must have its <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code> attribute set to the
23240 literal value "<code title=attr-media-preload-auto><a href=#attr-media-preload-auto>auto</a></code>". If the <var title="">src</var> argument is present, the object created must have
23241 its <code title=attr-media-src><a href=#attr-media-src>src</a></code> content attribute set to
23243 <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23245 the <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing
23246 context</a> of the <code><a href=#window>Window</a></code> object on which the
23265 stereo. <a href="#- -refsWAVE">[WAVE]</a></p>
23289 <dd>As a child of a <a href=#media-element>media element</a>, before any <a href=#flow-content>flow content</a>
23291 or <code><a href=#the-track-element>track</a></code> elements.</dd>
23296 <dd><a href=#global-attributes>Global attributes</a></dd>
23297 <dd><code title=attr-source-src><a href=#attr-source-src>src</a></code></dd>
23298 <dd><code title=attr-source-type><a href=#attr-source-type>type</a></code></dd>
23299 <dd><code title=attr-source-media><a href=#attr-source-media>media</a></code></dd>
23302 <pre class=idl>interface <dfn id=htmlsourceelement>HTMLSourceElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
23303 attribute DOMString <a href=#dom-source-src title=dom-source-src>src</a>;
23304 attribute DOMString <a href=#dom-source-type title=dom-source-type>type</a>;
23305 attribute DOMString <a href=#dom-source-media title=dom-source-media>media</a>;
23308 </dl><p>The <code><a href=#the-source-element>source</a></code> element allows authors to specify
23309 multiple alternative <a href=#media-resource title="media resource">media
23310 resources</a> for <a href=#media-element title="media element">media
23311 elements</a>. It does not <a href=#represents title=represents>represent</a> anything on its own.</p>
23314 gives the address of the <a href=#media-resource>media resource</a>. The value must
23315 be a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
23319 attribute gives the type of the <a href=#media-resource>media resource</a>, to help
23320 the user agent determine if it can play this <a href=#media-resource>media
23322 a <a href=#valid-mime-type>valid MIME type</a>. The <code title="">codecs</code>
23324 how the resource is encoded. <a href=#refsRFC4281>[RFC4281]</a></p>
23328 <p>The following list shows some examples of how to use the <code title="">codecs=</code> MIME parameter in the <code title=attr-source-type><a href=#attr-source-type>type</a></code> attribute.</p>
23414 attribute gives the intended media type of the <a href=#media-resource>media
23416 <a href=#media-resource>media resource</a> is useful to the user before fetching
23417 it. Its value must be a <a href=#valid-media-query>valid media query</a>.</p>
23420 "<code title="">all</code>", meaning that by default the <a href=#media-resource>media
23425 <p>If a <code><a href=#the-source-element>source</a></code> element is inserted as a child of a
23426 <a href=#media-element>media element</a> that has no <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute and whose <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> has the value
23427 <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>, the user
23428 agent must invoke the <a href=#media-element>media element</a>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23432 <a href=#reflect>reflect</a> the respective content attributes of the same
23442 <code><a href=#the-source-element>source</a></code> element and trigger fallback behavior:</p>
23474 <dd>As a child of a <a href=#media-element>media element</a>, before any <a href=#flow-content>flow content</a>.</dd>
23478 <dd><a href=#global-attributes>Global attributes</a></dd>
23479 <dd><code title=attr-track-kind><a href=#attr-track-kind>kind</a></code></dd>
23480 <dd><code title=attr-track-label><a href=#attr-track-label>label</a></code></dd>
23481 <dd><code title=attr-track-src><a href=#attr-track-src>src</a></code></dd>
23482 <dd><code title=attr-track-srclang><a href=#attr-track-srclang>srclang</a></code></dd>
23485 <pre class=idl>interface <dfn id=htmltrackelement>HTMLTrackElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
23486 attribute DOMString <a href=#dom-track-kind title=dom-track-kind>kind</a>;
23487 attribute DOMString <a href=#dom-track-label title=dom-track-label>label</a>;
23488 attribute DOMString <a href=#dom-track-src title=dom-track-src>src</a>;
23489 attribute DOMString <a href=#dom-track-srclang title=dom-track-srclang>srclang</a>;
23491 readonly attribute <a href=#timedtrack>TimedTrack</a> <a href=#dom-track-track title=dom-track-track>track</a>;
23494 </dl><p>The <code><a href=#the-track-element>track</a></code> element allows authors to specify explicit
23495 external <a href=#timed-track title="timed track">timed tracks</a> for <a href=#media-element title="media element">media elements</a>. It does not <a href=#represents title=represents>represent</a> anything on its own.</p>
23498 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The following
23508 <td>Translation of the dialogue, suitable for when the sound is available but not understood (e.g. because the user does not understand the language of the <a href=#media-resource>media resource</a>'s soundtrack).
23514 <td>Textual descriptions of the video component of the <a href=#media-resource>media resource</a>, intended for audio synthesis when the visual component is unavailable (e.g. because the user is interacting with the application without a screen while driving, or because the user is blind).
23517 <td>Chapter titles, intended to be used for navigating the <a href=#media-resource>media resource</a>.
23522 the <a href=#attr-track-kind-captions title=attr-track-kind-captions>captions</a> state.</p>
23526 <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
23531 <p>If the element has a <code title=attr-track-src><a href=#attr-track-src>src</a></code>
23533 the attribute was set, could be successfully <a href=#resolve-a-url title="resolve a
23535 <dfn id=track-url>track URL</dfn> is the resulting <a href=#absolute-url>absolute
23536 URL</a>. Otherwise, the element's <a href=#track-url>track URL</a> is the
23544 the element's <code title=attr-track-kind><a href=#attr-track-kind>kind</a></code> attribute is
23545 in the <a href=#attr-track-kind-subtitles title=attr-track-kind-subtitles>subtitles</a>
23546 state. <a href=#refsBCP47>[BCP47]</a></p>
23550 <p>If the element has a <code title=attr-track-srclang><a href=#attr-track-srclang>srclang</a></code> attribute whose value is
23553 <a href=#track-language>track language</a>.</p>
23560 <p>The value of the <code title=attr-track-label><a href=#attr-track-label>label</a></code>
23562 string. Furthermore, there must not be two <code><a href=#the-track-element>track</a></code>
23563 element children of the same <a href=#media-element>media element</a> whose <code title=attr-track-kind><a href=#attr-track-kind>kind</a></code> attributes are in the same
23564 state, whose <code title=attr-track-srclang><a href=#attr-track-srclang>srclang</a></code>
23566 language, and whose <code title=attr-track-label><a href=#attr-track-label>label</a></code>
23571 <p>If the element has a <code title=attr-track-label><a href=#attr-track-label>label</a></code>
23574 element's <a href=#track-label>track label</a> is a user-agent defined string
23580 <dl class=domintro><dt><var title="">track</var> . <code title=dom-track-track><a href=#dom-track-track>track</a></code></dt>
23584 <p>Returns the <code><a href=#timedtrack>TimedTrack</a></code> object corresponding to the <a href=#timed-track>timed track</a> of the <code><a href=#the-track-element>track</a></code> element.</p>
23591 attribute must, on getting, return the <code><a href=#the-track-element>track</a></code> element's
23592 <a href=#timed-track>timed track</a>'s corresponding <code><a href=#timedtrack>TimedTrack</a></code>
23596 <a href=#reflect>reflect</a> the respective content attributes of the same
23609 <pre class=idl>interface <dfn id=htmlmediaelement>HTMLMediaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
23612 readonly attribute <a href=#mediaerror>MediaError</a> <a href=#dom-media-error title=dom-media-error>error</a>;
23615 attribute DOMString <a href=#dom-media-src title=dom-media-src>src</a>;
23616 readonly attribute DOMString <a href=#dom-media-currentsrc title=dom-media-currentSrc>currentSrc</a>;
23617 const unsigned short <a href=#dom-media-network_empty title=dom-media-NETWORK_EMPTY>NETWORK_EMPTY</a> = 0;
23618 const unsigned short <a href=#dom-media-network_idle title=dom-media-NETWORK_IDLE>NETWORK_IDLE</a> = 1;
23619 const unsigned short <a href=#dom-media-network_loading title=dom-media-NETWORK_LOADING>NETWORK_LOADING</a> = 2;
23620 const unsigned short <a href=#dom-media-network_no_source title=dom-media-NETWORK_NO_SOURCE>NETWORK_NO_SOURCE</a> = 3;
23621 readonly attribute unsigned short <a href=#dom-media-networkstate title=dom-media-networkState>networkState</a>;
23622 attribute DOMString <a href=#dom-media-preload title=dom-media-preload>preload</a>;
23625 --> readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-buffered title=dom-media-buffered>buffered</a>;
23626 void <a href=#dom-media-load title=dom-media-load>load</a>();
23627 DOMString <a href=#dom-navigator-canplaytype title=dom-navigator-canPlayType>canPlayType</a>(in DOMString type);
23630 const unsigned short <a href=#dom-media-have_nothing title=dom-media-HAVE_NOTHING>HAVE_NOTHING</a> = 0;
23631 const unsigned short <a href=#dom-media-have_metadata title=dom-media-HAVE_METADATA>HAVE_METADATA</a> = 1;
23632 const unsigned short <a href=#dom-media-have_current_data title=dom-media-HAVE_CURRENT_DATA>HAVE_CURRENT_DATA</a> = 2;
23633 const unsigned short <a href=#dom-media-have_future_data title=dom-media-HAVE_FUTURE_DATA>HAVE_FUTURE_DATA</a> = 3;
23634 const unsigned short <a href=#dom-media-have_enough_data title=dom-media-HAVE_ENOUGH_DATA>HAVE_ENOUGH_DATA</a> = 4;
23635 readonly attribute unsigned short <a href=#dom-media-readystate title=dom-media-readyState>readyState</a>;
23636 readonly attribute boolean <a href=#dom-media-seeking title=dom-media-seeking>seeking</a>;
23639 attribute float <a href=#dom-media-currenttime title=dom-media-currentTime>currentTime</a>;
23640 readonly attribute float <a href=#dom-media-starttime title=dom-media-startTime>startTime</a>;
23641 readonly attribute float <a href=#dom-media-duration title=dom-media-duration>duration</a>;
23642 readonly attribute boolean <a href=#dom-media-paused title=dom-media-paused>paused</a>;
23643 attribute float <a href=#dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate>defaultPlaybackRate</a>;
23644 attribute float <a href=#dom-media-playbackrate title=dom-media-playbackRate>playbackRate</a>;
23645 readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-played title=dom-media-played>played</a>;
23646 readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-seekable title=dom-media-seekable>seekable</a>;
23647 readonly attribute boolean <a href=#dom-media-ended title=dom-media-ended>ended</a>;
23648 attribute boolean <a href=#dom-media-autoplay title=dom-media-autoplay>autoplay</a>;
23649 attribute boolean <a href=#dom-media-loop title=dom-media-loop>loop</a>;
23650 void <a href=#dom-media-play title=dom-media-play>play</a>();
23651 void <a href=#dom-media-pause title=dom-media-pause>pause</a>();
23654 attribute boolean <a href=#dom-media-controls title=dom-media-controls>controls</a>;
23655 attribute float <a href=#dom-media-volume title=dom-media-volume>volume</a>;
23656 attribute boolean <a href=#dom-media-muted title=dom-media-muted>muted</a>;
23659 readonly attribute <a href=#timedtrack>TimedTrack</a>[] <span title=dom-media-tracks>tracks</span>;
23660 <a href=#mutabletimedtrack>MutableTimedTrack</a> <span title=dom-media-addTrack>addTrack</span>(in DOMString label, in DOMString kind, in DOMString language);
23664 <p>The <dfn id=media-element-attributes>media element attributes</dfn>, <code title=attr-media-src><a href=#attr-media-src>src</a></code>, <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code>, <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code>, <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code>, and <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code>, apply to all <a href=#media-element title="media element">media elements</a>. They are defined in
23701 <p><a href=#media-element title="media element">Media elements</a> are used to
23704 section applies equally to <a href=#media-element title="media element">media
23711 <p>Except where otherwise specified, the <a href=#task-source>task source</a>
23712 for all the tasks <a href=#queue-a-task title="queue a task">queued</a> in this
23722 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-error><a href=#dom-media-error>error</a></code></dt>
23726 <p>Returns a <code><a href=#mediaerror>MediaError</a></code> object representing the
23735 <p>All <a href=#media-element title="media element">media elements</a> have an
23737 encountered since its <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23739 getting, must return the <code><a href=#mediaerror>MediaError</a></code> object created for
23745 const unsigned short <a href=#dom-mediaerror-media_err_aborted title=dom-MediaError-MEDIA_ERR_ABORTED>MEDIA_ERR_ABORTED</a> = 1;
23746 const unsigned short <a href=#dom-mediaerror-media_err_network title=dom-MediaError-MEDIA_ERR_NETWORK>MEDIA_ERR_NETWORK</a> = 2;
23747 const unsigned short <a href=#dom-mediaerror-media_err_decode title=dom-MediaError-MEDIA_ERR_DECODE>MEDIA_ERR_DECODE</a> = 3;
23748 const unsigned short <a href=#dom-mediaerror-media_err_src_not_supported title=dom-MediaError-MEDIA_ERR_SRC_NOT_SUPPORTED>MEDIA_ERR_SRC_NOT_SUPPORTED</a> = 4;
23749 readonly attribute unsigned short <a href=#dom-mediaerror-code title=dom-MediaError-code>code</a>;
23752 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-error><a href=#dom-media-error>error</a></code> . <code title=dom-MediaError-code><a href=#dom-mediaerror-code>code</a></code></dt>
23763 attribute of a <code><a href=#mediaerror>MediaError</a></code> object must return the code
23770 <dd>The fetching process for the <a href=#media-resource>media resource</a> was
23776 stop fetching the <a href=#media-resource>media resource</a>, after the resource
23782 <a href=#media-resource>media resource</a>, after the resource was established to
23787 <dd>The <a href=#media-resource>media resource</a> indicated by the <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute was not suitable.</dd>
23792 attribute on <a href=#media-element title="media element">media elements</a> gives
23794 attribute, if present, must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty
23799 <p>If a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute of a
23800 <a href=#media-element>media element</a> is set or changed, the user agent must
23801 invoke the <a href=#media-element>media element</a>'s <a href=#media-element-load-algorithm>media element load
23802 algorithm</a>. (<em>Removing</em> the <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute does not do this, even
23803 if there are <code><a href=#the-source-element>source</a></code> elements present.)</p>
23806 attribute on <a href=#media-element title="media element">media elements</a> must
23807 <a href=#reflect>reflect</a> the content attribute of the same name.</p>
23811 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-currentSrc><a href=#dom-media-currentsrc>currentSrc</a></code></dt>
23815 <p>Returns the address of the current <a href=#media-resource>media resource</a>.</p>
23817 <p>Returns the empty string when there is no <a href=#media-resource>media resource</a>.</p>
23825 <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23830 <p class=note>There are two ways to specify a <a href=#media-resource>media
23831 resource</a>, the <code title=attr-media-src><a href=#attr-media-src>src</a></code>
23832 attribute, or <code><a href=#the-source-element>source</a></code> elements. The attribute overrides
23839 <p>A <a href=#media-resource>media resource</a> can be described in terms of its
23840 <em>type</em>, specifically a <a href=#mime-type>MIME type</a>, optionally
23841 with a <code title="">codecs</code> parameter. <a href=#refsRFC4281>[RFC4281]</a></p>
23857 <p>The <a href=#mime-type>MIME type</a> "<code title="">application/octet-stream</code>" with no parameters is
23858 never <a href=#a-type-that-the-user-agent-knows-it-cannot-render>a type that the user agent knows it cannot
23860 lack of any explicit <a href=#content-type title=Content-Type>Content-Type
23861 metadata</a> when it is used to label a potential <a href=#media-resource>media
23865 specification to the contrary, the <a href=#mime-type>MIME type</a> "<code title="">application/octet-stream</code>" when used <em>with</em>
23867 <a href=#a-type-that-the-user-agent-knows-it-cannot-render>a type that the user agent knows it cannot render</a>.</p>
23869 <dl class=domintro><dt><var title="">media</var> . <code title=dom-navigator-canPlayType><a href=#dom-navigator-canplaytype>canPlayType</a></code>(<var title="">type</var>)</dt>
23882 string if <var title="">type</var> is <a href=#a-type-that-the-user-agent-knows-it-cannot-render>a type that the user
23884 type represents a <a href=#media-resource>media resource</a> that it can render if
23885 used in with this <code><a href=#audio>audio</a></code> or <code><a href=#video>video</a></code> element;
23898 <code><a href=#video>video</a></code> element or a plugin:</p>
23901 <p><a href="playing-cats.nfv">Download video</a></p>
23927 <p class=note>The <code title=attr-source-type><a href=#attr-source-type>type</a></code>
23928 attribute of the <code><a href=#the-source-element>source</a></code> element allows the user agent
23935 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code></dt>
23946 <p>As <a href=#media-element title="media element">media elements</a> interact
23961 <dd>The element<span class=impl>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23962 algorithm</a> is active and</span> has selected a <a href=#media-resource title="media resource">resource</a>, but it is not actually
23971 <dd>The element<span class=impl>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23973 <a href=#media-resource title="media resource">resource</a> to use.</dd>
23977 <p>The <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
23978 algorithm</a> defined below describes exactly when the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute changes
23988 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-load><a href=#dom-media-load>load</a></code>()</dt>
23993 new <a href=#media-resource>media resource</a> from scratch.</p>
23999 <p>All <a href=#media-element title="media element">media elements</a> have an
24002 false state. While the <a href=#delaying-the-load-event-flag>delaying-the-load-event flag</a> is
24003 true, the element must <a href=#delay-the-load-event>delay the load event</a> of its
24007 method on a <a href=#media-element>media element</a> is invoked, the user agent
24008 must run the <a href=#media-element-load-algorithm>media element load algorithm</a>.</p>
24013 <ol><li><p>Abort any already-running instance of the <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24018 <p>If there are any <a href=#concept-task title=concept-task>tasks</a> from
24019 the <a href=#media-element>media element</a>'s <a href=#media-element-event-task-source>media element event task
24020 source</a> in one of the <a href=#task-queue title="task queue">task
24029 <li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> is set to <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code> or <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code>, <a href=#queue-a-task>queue a
24030 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-abort><a href=#event-media-abort>abort</a></code> at the <a href=#media-element>media
24035 <p>If the <a href=#media-element>media element</a>'s <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> is not set to
24036 <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>, then
24039 <ol><li><p>If a fetching process is in progress for the <a href=#media-element>media
24042 <li><p>Set the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24043 <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>.</li>
24046 <li><p><a href="#forget-the-media-element's-media-resource-specific-timed-tracks">Forget the media element's media-resource-specific
24050 <li><p>If <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is
24051 not set to <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, then set it
24054 <li><p>If the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code>
24057 <li><p>If <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is true,
24060 <li><p>Set the <a href=#current-playback-position>current playback position</a> to
24063 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24064 event</a> named <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code> at the <a href=#media-element>media
24069 <li><p>Set the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attribute to the
24070 value of the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>
24073 <li><p>Set the <code title=dom-media-error><a href=#dom-media-error>error</a></code> attribute
24074 to null and the <a href=#autoplaying-flag>autoplaying flag</a> to true.</li>
24076 <li><p>Invoke the <a href=#media-element>media element</a>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24081 <p class=note>Playback of any previously playing <a href=#media-resource>media
24087 algorithm</dfn> for a <a href=#media-element>media element</a> is as follows. This
24091 background with scripts and other <a href=#concept-task title=concept-task>tasks</a> running in parallel. In addition,
24092 this algorithm interacts closely with the <a href=#event-loop>event loop</a>
24093 mechanism; in particular, it has <a href=#synchronous-section title="synchronous
24095 the <a href=#event-loop>event loop</a> algorithm). Steps in such sections are
24098 <ol><!-- precondition: networkState == NETWORK_EMPTY at this point --><li><p>Set the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> to <code title=dom-media-NETWORK_NO_SOURCE><a href=#dom-media-network_no_source>NETWORK_NO_SOURCE</a></code>.</li>
24100 <li><p>Asynchronously <a href=#await-a-stable-state>await a stable state</a>, allowing
24101 the <a href=#concept-task title=concept-task>task</a> that invoked this
24102 algorithm to continue. The <a href=#synchronous-section>synchronous section</a>
24104 algorithm says the <a href=#synchronous-section>synchronous section</a> has
24105 ended. (Steps in <a href=#synchronous-section title="synchronous section">synchronous
24110 <p>⌛ If the <a href=#media-element>media element</a> has a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute, then let <var title="">mode</var> be <i title="">attribute</i>.</p>
24112 <p>⌛ Otherwise, if the <a href=#media-element>media element</a> does not
24113 have a <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute but has a
24114 <code><a href=#the-source-element>source</a></code> element child, then let <var title="">mode</var> be <i title="">children</i> and let <var title="">candidate</var> be the first such <code><a href=#the-source-element>source</a></code>
24115 element child in <a href=#tree-order>tree order</a>.</p>
24117 <p>⌛ Otherwise the <a href=#media-element>media element</a> has neither a
24118 <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute nor a
24119 <code><a href=#the-source-element>source</a></code> element child: set the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> to <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>, and abort
24120 these steps; the <a href=#synchronous-section>synchronous section</a> ends.</p>
24124 <li><p>⌛ Set the <a href=#media-element>media element</a>'s
24125 <a href=#delaying-the-load-event-flag>delaying-the-load-event flag</a> to true (this <a href=#delay-the-load-event title="delay the load event">delays the load event</a>), and set
24126 its <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> to
24127 <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>.</li>
24129 <li><p>⌛ <a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24130 event</a> named <code title=event-media-loadstart><a href=#event-media-loadstart>loadstart</a></code> at the <a href=#media-element>media
24138 <ol><li><p>⌛ <i>Process candidate</i>: If the <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute's value is the empty
24139 string, then end the <a href=#synchronous-section>synchronous section</a>, and jump
24143 <a href=#absolute-url>absolute URL</a> that would have resulted from <a href=#resolve-a-url title="resolve a url">resolving</a> the <a href=#url>URL</a>
24144 specified by the <code title=attr-media-src><a href=#attr-media-src>src</a></code>
24145 attribute's value relative to the <a href=#media-element>media element</a> when
24146 the <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute was last
24151 successfully, set the <code title=dom-media-currentSrc><a href=#dom-media-currentsrc>currentSrc</a></code> attribute to <var title="">absolute URL</var>.</li>
24153 <li><p>End the <a href=#synchronous-section>synchronous section</a>, continuing the
24157 successfully, run the <a href=#concept-media-load-resource title=concept-media-load-resource>resource fetch
24165 resource failed to load or that the given <a href=#url>URL</a> could
24166 not be <a href=#resolve-a-url title="resolve a url">resolved</a>. In one
24169 <ol><li><p>Set the <code title=dom-media-error><a href=#dom-media-error>error</a></code>
24170 attribute to a new <code><a href=#mediaerror>MediaError</a></code> object whose <code title=dom-MediaError-code><a href=#dom-mediaerror-code>code</a></code> attribute is set to
24171 <code title=dom-MediaError-MEDIA_ERR_SRC_NOT_SUPPORTED><a href=#dom-mediaerror-media_err_src_not_supported>MEDIA_ERR_SRC_NOT_SUPPORTED</a></code>.</li>
24174 <li><p><a href="#forget-the-media-element's-media-resource-specific-timed-tracks">Forget the media element's media-resource-specific
24178 <li><p>Set the element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24179 the <a href=#dom-media-network_no_source title=dom-media-NETWORK_NO_SOURCE>NETWORK_NO_SOURCE</a>
24184 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24185 event</a> named <code title=event-media-error><a href=#event-media-error>error</a></code>
24186 at the <a href=#media-element>media element</a>.</li>
24188 <li><p>Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event flag</a>
24189 to false. This stops <a href=#delay-the-load-event title="delay the load event">delaying
24192 <li><p>Abort these steps. Until the <code title=dom-media-load><a href=#dom-media-load>load()</a></code> method is invoked or the
24193 <code title=attr-media-src><a href=#attr-media-src>src</a></code> attribute is changed, the
24197 </ol><p>Otherwise, the <code><a href=#the-source-element>source</a></code> elements will be used; run
24203 defined by two adjacent nodes in the <a href=#media-element>media
24211 <p>As nodes are inserted and removed into the <a href=#media-element>media
24242 <li><p>⌛ <i>Process candidate</i>: If <var title="">candidate</var> does not have a <code title=attr-source-src><a href=#attr-source-src>src</a></code> attribute, or if its <code title=attr-source-src><a href=#attr-source-src>src</a></code> attribute's value is the empty
24243 string, then end the <a href=#synchronous-section>synchronous section</a>, and jump
24247 <a href=#absolute-url>absolute URL</a> that would have resulted from <a href=#resolve-a-url title="resolve a url">resolving</a> the <a href=#url>URL</a>
24248 specified by <var title="">candidate</var>'s <code title=attr-source-src><a href=#attr-source-src>src</a></code> attribute's value relative to
24249 the <var title="">candidate</var> when the <code title=attr-source-src><a href=#attr-source-src>src</a></code> attribute was last
24254 obtained successfully, then end the <a href=#synchronous-section>synchronous
24258 <li><p>⌛ If <var title="">candidate</var> has a <code title=attr-source-type><a href=#attr-source-type>type</a></code> attribute whose value, when
24259 parsed as a <a href=#mime-type>MIME type</a> (including any codecs
24261 represents <a href=#a-type-that-the-user-agent-knows-it-cannot-render>a type that the user agent knows it cannot
24262 render</a>, then end the <a href=#synchronous-section>synchronous section</a>, and
24265 <li><p>⌛ If <var title="">candidate</var> has a <code title=attr-source-media><a href=#attr-source-media>media</a></code> attribute whose value does
24266 not <a href=#matches-the-environment title="matches the environment">match the
24267 environment</a>, then end the <a href=#synchronous-section>synchronous
24271 <li><p>⌛ Set the <code title=dom-media-currentSrc><a href=#dom-media-currentsrc>currentSrc</a></code> attribute to <var title="">absolute URL</var>.</li>
24273 <li><p>End the <a href=#synchronous-section>synchronous section</a>, continuing the
24276 <li><p>Run the <a href=#concept-media-load-resource title=concept-media-load-resource>resource
24281 <li><p><i title="">Failed</i>: <a href=#queue-a-task>Queue a task</a> to
24282 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the <var title="">candidate</var> element, in the context of the <a href=#fetch title=fetch>fetching process</a> that was used to try to
24283 obtain <var title="">candidate</var>'s corresponding <a href=#media-resource>media
24284 resource</a> in the <a href=#concept-media-load-resource title=concept-media-load-resource>resource fetch
24287 <li><p>Asynchronously <a href=#await-a-stable-state>await a stable state</a>. The
24288 <a href=#synchronous-section>synchronous section</a> consists of all the remaining
24290 <a href=#synchronous-section>synchronous section</a> has ended. (Steps in <a href=#synchronous-section title="synchronous section">synchronous sections</a> are
24294 <li><p>⌛ <a href="#forget-the-media-element's-media-resource-specific-timed-tracks">Forget the media element's
24305 a <code><a href=#the-source-element>source</a></code> element, let <var title="">candidate</var>
24317 <li><p>⌛ <i title="">Waiting</i>: Set the element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24318 the <a href=#dom-media-network_no_source title=dom-media-NETWORK_NO_SOURCE>NETWORK_NO_SOURCE</a>
24321 <li><p>⌛ Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24322 flag</a> to false. This stops <a href=#delay-the-load-event title="delay the load
24325 <li><p>End the <a href=#synchronous-section>synchronous section</a>, continuing the
24332 <li><p>Asynchronously <a href=#await-a-stable-state>await a stable state</a>. The
24333 <a href=#synchronous-section>synchronous section</a> consists of all the remaining
24335 <a href=#synchronous-section>synchronous section</a> has ended. (Steps in <a href=#synchronous-section title="synchronous section">synchronous sections</a> are
24338 <li><p>⌛ Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24339 flag</a> back to true (this <a href=#delay-the-load-event title="delay the load
24343 <li><p>⌛ Set the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> back to <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>.</li>
24351 algorithm</dfn> for a <a href=#media-element>media element</a> and a given
24352 <a href=#absolute-url>absolute URL</a> is as follows:</p>
24355 resource given by the <a href=#absolute-url>absolute URL</a> passed to this
24356 algorithm. This is now the element's <a href=#media-resource>media
24361 <p>Begin to <a href=#fetch>fetch</a> the <var title="">current media
24362 resource</var>, from the <a href=#media-element>media element</a>'s
24363 <code><a href=#document>Document</a></code>'s <a href=#origin>origin</a>.</p> <!-- not
24367 is <em>least</em> frequent, <a href=#queue-a-task>queue a task</a> to
24368 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-progress><a href=#event-media-progress>progress</a></code> at the element.</p>
24371 than about three seconds, then <a href=#queue-a-task>queue a task</a> to
24372 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-stalled><a href=#event-media-stalled>stalled</a></code> at the element.</p>
24375 <a href=#media-data>media data</a> downloads. When a <a href=#media-element>media
24386 resource. When a <a href=#media-element>media element</a>'s download has been
24387 suspended, the user agent must set the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> to <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code> and <a href=#queue-a-task>queue
24388 a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-suspend><a href=#event-media-suspend>suspend</a></code> at the element. If and
24390 the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> to
24391 <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>.</p>
24393 <p class=note>The <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code> attribute provides a
24395 even in the absence of the <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute.</p>
24400 <a href=#delaying-the-load-event-flag>delaying-the-load-event flag</a> must be set to
24401 false. This stops <a href=#delay-the-load-event title="delay the load event">delaying the
24411 <p>The <a href=#networking-task-source>networking task source</a> <a href=#concept-task title=concept-task>tasks</a> to process the data as it is
24415 <dl class=switch><dt>If the <a href=#media-data>media data</a> cannot be fetched at all, due
24419 <dt>If the <a href=#media-resource>media resource</a> is found to have <a href=#content-type title=Content-Type>Content-Type metadata</a> that, when
24420 parsed as a <a href=#mime-type>MIME type</a> (including any codecs
24422 represents <a href=#a-type-that-the-user-agent-knows-it-cannot-render>a type that the user agent knows it cannot
24423 render</a> (even if the actual <a href=#media-data>media data</a> is in a
24426 <dt>If the <a href=#media-data>media data</a> can be fetched but is found by
24442 <li><p>Abort this subalgorithm, returning to the <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24454 <dt id=getting-media-metadata>Once enough of the <a href=#media-data>media
24456 <a href=#media-resource>media resource</a>, its dimensions, and other
24459 and once <a href=#the-timed-tracks-are-ready>the timed tracks are ready</a>
24468 <ol><li><p>Set the <a href=#current-playback-position>current playback position</a> to the
24469 <a href=#earliest-possible-position>earliest possible position</a>.</li>
24471 <li><p>Set the <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute to
24472 <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>.</li>
24474 <li><p>For <code><a href=#video>video</a></code> elements, set the <code title=dom-video-videoWidth><a href=#dom-video-videowidth>videoWidth</a></code> and <code title=dom-video-videoHeight><a href=#dom-video-videoheight>videoHeight</a></code>
24479 <p>Set the <code title=dom-media-duration><a href=#dom-media-duration>duration</a></code>
24482 <p class=note>The user agent <a href=#durationChange>will</a> <a href=#queue-a-task>queue a task</a> to
24483 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the
24490 <p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24491 event</a> named <code title=event-media-loadedmetadata><a href=#event-media-loadedmetadata>loadedmetadata</a></code> at the
24496 the <code><a href=#video>video</a></code> element if appropriate.</p>
24502 <p>If either the <a href
24504 particular start time, then <a href=#dom-media-seek title=dom-media-seek>seek</a> to that time. Ignore any
24515 <p>Once the <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute
24516 reaches <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code>,
24517 <a href=#fire-loadeddata>after the <code title=event-media-loadeddata>loadeddata</code> event has been
24518 fired</a>, set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24519 flag</a> to false. This stops <a href=#delay-the-load-event title="delay the load
24524 <a href=#media-resource>media resource</a> would also stop buffering at this
24525 point, causing the <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute
24526 to switch to the <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code> value.</p>
24531 determine the duration of the <a href=#media-resource>media resource</a> and
24538 <dt>Once the entire <a href=#media-resource>media resource</a> has been <a href=#fetch title=fetch>fetched</a> (but potentially before any of it
24543 <p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
24544 named <code title=event-media-progress><a href=#event-media-progress>progress</a></code> at the
24545 <a href=#media-element>media element</a>.</p>
24563 <li><p>Set the <code title=dom-media-error><a href=#dom-media-error>error</a></code>
24564 attribute to a new <code><a href=#mediaerror>MediaError</a></code> object whose <code title=dom-MediaError-code><a href=#dom-mediaerror-code>code</a></code> attribute is set to
24565 <code title=dom-MediaError-MEDIA_ERR_NETWORK><a href=#dom-mediaerror-media_err_network>MEDIA_ERR_NETWORK</a></code>.</li>
24567 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24568 event</a> named <code title=event-media-error><a href=#event-media-error>error</a></code>
24569 at the <a href=#media-element>media element</a>.</li>
24571 <li><p>Set the element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24572 the <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>
24573 value and <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24574 event</a> named <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code> at the
24578 <li><p>Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24579 flag</a> to false. This stops <a href=#delay-the-load-event title="delay the load
24582 <li><p>Abort the overall <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24588 <dt id=fatal-decode-error>If the <a href=#media-data>media data</a> is
24593 <p>Fatal errors in decoding the <a href=#media-data>media data</a> that
24600 <li><p>Set the <code title=dom-media-error><a href=#dom-media-error>error</a></code>
24601 attribute to a new <code><a href=#mediaerror>MediaError</a></code> object whose <code title=dom-MediaError-code><a href=#dom-mediaerror-code>code</a></code> attribute is set to
24602 <code title=dom-MediaError-MEDIA_ERR_DECODE><a href=#dom-mediaerror-media_err_decode>MEDIA_ERR_DECODE</a></code>.</li>
24604 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24605 event</a> named <code title=event-media-error><a href=#event-media-error>error</a></code>
24606 at the <a href=#media-element>media element</a>.</li>
24608 <li><p>Set the element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24609 the <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>
24610 value and <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24611 event</a> named <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code> at the
24615 <li><p>Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24616 flag</a> to false. This stops <a href=#delay-the-load-event title="delay the load
24619 <li><p>Abort the overall <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24625 <dt>If the <a href=#media-data>media data</a> fetching process is aborted by
24633 followed if the <code title=dom-media-load><a href=#dom-media-load>load()</a></code>
24640 <li><p>Set the <code title=dom-media-error><a href=#dom-media-error>error</a></code>
24641 attribute to a new <code><a href=#mediaerror>MediaError</a></code> object whose <code title=dom-MediaError-code><a href=#dom-mediaerror-code>code</a></code> attribute is set to
24642 <code title=dom-MediaError-MEDIA_ERR_ABORTED><a href=#dom-mediaerror-media_err_aborted>MEDIA_ERR_ABORTED</a></code>.</li>
24644 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24645 event</a> named <code title=event-media-abort><a href=#event-media-abort>abort</a></code>
24646 at the <a href=#media-element>media element</a>.</li>
24648 <li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute has a
24649 value equal to <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, set the
24650 element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24651 the <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>
24652 value and <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
24653 event</a> named <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code>
24654 at the element. Otherwise, set the element's <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute to
24655 the <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code>
24658 <li><p>Set the element's <a href=#delaying-the-load-event-flag>delaying-the-load-event
24659 flag</a> to false. This stops <a href=#delay-the-load-event title="delay the load
24662 <li><p>Abort the overall <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24668 <dt id=non-fatal-media-error>If the <a href=#media-data>media data</a> can
24686 <dt id=found-a-media-resource-specific-timed-track>If the <a href=#media-resource>media resource</a> is found to declare a <a href=#media-resource-specific-timed-track>media-resource-specific timed track</a> that the user agent supports</dt>
24690 <p>Run the <a href=#steps-to-expose-a-media-resource-specific-timed-track>steps to expose a media-resource-specific timed
24696 </dl><p>When the <a href=#networking-task-source>networking task source</a> has <a href=#queue-a-task title="queue a task">queued</a> the last <a href=#concept-task title=concept-task>task</a> as part of <a href=#fetch title=fetch>fetching</a> the <a href=#media-resource>media resource</a>
24706 parts of the <a href=#media-resource>media resource</a>, the user agent must
24711 even once the <a href=#ended-playback title="ended playback">playback has
24713 seek back to the start. In fact, in this situation, once <a href=#ended-playback title="ended playback">playback has ended</a>, the user agent
24714 will end up dispatching a <code title=event-media-stalled><a href=#event-media-stalled>stalled</a></code> event, as described
24721 abort the overall <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
24727 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The following table
24744 </table><p>The empty string is also a valid keyword, and maps to the <a href=#attr-media-preload-auto-state title=attr-media-preload-auto-state>Automatic</a> state. The
24746 though the <a href=#attr-media-preload-auto-state title=attr-media-preload-auto-state>Metadata</a> state is
24752 <p>The <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code> attribute is
24759 attribute must <a href=#reflect>reflect</a> the content attribute of the
24764 <p class=note>The <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute can overrride
24765 the <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code> attribute (since
24767 the hint given by the <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code> attribute). Including
24785 --><dl class=domintro><dt><var title="">media</var> . <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code></dt>
24789 <p>Returns a <code><a href=#timeranges>TimeRanges</a></code> object that represents the
24790 ranges of the <a href=#media-resource>media resource</a> that the user agent has
24798 attribute must return a new static <a href=#normalized-timeranges-object>normalized
24800 the <a href=#media-resource>media resource</a>, if any, that the user agent has
24812 objects return by the <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code> attribute at one time can
24822 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-duration><a href=#dom-media-duration>duration</a></code></dt>
24826 <p>Returns the length of the <a href=#media-resource>media resource</a>, in
24835 <dt><var title="">media</var> . <code title=dom-media-currentTime><a href=#dom-media-currenttime>currentTime</a></code> [ = <var title="">value</var> ]</dt>
24839 <p>Returns the <a href=#current-playback-position>current playback position</a>, in seconds.</p>
24843 <p>Will throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if there
24844 is no selected <a href=#media-resource>media resource</a>. Will throw an
24845 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the given time is not
24850 <dt><var title="">media</var> . <code title=dom-media-startTime><a href=#dom-media-starttime>startTime</a></code></dt>
24854 <p>Returns the <a href=#earliest-possible-position>earliest possible position</a>, in
24865 attribute must return the length of the <a href=#media-resource>media resource</a>,
24866 in seconds. If no <a href=#media-data>media data</a> is available, then the
24868 <a href=#media-resource>media resource</a> is known to be unbounded (e.g. a
24872 <p>The user agent must determine the duration of the <a href=#media-resource>media
24873 resource</a> before playing any part of the <a href=#media-data>media
24874 data</a> and before setting <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> to a value equal to
24875 or greater than <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, even if doing
24878 <p id=durationChange>When the length of the <a href=#media-resource>media
24881 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named
24882 <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the
24883 <a href=#media-element>media element</a>.</p>
24887 the last frame or sample in the stream, and the <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> event would be
24889 <a href=#media-resource>media resource</a>'s duration instead of determining it
24891 then the duration would change and the <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> event would be
24894 <p><a href=#media-element title="media element">Media elements</a> have a
24899 attribute must, on getting, return the <a href=#current-playback-position>current playback
24901 must <a href=#dom-media-seek title=dom-media-seek>seek</a> to the new value
24904 <p>If the <a href=#media-resource>media resource</a> is a streaming resource, then
24906 resource after it has expired from its buffer. Similarly, some <a href=#media-resource title="media resource">media resources</a> might have a timeline
24912 attribute must, on getting, return the <a href=#earliest-possible-position>earliest possible
24915 <p>When the <a href=#earliest-possible-position>earliest possible position</a> changes, then:
24916 if the <a href=#current-playback-position>current playback position</a> is before the
24917 <a href=#earliest-possible-position>earliest possible position</a>, the user agent must <a href=#dom-media-seek title=dom-media-seek>seek</a> to the <a href=#earliest-possible-position>earliest possible
24918 position</a>; otherwise, if the user agent has not fired a <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> event at the
24920 handlers for such an event, then the user agent must <a href=#queue-a-task>queue a
24921 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the element.</p>
24924 in the <a href=#concept-media-load-resource title=concept-media-load-resource>resource fetch
24925 algorithm</a> that kicks in <a href=#getting-media-metadata>when the metadata of the clip becomes
24926 known</a>, the <a href=#current-playback-position>current playback position</a> can never be
24927 less than the <a href=#earliest-possible-position>earliest possible position</a>.</p>
24929 <p>User agents must act as if the timeline of the <a href=#media-resource>media
24930 resource</a> increases linearly starting from the <a href=#earliest-possible-position>earliest
24931 possible position</a>, even if the underlying <a href=#media-data>media
24944 attribute is a <a href=#boolean-attribute>boolean attribute</a> that, if specified,
24945 indicates that the <a href=#media-element>media element</a> is to seek back to the
24946 start of the <a href=#media-resource>media resource</a> upon reaching the end.</p>
24951 attribute must <a href=#reflect>reflect</a> the content attribute of the
24960 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code></dt>
24965 with respect to rendering the <a href=#current-playback-position>current playback
24972 <p><a href=#media-element title="media element">Media elements</a> have a
24974 to be rendered at the <a href=#current-playback-position>current playback position</a>. The
24983 <dd>No information regarding the <a href=#media-resource>media resource</a> is
24984 available. No data for the <a href=#current-playback-position>current playback position</a>
24985 is available. <a href=#media-element title="media element">Media elements</a>
24986 whose <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code>
24987 attribute are set to <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> are always in
24988 the <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>
24994 the resource is available. In the case of a <code><a href=#video>video</a></code>
24996 will no longer raise an exception when seeking. No <a href=#media-data>media
24997 data</a> is available for the immediate <a href=#current-playback-position>current playback
25000 The <a href=#timed-track title="timed track">timed tracks</a>
25001 are <a href=#the-timed-tracks-are-ready title="the timed tracks are ready">ready</a>.
25007 <dd>Data for the immediate <a href=#current-playback-position>current playback position</a>
25009 agent could successfully advance the <a href=#current-playback-position>current playback
25010 position</a> in the <a href=#direction-of-playback>direction of playback</a> at all
25011 without immediately reverting to the <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> state, or
25012 there is no more data to obtain in the <a href=#direction-of-playback>direction of
25015 and to when <a href=#ended-playback title="ended playback">playback has
25020 <dd>Data for the immediate <a href=#current-playback-position>current playback position</a>
25022 the <a href=#current-playback-position>current playback position</a> in the <a href=#direction-of-playback>direction
25024 to the <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>
25027 user agent cannot be in this state if <a href=#ended-playback title="ended
25028 playback">playback has ended</a>, as the <a href=#current-playback-position>current playback
25033 <dd>All the conditions described for the <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> state
25035 being fetched at a rate where the <a href=#current-playback-position>current playback
25037 <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>
25039 reaches the end of the <a href=#media-resource>media resource</a>.</dd>
25043 <p>When the ready state of a <a href=#media-element>media element</a> whose <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> is not <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> changes, the
25046 <dl class=switch><!-- going up to metadata --><dt>If the previous ready state was <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, and the new
25047 ready state is <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code></dt>
25051 <p class=note>A <code title=event-media-loadedmetadata><a href=#event-media-loadedmetadata>loadedmetadata</a></code> DOM event <a href=#fire-loadedmetadata>will be fired</a> as part of the <code title=dom-media-load><a href=#dom-media-load>load()</a></code> algorithm.</p>
25058 was <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> and
25059 the new ready state is <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code> or
25065 this <a href=#media-element>media element</a> since the <code title=dom-media-load><a href=#dom-media-load>load()</a></code> algorithm was last invoked,
25066 the user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a
25067 simple event</a> named <code title=event-media-loadeddata><a href=#event-media-loadeddata>loadeddata</a></code> at the element.</p>
25069 <p>If the new ready state is <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
25070 <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>,
25076 <dt>If the previous ready state was <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or more,
25077 and the new ready state is <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code> or
25082 <p class=note>A <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code> DOM
25083 event <a href=#fire-waiting-when-waiting>can be fired</a>,
25089 <dt>If the previous ready state was <code title=dom-media-HAVE_CURRENT_DATA><a href
25090 less, and the new ready state is <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code></dt>
25094 <p>The user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a
25095 simple event</a> named <code title=event-media-canplay><a href=#event-media-canplay>canplay</a></code>.</p>
25097 <p>If the element is <a href=#potentially-playing>potentially playing</a>, the user
25098 agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25099 event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.</p>
25104 <dt>If the new ready state is <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code></dt>
25108 <p>If the previous ready state was <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code> or
25109 less, the user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
25110 a simple event</a> named <code title=event-media-canplay><a href=#event-media-canplay>canplay</a></code>, and, if the element is also
25111 <a href=#potentially-playing>potentially playing</a>, <a href=#queue-a-task>queue a task</a> to
25112 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.</p>
25114 <p>If the <a href=#autoplaying-flag>autoplaying flag</a> is true, and the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute is true, and the
25115 <a href=#media-element>media element</a> has an <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute specified,
25116 and the <a href=#media-element>media element</a> is in a <code><a href=#document>Document</a></code>
25117 whose <a href=#browsing-context>browsing context</a> did not have the
25118 <a href=#sandboxed-automatic-features-browsing-context-flag>sandboxed automatic features browsing context flag</a>
25119 set when the <code><a href=#document>Document</a></code> was created, then the user
25120 agent may also set the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute to false,
25121 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
25122 named <code title=event-media-play><a href=#event-media-play>play</a></code>, and <a href=#queue-a-task>queue
25123 a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.</p>
25127 matter. Authors are urged to use the <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute rather than
25131 <p>In any case, the user agent must finally <a href=#queue-a-task>queue a
25132 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-canplaythrough><a href=#event-media-canplaythrough>canplaythrough</a></code>.</p>
25140 the state of a media element can jump straight from <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> to <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code> without
25141 passing through the <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code> and
25142 <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>
25149 describes the current ready state of the <a href=#media-element>media
25155 attribute is a <a href=#boolean-attribute>boolean attribute</a>. When present, the
25158 <a href=#media-resource>media resource</a> as soon as it can do so without
25161 <p class=note>Authors are urged to use the <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute rather than
25171 IDL attribute must <a href=#reflect>reflect</a> the content attribute of the
25180 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code></dt>
25188 <dt><var title="">media</var> . <code title=dom-media-ended><a href=#dom-media-ended>ended</a></code></dt>
25192 <p>Returns true if playback has reached the end of the <a href=#media-resource>media resource</a>.</p>
25196 <dt><var title="">media</var> . <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code> [ = <var title="">value</var> ]</dt>
25201 fast-forwarding or reversing through the <a href=#media-resource>media
25213 <dt><var title="">media</var> . <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> [ = <var title="">value</var> ]</dt>
25223 <dt><var title="">media</var> . <code title=dom-media-played><a href=#dom-media-played>played</a></code></dt>
25227 <p>Returns a <code><a href=#timeranges>TimeRanges</a></code> object that represents the
25228 ranges of the <a href=#media-resource>media resource</a> that the user agent has
25233 <dt><var title="">media</var> . <code title=dom-media-play><a href=#dom-media-play>play</a></code>()</dt>
25237 <p>Sets the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute
25238 to false, loading the <a href=#media-resource>media resource</a> and beginning
25244 <dt><var title="">media</var> . <code title=dom-media-pause><a href=#dom-media-pause>pause</a></code>()</dt>
25248 <p>Sets the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute
25249 to true, loading the <a href=#media-resource>media resource</a> if necessary.</p>
25256 attribute represents whether the <a href=#media-element>media element</a> is
25259 <p>A <a href=#media-element>media element</a> is said to be <dfn id=potentially-playing>potentially
25260 playing</dfn> when its <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code>
25261 attribute is false, the <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is either
25262 <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
25263 <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>,
25264 the element has not <a href=#ended-playback>ended playback</a>, playback has not
25265 <a href=#stopped-due-to-errors>stopped due to errors</a>, and the element has not <a href=#paused-for-user-interaction>paused
25268 <p>A <a href=#media-element>media element</a> is said to have <dfn id=ended-playback>ended
25269 playback</dfn> when the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater, and
25270 either the <a href=#current-playback-position>current playback position</a> is the end of the
25271 <a href=#media-resource>media resource</a> and the <a href=#direction-of-playback>direction of
25272 playback</a> is forwards and the <a href=#media-element>media element</a> does
25273 not have a <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code> attribute
25274 specified, or the <a href=#current-playback-position>current playback position</a> is the
25275 <a href=#earliest-possible-position>earliest possible position</a> and the <a href=#direction-of-playback>direction of
25279 attribute must return true if the <a href=#media-element>media element</a> has
25280 <a href=#ended-playback>ended playback</a> and the <a href=#direction-of-playback>direction of
25283 <p>A <a href=#media-element>media element</a> is said to have <dfn id=stopped-due-to-errors>stopped due to
25284 errors</dfn> when the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater, and
25285 the user agent <a href=#non-fatal-media-error>encounters a
25286 non-fatal error</a> during the processing of the <a href=#media-data>media
25288 at the <a href=#current-playback-position>current playback position</a>.</p>
25290 <p>A <a href=#media-element>media element</a> is said to have <dfn id=paused-for-user-interaction>paused for user
25291 interaction</dfn> when its <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute is false, the <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is either
25292 <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
25293 <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code> and
25294 the user agent has reached a point in the <a href=#media-resource>media
25298 <p>It is possible for a <a href=#media-element>media element</a> to have both
25299 <a href=#ended-playback>ended playback</a> and <a href=#paused-for-user-interaction>paused for user
25302 <p>When a <a href=#media-element>media element</a> that is <a href=#potentially-playing>potentially
25303 playing</a> stops playing because it has <a href=#paused-for-user-interaction>paused for user
25304 interaction</a>, the user agent must <a href=#queue-a-task>queue a task</a> to
25305 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the element.</p>
25307 <p id=fire-waiting-when-waiting>When a <a href=#media-element>media element</a>
25308 that is <a href=#potentially-playing>potentially playing</a> stops playing because its
25309 <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute
25310 changes to a value lower than <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>, without
25311 the element having <a href=#ended-playback>ended playback</a>, or playback having
25312 <a href=#stopped-due-to-errors>stopped due to errors</a>, or playback having <a href=#paused-for-user-interaction>paused
25313 for user interaction</a>, or the <a href=#dom-media-seek title=dom-media-seek>seeking algorithm</a> being invoked, the
25314 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25315 event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code>
25316 at the element, and <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25317 event</a> named <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code> at
25320 <p>When the <a href=#current-playback-position>current playback position</a> reaches the end
25321 of the <a href=#media-resource>media resource</a> when the <a href=#direction-of-playback>direction of
25325 <ol><li><p>If the <a href=#media-element>media element</a> has a <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code> attribute specified, then <a href=#dom-media-seek title=dom-media-seek>seek</a> to the <a href=#earliest-possible-position>earliest possible
25326 position</a> of the <a href=#media-resource>media resource</a> and abort these
25334 <li><p>Stop playback.<p class=note>The <code title=dom-media-ended><a href=#dom-media-ended>ended</a></code> attribute becomes
25337 <li><p>The user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
25338 a simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the element.</li>
25340 <li><p>The user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
25341 a simple event</a> named <code title=event-media-ended><a href=#event-media-ended>ended</a></code>
25344 </ol><p>When the <a href=#current-playback-position>current playback position</a> reaches the
25345 <a href=#earliest-possible-position>earliest possible position</a> of the <a href=#media-resource>media
25346 resource</a> when the <a href=#direction-of-playback>direction of playback</a> is
25351 <li><p>The user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
25352 a simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the element.</li>
25355 attribute gives the desired speed at which the <a href=#media-resource>media
25362 attribute gives the speed at which the <a href=#media-resource>media resource</a>
25364 the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>,
25370 <a href=#potentially-playing>potentially playing</a>).</p>
25372 <p>If the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code>
25377 <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attribute
25378 to the value of the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>
25379 attribute before invoking the <code title=dom-media-play><a href=#dom-media-play>play()</a></code> method's steps. Features such
25381 <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code>
25384 <p id=rateUpdate>When the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code> or
25385 <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attributes
25388 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25389 event</a> named <code title=event-media-ratechange><a href=#event-media-ratechange>ratechange</a></code>
25390 at the <a href=#media-element>media element</a>.</p>
25393 attribute must return a new static <a href=#normalized-timeranges-object>normalized
25395 the <a href=#media-resource>media resource</a>, if any, that the user agent has so
25399 method on a <a href=#media-element>media element</a> is invoked, the user agent
25402 <ol><li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute has
25403 the value <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>, invoke the
25404 <a href=#media-element>media element</a>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
25409 <p>If the <a href=#ended-playback title="ended playback">playback has ended</a>
25410 and the <a href=#direction-of-playback>direction of playback</a> is forwards, <a href=#dom-media-seek title=dom-media-seek>seek</a> to the <a href=#earliest-possible-position>earliest possible
25411 position</a> of the <a href=#media-resource>media resource</a>.</p>
25413 <p class=note>This <a href=#seekUpdate>will cause</a> the user
25414 agent to <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25415 event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the <a href=#media-element>media
25423 <p>If the <a href=#media-element>media element</a>'s <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute is true, run
25426 <ol><li><p>Change the value of <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> to false.</li>
25428 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
25429 named <code title=event-media-play><a href=#event-media-play>play</a></code> at the element.</li>
25433 <p>If the <a href=#media-element>media element</a>'s <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute has the
25434 value <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>,
25435 <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, or
25436 <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code>,
25437 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
25438 named <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code> at the
25441 <p>Otherwise, the <a href=#media-element>media element</a>'s <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute has the
25442 value <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
25443 <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>;
25444 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
25445 named <code title=event-media-playing><a href=#event-media-playing>playing</a></code> at the
25452 <li><p>Set the <a href=#media-element>media element</a>'s <a href=#autoplaying-flag>autoplaying
25458 <ol><li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute has
25459 the value <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>, invoke the
25460 <a href=#media-element>media element</a>'s <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
25463 <li><p>Set the <a href=#media-element>media element</a>'s <a href=#autoplaying-flag>autoplaying
25466 <li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute is false, run the
25469 <ol><li><p>Change the value of <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> to true.</li>
25471 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25472 event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the
25475 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25476 event</a> named <code title=event-media-pause><a href=#event-media-pause>pause</a></code>
25481 </ol><hr><p id=media-playback>When a <a href=#media-element>media element</a> is
25482 <a href=#potentially-playing>potentially playing</a> and its <code><a href=#document>Document</a></code> is a
25483 <a href=#fully-active>fully active</a> <code><a href=#document>Document</a></code>, its <a href=#current-playback-position>current
25484 playback position</a> must increase monotonically at <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> units of media
25496 <p>When the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code>
25498 muted. When the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> is so low or so
25500 corresponding audio must also be muted. If the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> is not 1.0, the
25504 <p>The <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> can
25505 be 0.0, in which case the <a href=#current-playback-position>current playback position</a>
25506 doesn't move, despite playback not being paused (<code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> doesn't become true, and the
25507 <code title=event-media-pause><a href=#event-media-pause>pause</a></code> event doesn't fire).</p>
25509 <p><a href=#media-element title="media element">Media elements</a> that are
25510 <a href=#potentially-playing>potentially playing</a> while not <a href=#in-a-document>in a
25517 reached, or because its <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> is 0.0) may the
25520 <hr><p>When the <a href=#current-playback-position>current playback position</a> of a <a href=#media-element>media
25522 agent must run the following steps. If the <a href=#current-playback-position>current playback
25547 user agent has not fired a <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> event at the
25549 handlers for such an event, then the user agent must <a href=#queue-a-task>queue a
25550 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the
25604 </ol><p>When a <a href=#media-element>media element</a> is <a href=#remove-an-element-from-a-document title="remove an
25606 <code>Document</code></a>, if the <a href=#media-element>media element</a>'s
25607 <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> attribute
25608 has a value other than <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> then the user
25609 agent must act as if the <code title=dom-media-pause><a href=#dom-media-pause>pause()</a></code> method had been invoked.</p>
25611 <p class=note>If the <a href=#media-element>media element</a>'s
25612 <code><a href=#document>Document</a></code> stops being a <a href=#fully-active>fully active</a>
25613 document, then the playback will <a href=#media-playback>stop</a>
25622 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code></dt>
25630 <dt><var title="">media</var> . <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code></dt>
25634 <p>Returns a <code><a href=#timeranges>TimeRanges</a></code> object that represents the
25635 ranges of the <a href=#media-resource>media resource</a> to which it is possible
25646 playback position</var> in the <a href=#media-resource>media resource</a>, it means
25648 interacts closely with the <a href=#event-loop>event loop</a> mechanism; in
25649 particular, it has a <a href=#synchronous-section>synchronous
25650 section</a> (which is triggered as part of the <a href=#event-loop>event
25654 <ol><li><p>If the <a href=#media-element>media element</a>'s <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code>, then raise an
25655 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception (if the seek was in
25659 <li><p>If the element's <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL attribute is true,
25664 <li><p>Set the <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL
25667 <li id=seekUpdate><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a
25668 simple event</a> named <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the
25678 than the end of the <a href=#media-resource>media resource</a>, then let it be the
25679 end of the <a href=#media-resource>media resource</a> instead.</li>
25682 than the <a href=#earliest-possible-position>earliest possible position</a>, let it be that
25686 position</var> is not in one of the ranges given in the <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code> attribute, then let it
25687 be the position in one of the ranges given in the <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code> attribute that is the
25691 in the <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code> attribute)
25692 then use the position that is closest to the <a href=#current-playback-position>current playback
25693 position</a>. If there are no ranges given in the <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code> attribute then set the
25694 <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL attribute to
25697 <li><p>Set the <a href=#current-playback-position>current playback position</a> to the given
25700 <li><p>If the <a href=#media-element>media element</a> was <a href=#potentially-playing>potentially
25702 caused its <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code>
25703 attribute to change to a value lower than <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>, then
25704 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named
25705 <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code> at the
25709 established whether or not the <a href=#media-data>media data</a> for the <var title="">new playback position</var> is available, and, if it is,
25710 decoded enough data to play back that position, then <a href=#queue-a-task>queue a
25711 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-seeking><a href=#event-media-seeking>seeking</a></code> at the element.</li>
25713 <li><p>Wait until it has established whether or not the <a href=#media-data>media
25718 <li><p><a href=#await-a-stable-state>Await a stable state</a>. The <a href=#synchronous-section>synchronous
25720 algorithm. (Steps in the <a href=#synchronous-section>synchronous section</a> are
25723 <li><p>⌛ Set the <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL attribute to
25726 <li><p>⌛ <a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
25727 event</a> named <code title=event-media-seeked><a href=#event-media-seeked>seeked</a></code>
25731 attribute must return a new static <a href=#normalized-timeranges-object>normalized
25733 the <a href=#media-resource>media resource</a>, if any, that the user agent is able
25737 <a href=#media-resource>media resource</a>, e.g. because it a simple movie file and
25741 as the time of the first frame plus the <code title=dom-media-duration><a href=#dom-media-duration>duration</a></code> attribute's value (which
25749 <p><a href=#media-resource title="media resource">Media resources</a> might be
25750 internally scripted or interactive. Thus, a <a href=#media-element>media
25752 the user agent must act as if the algorithm for <a href=#dom-media-seek title=dom-media-seek>seeking</a> was used whenever the
25753 <a href=#current-playback-position>current playback position</a> changes in a discontinuous
25764 <p>A <a href=#media-element>media element</a> can have a group of associated <dfn id=timed-track title="timed track">timed tracks</dfn>, known as the <a href=#media-element>media
25765 element</a>'s <dfn id=list-of-timed-tracks>list of timed tracks</dfn>. The <a href=#timed-track title="timed track">timed tracks</a> are sorted as follows:</p>
25767 <ol class=brief><li>The <a href=#timed-track title="timed track">timed tracks</a> corresponding
25768 to <code><a href=#the-track-element>track</a></code> element children of the <a href=#media-element>media
25769 element</a>, in <a href=#tree-order>tree order</a>.</li>
25771 <li>Any <a href=#timed-track title="timed track">timed tracks</a> added using
25775 <li>Any <a href=#media-resource-specific-timed-track title="media-resource-specific timed
25776 track">media-resource-specific timed tracks</a> (<a href=#timed-track title="timed track">timed tracks</a> corresponding to data in
25777 the <a href=#media-resource>media resource</a>), in the order defined by the
25778 <a href=#media-resource>media resource</a>'s format specification.</li>
25780 </ol><p>A <a href=#timed-track>timed track</a> consists of:</p>
25794 </ul><p>The <a href=#timed-track-kind title="timed track kind">kind of track</a> can
25795 change dynamically, in the case of a <a href=#timed-track>timed track</a>
25796 corresponding to a <code><a href=#the-track-element>track</a></code> element.</p>
25808 <p>The <a href=#timed-track-label title="timed track label">label of a track</a> can
25809 change dynamically, in the case of a <a href=#timed-track>timed track</a>
25810 corresponding to a <code><a href=#the-track-element>track</a></code> element or in the case of an
25821 language of the timed track's cues. <a href=#refsBCP47>[BCP47]</a></p>
25823 <p>The <a href=#timed-track-language title="timed track language">language of a timed
25824 track</a> can change dynamically, in the case of a <a href=#timed-track>timed
25825 track</a> corresponding to a <code><a href=#the-track-element>track</a></code> element.</p>
25840 been declared with a <code><a href=#the-track-element>track</a></code> element), but its cues
25861 <a href=#timed-track>timed track</a> corresponds to a
25862 <code><a href=#mutabletimedtrack>MutableTimedTrack</a></code> object.</p>
25872 (e.g. <a href=#url>URL</a> could not be <a href=#resolve-a-url title="resolve a
25879 </dl><p>The <a href=#timed-track-readiness-state title="timed track readiness state">readiness
25880 state</a> of a <a href=#timed-track>timed track</a> changes dynamically as
25924 accordingly. In addition, for timed tracks whose <a href=#timed-track-kind title="timed track kind">kind</a> is <code title=dom-mediatrack-kind-subtitles>subtitles</code> or <code title=dom-mediatrack-kind-captions>captions</code>, the cues
25926 tracks whose <a href=#timed-track-kind title="timed track kind">kind</a> is <code title=dom-mediatrack-kind-descriptions>descriptions</code>,
25928 non-visual fashion; and for timed tracks whose <a href=#timed-track-kind title="timed track kind">kind</a> is <code title=dom-mediatrack-kind-chapters>chapters</code>, the user
25930 user can navigate to any point in the <a href=#media-resource>media
25941 <p>A list of <a href=#timed-track-cue title="timed track cue">timed track cues</a>.</p>
25943 <p>The <a href=#timed-track-list-of-cues title="timed track list of cues">list of cues of a
25945 <a href=#timed-track>timed track</a> has <a href=#timed-track-not-loaded title="timed track not
25946 href=#timed-track-loading title="timed
25947 track loading">loading</a>, or in the case of a <a href=#timed-track>timed
25948 track</a> corresponding to a <code><a href=#mutabletimedtrack>MutableTimedTrack</a></code>
25954 </dl><p>Each <a href=#timed-track>timed track</a> has a corresponding
25955 <code><a href=#timedtrack>TimedTrack</a></code> object.</p>
25958 in a <a href=#timed-track>timed track</a>, corresponding for instance for
25962 <p>Each <a href=#timed-track-cue>timed track cue</a> consists of:</p>
25983 <p>A boolean indicating whether playback of the <a href=#media-resource>media
26005 <p>A boolean indicating whether the <a href=#timed-track-cue-line-position title="timed track cue
26015 interpreted as defined by the <a href=#timed-track-cue-writing-direction title="timed track cue writing
26016 direction">writing direction</a> and <a href=#timed-track-cue-snap-to-lines-flag title="timed track
26024 by the <a href=#timed-track-cue-writing-direction title="timed track cue writing direction">writing
26032 percentage of the video, as defined by the <a href=#timed-track-cue-writing-direction title="timed
26044 depends on the Unicode bidirectional algorithm and the <a href=#timed-track-cue-writing-direction title="timed track cue writing direction">writing
26045 direction</a>. <a href=#refsBIDI>[BIDI]</a></p>
26060 </dl><p>A <a href=#timed-track-cue>timed track cue</a> is immutable.</p>
26062 <p>Each <a href=#timed-track-cue>timed track cue</a> has a corresponding
26063 <code><a href=#timedtrackcue>TimedTrackCue</a></code> object, and can be associated with a
26064 particular <a href=#timed-track>timed track</a>. Once a <a href=#timed-track-cue>timed track
26065 cue</a> is associated with a particular <a href=#timed-track>timed track</a>,
26068 <p>The <a href=#timed-track title="timed track">timed tracks</a> of a
26069 <a href=#media-element>media element</a> are <dfn id=the-timed-tracks-are-ready title="the timed tracks are
26070 ready">ready</dfn> if all the <a href=#timed-track title="timed track">timed
26071 tracks</a> whose <a href=#timed-track-mode title="timed track mode">mode</a> was
26072 not in the <a href=#timed-track-disabled title="timed track disabled">disabled</a> state
26073 when the element's <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
26074 algorithm</a> last started now have a <a href=#timed-track-readiness-state>timed track readiness
26075 state</a> of <a href=#timed-track-loaded title="timed track loaded">loaded</a> or
26076 <a href=#timed-track-failed-to-load title="timed track failed to load">failed to load</a>.</p>
26081 <p>A <dfn id=media-resource-specific-timed-track>media-resource-specific timed track</dfn> is a <a href=#timed-track>timed
26082 track</a> that corresponds to data found in the <a href=#media-resource>media
26090 if the <a href=#media-resource>media resource</a> is a video.</p>
26092 <p>When a <a href=#media-resource>media resource</a> contains data that the user
26093 agent recognises and supports as being equivalent to a <a href=#timed-track>timed
26094 track</a>, the user agent <a href=#found-a-media-resource-specific-timed-track>runs</a> the
26098 <ol><li><p>Associate the relevant data with a new <a href=#timed-track>timed
26099 track</a> and its corresponding new <code><a href=#timedtrack>TimedTrack</a></code>
26100 object. The <a href=#timed-track>timed track</a> is a
26101 <a href=#media-resource-specific-timed-track>media-resource-specific timed track</a>.</li>
26103 <li><p>Set the new <a href=#timed-track>timed track</a>'s <a href=#timed-track-kind title="timed track
26104 kind">kind</a>, <a href=#timed-track-label title="timed track label">label</a>,
26105 and <a href=#timed-track-language title="timed track language">language</a> based on the
26109 <li><p>Populate the new <a href=#timed-track>timed track</a>'s <a href=#timed-track-list-of-cues title="timed track list of cues">list of cues</a> with the cues
26110 parsed so far, folllowing the <a href=#guidelines-for-exposing-cues-in-various-formats-as-timed-track-cues>guidelines for exposing
26116 <p>Set the new <a href=#timed-track>timed track</a>'s <a href=#timed-track-readiness-state title="timed track
26122 <a href=#media-resource>media resource</a> has been fully parsed and completely
26123 describes the cues, then the <a href=#timed-track>timed track</a> would be
26124 <a href=#timed-track-loaded title="timed track loaded">loaded</a>. On the other hand,
26125 if the data for the cues is interleaved with the <a href=#media-data>media
26126 data</a>, and the <a href=#media-resource>media resource</a> as a whole is
26127 still being downloaded, then the <a href=#timed-track-loading title="timed track
26132 <li><p>Set the new <a href=#timed-track>timed track</a>'s <a href=#timed-track-mode title="timed
26137 <li><p>Add the new <a href=#timed-track>timed track</a> to the <a href=#media-element>media
26138 element</a>'s <a href=#list-of-timed-tracks>list of timed tracks</a>.</li>
26140 </ol><p>When a <a href=#media-element>media element</a> is to <dfn id="forget-the-media-element's-media-resource-specific-timed-tracks">forget the media
26142 agent must remove from the <a href=#media-element>media element</a>'s <a href=#list-of-timed-tracks>list
26143 of timed tracks</a> all the <a href=#media-resource-specific-timed-track title="media-resource-specific
26154 <p>When a <code><a href=#the-track-element>track</a></code> element is created, it must be
26155 associated with a new <a href=#timed-track>timed track</a> and its corresponding
26156 new <code><a href=#timedtrack>TimedTrack</a></code> object.</p>
26158 <p>The <a href=#timed-track-kind>timed track kind</a> is determined from the state of
26159 the element's <code title=attr-track-kind><a href=#attr-track-kind>kind</a></code> attribute
26161 first column, the <a href=#timed-track-kind title="timed track kind">kind</a> is the
26166 <tbody><tr><td><a href=#attr-track-kind-subtitles title=attr-track-kind-subtitles>Subtitles</a>
26168 <tr><td><a href=#attr-track-kind-captions title=attr-track-kind-captions>Captions</a>
26170 <tr><td><a href=#attr-track-kind-descriptions title=attr-track-kind-descriptions>Descriptions</a>
26172 <tr><td><a href=#attr-track-kind-chapters title=attr-track-kind-chapters>Chapters</a>
26174 <tr><td><a href=#attr-track-kind-metadata title=attr-track-kind-metadata>Metadata</a>
26176 </table><p>The <a href=#timed-track-label>timed track label</a> is the element's <a href=#track-label>track
26179 <p>The <a href=#timed-track-language>timed track language</a> is the element's
26180 <a href=#track-language>track language</a>, if any, or the empty string
26183 <p>As the <code title=attr-track-kind><a href=#attr-track-kind>kind</a></code>, <code title=attr-track-label><a href=#attr-track-label>label</a></code>, and <code title=attr-track-srclang><a href=#attr-track-srclang>srclang</a></code> attributes are added,
26184 removed, or changed, the <a href=#timed-track>timed track</a> must update
26187 <p class=note>Changes to the <a href=#track-url>track URL</a> are handled in
26192 <p>When a <code><a href=#the-track-element>track</a></code> element's parent element changes and
26193 the new parent is a <a href=#media-element>media element</a>, then add the
26194 <code><a href=#the-track-element>track</a></code> element's corresponding <a href=#timed-track>timed track</a>
26195 to the <a href=#media-element>media element</a>'s <a href=#list-of-timed-tracks>list of timed
26198 <p>When a <code><a href=#the-track-element>track</a></code> element's parent element changes and
26199 the old parent was a <a href=#media-element>media element</a>, then remove the
26200 <code><a href=#the-track-element>track</a></code> element's corresponding <a href=#timed-track>timed track</a>
26201 from the <a href=#media-element>media element</a>'s <a href=#list-of-timed-tracks>list of timed
26204 <p>When a <a href=#timed-track>timed track</a> corresponding to a
26205 <code><a href=#the-track-element>track</a></code> element is added to a <a href=#media-element>media
26206 element</a>'s <a href=#list-of-timed-tracks>list of timed tracks</a>, <span class=XXX>update the mode appropriately</span>.</p>
26208 <p>When a <a href=#timed-track>timed track</a> corresponding to a
26209 <code><a href=#the-track-element>track</a></code> element is created with <a href=#timed-track-mode>timed track
26210 mode</a> set to <a href=#timed-track-hidden title="timed track hidden">hidden</a> or
26211 <a href=#timed-track-showing title="timed track showing">showing</a>, and when a
26212 <a href=#timed-track>timed track</a> corresponding to a <code><a href=#the-track-element>track</a></code>
26213 element is created with <a href=#timed-track-mode>timed track mode</a> set to <a href=#timed-track-disabled title="timed track disabled">disabled</a> and subsequently
26214 changes its <a href=#timed-track-mode>timed track mode</a> to <a href=#timed-track-hidden title="timed
26215 track hidden">hidden</a> or <a href=#timed-track-showing title="timed track
26220 <ol><li><p>Set the <a href=#timed-track-readiness-state>timed track readiness state</a> to <a href=#timed-track-loading title="timed track loading">loading</a>.</li>
26222 <li><p>Let <var title="">URL</var> be the <a href=#track-url>track URL</a> of
26223 the <code><a href=#the-track-element>track</a></code> element.</li>
26226 with whatever task was responsible for creating the <a href=#timed-track>timed
26227 track</a> or changing the <a href=#timed-track-mode>timed track
26232 <p><i>Download</i>: <a href=#fetch>Fetch</a> <var title="">URL</var>, if
26236 <p>The <a href=#concept-task title=concept-task>tasks</a> <a href=#queue-a-task title="queue
26237 a task">queued</a> by the <a href=#fetch title=fetch>fetching
26238 href=#networking-task-source>networking task source</a> to
26241 <p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for
26243 cross-origin checks mentioned above fail, etc), or if <var title="">URL</var> is the empty string, then <a href=#queue-a-task>queue a
26244 task</a> to first change the <a href=#timed-track-readiness-state>timed track readiness state</a>
26245 to <a href=#timed-track-failed-to-load title="timed track failed to load">failed to load</a>
26246 and then <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the <code><a href=#the-track-element>track</a></code>
26247 element; and then, once that <a href=#concept-task title=concept-task>task</a> is <a href=#queue-a-task title="queue a
26251 <p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not
26252 fail, then, when it completes, <a href=#queue-a-task>queue a task</a> to first
26253 change the <a href=#timed-track-readiness-state>timed track readiness state</a> to <a href=#timed-track-loaded title="timed track loaded">loaded</a> and then <a href=#fire-a-simple-event>fire a
26255 the <code><a href=#the-track-element>track</a></code> element; and then, once that <a href=#concept-task title=concept-task>task</a> is <a href=#queue-a-task title="queue a
26259 <p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is
26262 <ul><li>the <a href=#track-url>track URL</a> changes so that it is no longer
26263 equal to <var title="">URL</var>, while the <a href=#timed-track-mode>timed track
26264 mode</a> is set to <a href=#timed-track-hidden title="timed track
26265 hidden">hidden</a> or <a href=#timed-track-showing title="timed track
26268 <li>the <a href=#timed-track-mode>timed track mode</a> changes to <a href=#timed-track-hidden title="timed track hidden">hidden</a> or <a href=#timed-track-showing title="timed
26269 track showing">showing</a>, while the <a href=#track-url>track URL</a> is
26274 <ol><li><p>Abort the <a href=#fetch title=fetch>fetching
26277 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
26279 the <code><a href=#the-track-element>track</a></code> element.</li>
26281 <li><p>Let <var title="">URL</var> be the new <a href=#track-url>track
26289 <li><p><i>Monitoring</i>: Wait until the <a href=#track-url>track URL</a> is
26291 <a href=#timed-track-mode>timed track mode</a> is set to <a href=#timed-track-hidden title="timed track
26292 hidden">hidden</a> or <a href=#timed-track-showing title="timed track
26303 <a href=#timed-track-cue title="timed track cue">timed track cues</a></h6>
26329 readonly attribute <a href=#function>Function</a> <span title=dom-TimedTrack-onload>onload</span>;
26330 readonly attribute <a href=#function>Function</a> <span title=dom-TimedTrack-onerror>onerror</span>;
26337 readonly attribute <a href=#timedtrackcuelist>TimedTrackCueList</a> <span title=dom-TimedTrack-cues>cues</span>;
26338 readonly attribute <a href=#timedtrackcuelist>TimedTrackCueList</a> <span title=dom-TimedTrack-activeCues>activeCues</span>;
26339 readonly attribute <a href=#function>Function</a> <span title=dom-TimedTrack-onentercue>onentercue</span>;
26340 readonly attribute <a href=#function>Function</a> <span title=dom-TimedTrack-onexitcue>onexitcue</span>;
26343 interface <dfn id=mutabletimedtrack>MutableTimedTrack</dfn> : <a href=#timedtrack>TimedTrack</a> {
26344 void <span title=dom-MutableTimedTrack-addCue>addCue</span>(in <a href=#timedtrackcue>TimedTrackCue</a> cue);
26345 void <span title=dom-MutableTimedTrack-removeCue>removeCue</span>(in <a href=#timedtrackcue>TimedTrackCue</a> cue);
26350 getter <a href=#timedtrackcue>TimedTrackCue</a> (in unsigned long index);
26351 <a href=#timedtrackcue>TimedTrackCue</a> getCueById(in DOMString id);
26356 readonly attribute <a href=#timedtrack>TimedTrack</a> <span title=dom-TimedTrackCue-track>track</span>;
26372 <a href=#documentfragment>DocumentFragment</a> <span title=dom-TimedTrackCue-getCueAsHTML()>getCueAsHTML</span>();
26408 <p>A <dfn id=websrt-file>WebSRT file</dfn> must consist of a <a href=#websrt-file-body>WebSRT file
26411 <p>A <dfn id=websrt-file-body>WebSRT file body</dfn> consists of zero or more <a href=#websrt-cue title="WebSRT cue">WebSRT cues</a> separated from each other by
26412 two or more <a href=#websrt-line-terminator title="WebSRT line terminator">WebSRT line
26418 <ol><li>Optionally, a <a href=#websrt-cue-identifier>WebSRT cue identifier</a>.</li>
26419 <li><a href=#websrt-cue-timings>WebSRT cue timings</a>.</li>
26420 <li>Optionally, <a href=#websrt-cue-settings>WebSRT cue settings</a>.</li>
26421 <li>A <a href=#websrt-line-terminator>WebSRT line terminator</a>.</li>
26422 <li>Optionally, a <a href=#websrt-voice-declaration>WebSRT voice declaration</a>.</li>
26423 <li>One or more <a href=#websrt-cue-text-line title="WebSRT cue text line">WebSRT cue text lines</a>, each separated from the next by a <a href=#websrt-line-terminator>WebSRT line terminator</a>.</li>
26424 <li>Zero or more <a href=#websrt-line-terminator title="WebSRT line terminator">WebSRT line terminators</a>.</li>
26436 <p>The <dfn id=websrt-cue-timings>WebSRT cue timings</dfn> part of a <a href=#websrt-cue>WebSRT
26440 <ol><li>A <a href=#websrt-timestamp>WebSRT timestamp</a> representing the start time
26450 <li>A <a href=#websrt-timestamp>WebSRT timestamp</a> representing the end time
26453 </ol><p>The <dfn id=websrt-cue-settings>WebSRT cue settings</dfn> part of a <a href=#websrt-cue>WebSRT
26467 <a href=#timed-track-list-of-cues>timed track list of cues</a> <var title="">output</var>,
26470 according to the <a href=#websrt-parser-algorithm>WebSRT parser algorithm</a> below. A
26471 <a href=#websrt-parser>WebSRT parser</a>, specifically its conversion and parsing
26487 string. In an <a href=#incremental-websrt-parser>incremental WebSRT parser</a>, when this
26496 <li><p><i>Cue loop</i>: <a href=#collect-a-sequence-of-characters>Collect a sequence of
26502 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are
26526 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are
26537 <a href=#websrt-parser>WebSRT parser</a> has finished.</li>
26547 attribute is a <a href=#boolean-attribute>boolean attribute</a>. If present, it
26553 <p>If the attribute is present, or if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
26554 <a href=#media-element>media element</a>, then the user agent should <dfn id=expose-a-user-interface-to-the-user>expose a
26572 such features could be exposed in the <a href=#media-element>media element</a>'s
26582 IDL attribute must <a href=#reflect>reflect</a> the content attribute of the
26587 <dl class=domintro><dt><var title="">media</var> . <code title=dom-media-volume><a href=#dom-media-volume>volume</a></code> [ = <var title="">value</var> ]</dt>
26596 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> if the new value is not
26601 <dt><var title="">media</var> . <code title=dom-media-muted><a href=#dom-media-muted>muted</a></code> [ = <var title="">value</var> ]</dt>
26605 <p>Returns true if audio is muted, overriding the <code title=dom-media-volume><a href=#dom-media-volume>volume</a></code> attribute, and false if the
26606 <code title=dom-media-volume><a href=#dom-media-volume>volume</a></code> attribute is being
26617 the <a href=#media-element>media element</a>, in the range 0.0 (silent) to 1.0
26629 then, on setting, an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception must be
26639 <a href=#media-resource>media resource</a> must then be muted, and if false, audio
26642 <p>Whenever either the <code title=dom-media-muted><a href=#dom-media-muted>muted</a></code> or
26643 <code title=dom-media-volume><a href=#dom-media-volume>volume</a></code> attributes are changed,
26644 the user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
26645 event</a> named <code title=event-media-volumechange><a href=#event-media-volumechange>volumechange</a></code> at the <a href=#media-element>media
26655 <p>Objects implementing the <code><a href=#timeranges>TimeRanges</a></code> interface
26659 readonly attribute unsigned long <a href=#dom-timeranges-length title=dom-TimeRanges-length>length</a>;
26660 float <a href=#dom-timeranges-start title=dom-TimeRanges-start>start</a>(in unsigned long index);
26661 float <a href=#dom-timeranges-end title=dom-TimeRanges-end>end</a>(in unsigned long index);
26664 <dl class=domintro><dt><var title="">media</var> . <code title=dom-TimeRanges-length><a href=#dom-timeranges-length>length</a></code></dt>
26672 <dt><var title="">time</var> = <var title="">media</var> . <code title=dom-TimeRanges-start><a href=#dom-timeranges-start>start</a></code>(<var title="">index</var>)</dt>
26678 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> if the index is out of range.</p>
26682 <dt><var title="">time</var> = <var title="">media</var> . <code title=dom-TimeRanges-end><a href=#dom-timeranges-end>end</a></code>(<var title="">index</var>)</dt>
26688 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> if the index is out of range.</p>
26707 <p>These methods must raise <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exceptions
26711 <p>When a <code><a href=#timeranges>TimeRanges</a></code> object is said to be a
26725 <p>The timelines used by the objects returned by the <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>, <code title=dom-media-seekable><a href=#dom-media-seekable>seekable</a></code> and <code title=dom-media-played><a href=#dom-media-played>played</a></code> IDL attributes of <a href=#media-element title="media element">media elements</a> must be the same as that
26726 element's <a href=#media-resource>media resource</a>'s timeline.</p>
26735 <p>The following events fire on <a href=#media-element title="media element">media
26744 <td><code><a href=#event>Event</a></code>
26745 <td>The user agent begins looking for <a href=#media-data>media data</a>, as part of the <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection algorithm</a>.
26746 <td><code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> equals <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>
26748 <td><code><a href=#event>Event</a></code>
26749 <td>The user agent is fetching <a href=#media-data>media data</a>.
26750 <td><code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> equals <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>
26752 <td><code><a href=#event>Event</a></code>
26753 <td>The user agent is intentionally not currently fetching <a href=#media-data>media data</a>, but does not have the entire <a href=#media-resource>media resource</a> downloaded.
26754 <td><code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> equals <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code>
26756 <td><code><a href=#event>Event</a></code>
26757 <td>The user agent stops fetching the <a href=#media-data>media data</a> before it is completely downloaded, but not due to an error.
26758 <td><code title=dom-media-error><a href=#dom-media-error>error</a></code> is an object with the code <code title=dom-MediaError-MEDIA_ERR_ABORTED><a href=#dom-mediaerror-media_err_aborted>MEDIA_ERR_ABORTED</a></code>.
26759 <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> equals either <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> or <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code>, depending on when the download was aborted.
26761 <td><code><a href=#event>Event</a></code>
26762 <td>An error occurs while fetching the <a href=#media-data>media data</a>.
26763 <td><code title=dom-media-error><a href=#dom-media-error>error</a></code> is an object with the code <code title=dom-MediaError-MEDIA_ERR_NETWORK><a href=#dom-mediaerror-media_err_network>MEDIA_ERR_NETWORK</a></code> or higher.
26764 <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> equals either <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> or <code title=dom-media-NETWORK_IDLE><a href=#dom-media-network_idle>NETWORK_IDLE</a></code>, depending on when the download was aborted.
26766 <td><code><a href=#event>Event</a></code>
26767 <td>A <a href=#media-element>media element</a> whose <code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> was previously not in the <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code> state has just switched to that state (either because of a fatal error during load that's about to be reported, or because the <code title=dom-media-load><a href=#dom-media-load>load()</a></code> method was invoked while the <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection algorithm</a> was already running).
26768 <td><code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> is <code title=dom-media-NETWORK_EMPTY><a href=#dom-media-network_empty>NETWORK_EMPTY</a></code>; all the IDL attributes are in their initial states.
26770 <td><code><a href=#event>Event</a></code>
26771 <td>The user agent is trying to fetch <a href=#media-data>media data</a>, but data is unexpectedly not forthcoming.
26772 <td><code title=dom-media-networkState><a href=#dom-media-networkstate>networkState</a></code> is <code title=dom-media-NETWORK_LOADING><a href=#dom-media-network_loading>NETWORK_LOADING</a></code>.
26775 <td><code><a href=#event>Event</a></code>
26776 <td>Playback has begun. Fired after the <code title=dom-media-play><a href=#dom-media-play>play()</a></code> method has returned, or when the <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code> attribute has caused playback to begin.
26777 <td><code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is newly false.
26779 <td><code><a href=#event>Event</a></code>
26780 <td>Playback has been paused. Fired after the <code title=dom-media-pause><a href=#dom-media-pause>pause()</a></code> method has returned.
26781 <td><code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is newly true.
26784 <td><code><a href=#event>Event</a></code>
26785 <td>The user agent has just determined the duration and dimensions of the <a href=#media-resource>media resource</a>
26787 and <a href=#the-timed-tracks-are-ready>the timed tracks are ready</a>.
26789 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater for the first time.
26791 <td><code><a href=#event>Event</a></code>
26792 <td>The user agent can render the <a href=#media-data>media data</a> at the <a href=#current-playback-position>current playback position</a> for the first time.
26793 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> newly increased to <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code> or greater for the first time.
26795 <td><code><a href=#event>Event</a></code>
26797 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or less than <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code>, and <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false. Either <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is true, or the <a href=#current-playback-position>current playback position</a> is not contained in any of the ranges in <code title=dom-media-buffered><a hrefhref=#dom-media-paused>paused</a></code> being false, but those two reasons do not fire this event: maybe <a href=#ended-playback title="ended playback">playback ended</a>, or playback <a href=#stopped-due-to-errors>stopped due to errors</a>.
26799 <td><code><a href=#event>Event</a></code>
26801 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or greater than <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>, <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false, <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is false, or the <a href=#current-playback-position>current playback position</a> is contained in one of the ranges in <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>.
26803 <td><code><a href=#event>Event</a></code>
26804 <td>The user agent can resume playback of the <a href=#media-data>media data</a>, but estimates that if playback were to be started now, the <a href=#media-resource>media resource</a> could not be rendered at the current playback rate up to its end without having to stop for further buffering of content.
26805 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> newly increased to <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or greater.
26807 <td><code><a href=#event>Event</a></code>
26808 <td>The user agent estimates that if playback were to be started now, the <a href=#media-resource>media resource</a> could be rendered at the current playback rate all the way to its end without having to stop for further buffering.
26809 <td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to <code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>.
26812 <td><code><a href=#event>Event</a></code>
26813 <td>The <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL attribute changed to true and the seek operation is taking long enough that the user agent has time to fire the event.
26816 <td><code><a href=#event>Event</a></code>
26817 <td>The <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> IDL attribute changed to false.
26820 <td><code><a href=#event>Event</a></code>
26821 <td>The <a href=#current-playback-position>current playback position</a> changed as part of normal playback or in an especially interesting way, for example discontinuously.
26824 <td><code><a href=#event>Event</a></code>
26825 <td>Playback has stopped because the end of the <a href=#media-resource>media resource</a> was reached.
26826 <td><code title=dom-media-currentTime><a href=#dom-media-currenttime>currentTime</a></code> equals the end of the <a href=#media-resource>media resource</a>; <code title=dom-media-ended><a href=#dom-media-ended>ended</a></code> is true.
26829 <td><code><a href=#event>Event</a></code>
26830 <td>Either the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code> or the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attribute has just been updated.
26833 <td><code><a href=#event>Event</a></code>
26834 <td>The <code title=dom-media-duration><a href=#dom-media-duration>duration</a></code> attribute has just been updated.
26837 <td><code><a href=#event>Event</a></code>
26838 <td>Either the <code title=dom-media-volume><a href=#dom-media-volume>volume</a></code> attribute or the <code title=dom-media-muted><a href=#dom-media-muted>muted</a></code> attribute has changed. Fired after the relevant attribute's setter has returned.
26845 <code><a href=#video>video</a></code> and <code><a href=#audio>audio</a></code> elements come from the
26852 the <code><a href=#document>Document</a></code> that embeds the content. To avoid this,
26856 own unrelated <a href=#top-level-browsing-context>top-level browsing context</a>.</p>
26859 a <code><a href=#video>video</a></code> element, the user agent would not give it
26871 <code><a href=#the-img-element>img</a></code> element, and so it has been deemed acceptable.</p>
26878 content's site has opted in to exposing such information. <a href=#refsCORS>[CORS]</a></p> <!-- v2 -->
26893 <dd><a href=#flow-content>Flow content</a>.</dd>
26894 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
26895 <dd><a href=#embedded-content>Embedded content</a>.</dd>
26897 <dd>Where <a href=#embedded-content>embedded content</a> is expected.</dd>
26899 <dd><a href=#transparent>Transparent</a>.</dd>
26901 <dd><a href=#global-attributes>Global attributes</a></dd>
26902 <dd><code title=attr-canvas-width><a href=#attr-canvas-width>width</a></code></dd>
26903 <dd><code title=attr-canvas-height><a href=#attr-canvas-height>height</a></code></dd>
26906 <pre class=idl>interface <dfn id=htmlcanvaselement>HTMLCanvasElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
26907 attribute unsigned long <a href=#dom-canvas-width title=dom-canvas-width>width</a>;
26908 attribute unsigned long <a href=#dom-canvas-height title=dom-canvas-height>height</a>;
26910 DOMString <a href=#dom-canvas-todataurl title=dom-canvas-toDataURL>toDataURL</a>(in optional DOMString type, in any... args);
26912 object <a href=#dom-canvas-getcontext title=dom-canvas-getContext>getContext</a>(in DOMString contextId);
26915 </dl><p>The <code><a href=#the-canvas-element>canvas</a></code> element provides scripts with a
26919 <p>Authors should not use the <code><a href=#the-canvas-element>canvas</a></code> element in a
26921 is inappropriate to use a <code><a href=#the-canvas-element>canvas</a></code> element to render a
26924 elements (typically <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>) and then styled using CSS and
26927 <p>When authors use the <code><a href=#the-canvas-element>canvas</a></code> element, they must also
26930 content may be placed as content of the <code><a href=#the-canvas-element>canvas</a></code>
26931 element. The contents of the <code><a href=#the-canvas-element>canvas</a></code> element, if any,
26932 are the element's <a href=#fallback-content>fallback content</a>.</p>
26934 <p>In interactive visual media, if <a href=#concept-n-script title=concept-n-script>scripting is enabled</a> for the
26935 <code><a href=#the-canvas-element>canvas</a></code> element, and if support for <code><a href=#the-canvas-element>canvas</a></code>
26936 elements has been enabled, the <code><a href=#the-canvas-element>canvas</a></code> element
26937 <a href=#represents>represents</a> <a href=#embedded-content>embedded content</a> consisting of
26941 <code><a href=#the-canvas-element>canvas</a></code> element has been previously painted on (e.g. if
26944 painted on the element), then the <code><a href=#the-canvas-element>canvas</a></code> element
26945 <a href=#represents>represents</a> <a href=#embedded-content>embedded content</a> with the
26947 <a href=#fallback-content>fallback content</a> instead.</p>
26949 <p>In non-visual media, and in visual media if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
26950 <code><a href=#the-canvas-element>canvas</a></code> element or if support for <code><a href=#the-canvas-element>canvas</a></code>
26951 elements has been disabled, the <code><a href=#the-canvas-element>canvas</a></code> element
26952 <a href=#represents>represents</a> its <a href=#fallback-content>fallback content</a>
26956 <p>When a <code><a href=#the-canvas-element>canvas</a></code> element <a href=#represents>represents</a>
26957 <a href=#embedded-content>embedded content</a>, the user can still focus descendants
26958 of the <code><a href=#the-canvas-element>canvas</a></code> element (in the <a href=#fallback-content>fallback
26961 interactive regions to focusable elements in the <a href=#fallback-content>fallback
26964 <p>The <code><a href=#the-canvas-element>canvas</a></code> element has two attributes to control the
26966 attributes, when specified, must have values that are <a href=#valid-non-negative-integer title="valid non-negative integer">valid non-negative
26967 integers</a>. <span class=impl>The <a href=#rules-for-parsing-non-negative-integers>rules for parsing
26971 <code title=attr-canvas-width><a href=#attr-canvas-width>width</a></code> attribute defaults to
26972 300, and the <code title=attr-canvas-height><a href=#attr-canvas-height>height</a></code>
26975 <p>The intrinsic dimensions of the <code><a href=#the-canvas-element>canvas</a></code> element equal
26990 <p>When the <code><a href=#the-canvas-element>canvas</a></code> element is created, and subsequently
26991 whenever the <code title=attr-canvas-width><a href=#attr-canvas-width>width</a></code> and <code title=attr-canvas-height><a href=#attr-canvas-height>height</a></code> attributes are set (whether
27002 attributes must <a href=#reflect>reflect</a> the respective content
27020 <code><a href=#the-canvas-element>canvas</a></code> element.</p>
27022 <dl class=domintro><dt><var title="">context</var> = <var title="">canvas</var> . <code title=dom-canvas-getContext><a href=#dom-canvas-getcontext>getContext</a></code>(<var title="">contextId</var>)</dt>
27032 </dl><p>This specification only defines one context, with the name "<code title=canvas-context-2d><a hrefhref=#dom-canvas-getcontext>getContext()</a></code> is called with
27035 <code><a href=#canvasrenderingcontext2d>CanvasRenderingContext2D</a></code>. Other specifications may
27048 comparisons must be <a href=#case-sensitive>case-sensitive</a>.</p>
27052 <hr><dl class=domintro><dt><var title="">url</var> = <var title="">canvas</var> . <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL</a></code>( [ <var title="">type</var>, ... ])</dt>
27071 as a PNG file. <a href=#refsPNG>[PNG]</a></p>
27077 <p>When the <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL(<var title="">type</var>)</a></code> method is called with one <em>or
27080 <var title="">type</var>. The possible values are <a href=#mime-type title="MIME
27096 <p>User agents must <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">convert the
27132 specification. <a href=#refsWEBIDL>[WEBIDL]</a></p>
27136 probably define other parameters to be passed to <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> to allow authors to
27150 <p>When the <code title=dom-canvas-getContext><a href=#dom-canvas-getcontext>getContext()</a></code>
27151 method of a <code><a href=#the-canvas-element>canvas</a></code> element is invoked with <dfn id=canvas-context-2d title=canvas-context-2d><code>2d</code></dfn> as the argument, a
27152 <code><a href=#canvasrenderingcontext2d>CanvasRenderingContext2D</a></code> object is returned.</p>
27159 <p>There is only one <code><a href=#canvasrenderingcontext2d>CanvasRenderingContext2D</a></code> object
27160 per canvas, so calling the <code title=dom-canvas-getContext><a href=#dom-canvas-getcontext>getContext()</a></code> method with the
27161 <code title=canvas-context-2d><a href=#canvas-context-2d>2d</a></code> argument a second time
27173 readonly attribute <a href=#htmlcanvaselement>HTMLCanvasElement</a> <a href=#dom-context-2d-canvas title=dom-context-2d-canvas>canvas</a>;
27176 void <a href=#dom-context-2d-save title=dom-context-2d-save>save</a>(); // push state on state stack
27177 void <a href=#dom-context-2d-restore title=dom-context-2d-restore>restore</a>(); // pop state stack and restore state
27185 void <a href=#dom-context-2d-scale title=dom-context-2d-scale>scale</a>(in float x, in float y);
27186 void <a href=#dom-context-2d-rotate title=dom-context-2d-rotate>rotate</a>(in float angle);
27187 void <a href=#dom-context-2d-translate title=dom-context-2d-translate>translate</a>(in float x, in float y);
27188 void <a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(in float m11, in float m12, in float m21, in float m22, in float dx, in float dy);
27189 void <a href=#dom-context-2d-settransform title=dom-context-2d-setTransform>setTransform</a>(in float m11, in float m12, in float m21, in float m22, in float dx, in float dy);
27196 attribute float <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>globalAlpha</a>; // (default 1.0)
27197 attribute DOMString <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>globalCompositeOperation</a>; // (default source-over)
27208 attribute any <a href=#dom-context-2d-strokestyle title=dom-context-2d-strokeStyle>strokeStyle</a>; // (default black)
27209 attribute any <a href=#dom-context-2d-fillstyle title=dom-context-2d-fillStyle>fillStyle</a>; // (default black)
27210 <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createlineargradient title=dom-context-2d-createLinearGradient>createLinearGradient</a>(in float x0, in float y0, in float x1, in float y1);
27211 <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createradialgradient title=dom-context-2d-createRadialGradient>createRadialGradient</a>(in float x0, in float y0, in float r0, in float x1, in float y1, in float r1);
27212 <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in DOMString repetition);
27213 <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in DOMString repetition);
27214 <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in DOMString repetition);
27217 attribute float <a href=#dom-context-2d-linewidth title=dom-context-2d-lineWidth>lineWidth</a>; // (default 1)
27218 attribute DOMString <a href=#dom-context-2d-linecap title=dom-context-2d-lineCap>lineCap</a>; // "butt", "round", "square" (default "butt")
27219 attribute DOMString <a href=#dom-context-2d-linejoin title=dom-context-2d-lineJoin>lineJoin</a>; // "round", "bevel", "miter" (default "miter")
27220 attribute float <a href=#dom-context-2d-miterlimit title=dom-context-2d-miterLimit>miterLimit</a>; // (default 10)
27223 attribute float <a href=#dom-context-2d-shadowoffsetx title=dom-context-2d-shadowOffsetX>shadowOffsetX</a>; // (default 0)
27224 attribute float <a href=#dom-context-2d-shadowoffsety title=dom-context-2d-shadowOffsetY>shadowOffsetY</a>; // (default 0)
27225 attribute float <a href=#dom-context-2d-shadowblur title=dom-context-2d-shadowBlur>shadowBlur</a>; // (default 0)
27226 attribute DOMString <a href=#dom-context-2d-shadowcolor title=dom-context-2d-shadowColor>shadowColor</a>; // (default transparent black)
27229 void <a href=#dom-context-2d-clearrect title=dom-context-2d-clearRect>clearRect</a>(in float x, in float y, in float w, in float h);
27230 void <a href=#dom-context-2d-fillrect title=dom-context-2d-fillRect>fillRect</a>(in float x, in float y, in float w, in float h);
27231 void <a href=#dom-context-2d-strokerect title=dom-context-2d-strokeRect>strokeRect</a>(in float x, in float y, in float w, in float h);
27234 void <a href=#dom-context-2d-beginpath title=dom-context-2d-beginPath>beginPath</a>();
27235 void <a href=#dom-context-2d-closepath title=dom-context-2d-closePath>closePath</a>();
27236 void <a href=#dom-context-2d-moveto title=dom-context-2d-moveTo>moveTo</a>(in float x, in float y);
27237 void <a href=#dom-context-2d-lineto title=dom-context-2d-lineTo>lineTo</a>(in float x, in float y);
27238 void <a href=#dom-context-2d-quadraticcurveto title=dom-context-2d-quadraticCurveTo>quadraticCurveTo</a>(in float cpx, in float cpy, in float x, in float y);
27239 void <a href=#dom-context-2d-beziercurveto title=dom-context-2d-bezierCurveTo>bezierCurveTo</a>(in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y);
27240 void <a href=#dom-context-2d-arcto title=dom-context-2d-arcTo>arcTo</a>(in float x1, in float y1, in float x2, in float y2, in float radius);
27241 void <a href=#dom-context-2d-rect title=dom-context-2d-rect>rect</a>(in float x, in float y, in float w, in float h);
27242 void <a href=#dom-context-2d-arc title=dom-context-2d-arc>arc</a>(in float x, in float y, in float radius, in float startAngle, in float endAngle, in boolean anticlockwise);
27243 void <a href=#dom-context-2d-fill title=dom-context-2d-fill>fill</a>();
27244 void <a href=#dom-context-2d-stroke title=dom-context-2d-stroke>stroke</a>();
27245 void <a href=#dom-context-2d-clip title=dom-context-2d-clip>clip</a>();
27246 boolean <a href=#dom-context-2d-ispointinpath title=dom-context-2d-isPointInPath>isPointInPath</a>(in float x, in float y);
27249 boolean <a href=#dom-context-2d-drawfocusring title=dom-context-2d-drawFocusRing>drawFocusRing</a>(in <a href=#element>Element</a> element, in float xCaret, in float yCaret, in optional boolean canDrawCustom);
27252 attribute DOMString <a href=#dom-context-2d-font title=dom-context-2d-font>font</a>; // (default 10px sans-serif)
27253 attribute DOMString <a href=#dom-context-2d-textalign title=dom-context-2d-textAlign>textAlign</a>; // "start", "end", "left", "right", "center" (default: "start")
27254 attribute DOMString <a href=#dom-context-2d-textbaseline title=dom-context-2d-textBaseline>textBaseline</a>; // "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" (default: "alphabetic")
27255 void <a href=#dom-context-2d-filltext title=dom-context-2d-fillText>fillText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);
27256 void <a href=#dom-context-2d-stroketext title=dom-context-2d-strokeText>strokeText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);<!-- v5DVT
27259 <a href=#textmetrics>TextMetrics</a> <a href=#dom-context-2d-measuretext title=dom-context-2d-measureText>measureText</a>(in DOMString text);
27262 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
27263 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
27264 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
27265 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
27266 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href
27267 void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
27270 <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in float sw, in float sh);
27271 <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in <a href=#imagedata>ImageData</a> imagedata);
27272 <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-getimagedata title=dom-context-2d-getImageData>getImageData</a>(in float sx, in float sy, in float sw, in float sh);
27273 void <a href=#dom-context-2d-putimagedata title=dom-context-2d-putImageData>putImageData</a>(in <a href=#imagedata>ImageData</a> imagedata, in float dx, in float dy, in optional float dirtyX, in float dirtyY, in float dirtyWidth, in float dirtyHeight);
27278 void <a href=#dom-canvasgradient-addcolorstop title=dom-canvasgradient-addColorStop>addColorStop</a>(in float offset, in DOMString color);
27286 readonly attribute float <a href=#dom-textmetrics-width title=dom-textmetrics-width>width</a>;
27290 readonly attribute unsigned long <a href=#dom-imagedata-width title=dom-imagedata-width>width</a>;
27291 readonly attribute unsigned long <a href=#dom-imagedata-height title=dom-imagedata-height>height</a>;
27292 readonly attribute <a href=#canvaspixelarray>CanvasPixelArray</a> <a href=#dom-imagedata-data title=dom-imagedata-data>data</a>;
27296 readonly attribute unsigned long <a href=#dom-canvaspixelarray-length title=dom-canvaspixelarray-length>length</a>;
27297 <a href=#dom-canvaspixelarray-get title=dom-CanvasPixelArray-get>getter</a> octet (in unsigned long index);
27298 <a href=#dom-canvaspixelarray-set title=dom-CanvasPixelArray-set>setter</a> void (in unsigned long index, in octet value);
27301 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-canvas><a href=#dom-context-2d-canvas>canvas</a></code></dt>
27305 <p>Returns the <code><a href=#the-canvas-element>canvas</a></code> element.</p>
27312 attribute must return the <code><a href=#the-canvas-element>canvas</a></code> element that the
27339 <a href=#in-a-document>in a <code>Document</code></a>), then the "computed value
27342 fully opaque black. <a href=#refsCSSCOLOR>[CSSCOLOR]</a></p>
27352 <ul class=brief><li>The current <a href=#transformations title=dom-context-2d-transformation>transformation matrix</a>.</li>
27353 <li>The current <a href=#clipping-region>clipping region</a>.</li>
27354 <li>The current values of the following attributes: <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code>, <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code>, <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code>, <code title=dom-context-2d-lineWidth><a href=#dom-context-2d-linewidth>lineWidth</a></code>, <code title=dom-context-2d-lineCap><a href=#dom-context-2d-linecap>lineCap</a></code>, <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code>, <code title=dom-context-2d-miterLimit><a href=#dom-context-2d-miterlimit>miterLimit</a></code>, <code title=dom-context-2d-shadowOffsetX><a href=#dom-context-2d-shadowoffsetx>shadowOffsetX</a></code>, <code title=dom-context-2d-shadowOffsetY><a href=#dom-context-2d-shadowoffsety>shadowOffsetY</a></code>, <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code>, <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code>, <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code>, <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code>, <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code>, <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code>.</li>
27357 be reset using the <code title=dom-context-2d-beginPath><a href=#dom-context-2d-beginpath>beginPath()</a></code> method. The
27360 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-save><a href=#dom-context-2d-save>save</a></code>()</dt>
27368 <dt><var title="">context</var> . <code title=dom-context-2d-restore><a href=#dom-context-2d-restore>restore</a></code>()</dt>
27429 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-scale><a href=#dom-context-2d-scale>scale</a></code>(<var title="">x</var>, <var title="">y</var>)</dt>
27437 <dt><var title="">context</var> . <code title=dom-context-2d-rotate><a href=#dom-context-2d-rotate>rotate</a></code>(<var title="">angle</var>)</dt>
27445 <dt><var title="">context</var> . <code title=dom-context-2d-translate><a href=#dom-context-2d-translate>translate</a></code>(<var title="">x</var>, <var title="">y</var>)</dt>
27453 <dt><var title="">context</var> . <code title=dom-context-2d-transform><a href=#dom-context-2d-transform>transform</a></code>(<var title="">m11</var>, <var title="">m12</var>, <var title="">m21</var>, <var title="">m22</var>, <var title="">dx</var>, <var title="">dy</var>)</dt>
27461 <dt><var title="">context</var> . <code title=dom-context-2d-setTransform><a href=#dom-context-2d-settransform>setTransform</a></code>(<var title="">m11</var>, <var title="">m12</var>, <var title="">m21</var>, <var title="">m22</var>, <var title="">dx</var>, <var title="">dy</var>)</dt>
27507 transform to the identity matrix, and then invoke the <code><a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(<var title="">m11</var>, <var title="">m12</var>, <var title="">m21</var>, <var title="">m22</var>, <var title="">dx</var>,
27515 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code> [ = <var title="">value</var> ]</dt>
27527 <dt><var title="">context</var> . <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code> [ = <var title="">value</var> ]</dt>
27541 attributes, <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code> and <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code>.</p>
27553 context is created, the <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code> attribute must
27558 bitmap, once they have had <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code> and the
27596 <dd><var title="">B</var> atop <var title="">A</var>. Same as <code title=gcop-source-atop><a href=#gcop-source-atop>source-atop</a></code> but using the
27601 <dd><var title="">B</var> in <var title="">A</var>. Same as <code title=gcop-source-in><a href=#gcop-source-in>source-in</a></code> but using the destination
27606 <dd><var title="">B</var> out <var title="">A</var>. Same as <code title=gcop-source-out><a href=#gcop-source-out>source-out</a></code> but using the destination
27611 <dd><var title="">B</var> over <var title="">A</var>. Same as <code title=gcop-source-over><a href=#gcop-source-over>source-over</a></code> but using the
27651 a <a href=#case-sensitive>case-sensitive</a> match for one of the values given
27656 (e.g. <var title="">A</var> over <var title="">B</var>). <a href=#refsPORTERDUFF>[PORTERDUFF]</a></p>
27659 value, it must be ignored, leaving the value of <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code>
27662 <p>When the context is created, the <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code>
27671 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> [ = <var title="">value</var> ]</dt>
27680 <code><a href=#canvasgradient>CanvasGradient</a></code> or <code><a href=#canvaspattern>CanvasPattern</a></code>
27685 <dt><var title="">context</var> . <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> [ = <var title="">value</var> ]</dt>
27694 <code><a href=#canvasgradient>CanvasGradient</a></code> or <code><a href=#canvaspattern>CanvasPattern</a></code>
27734 <code><a href=#canvasgradient>CanvasGradient</a></code>s, or <code><a href=#canvaspattern>CanvasPattern</a></code>s. On
27736 color assigned, and <code><a href=#canvasgradient>CanvasGradient</a></code> and
27737 <code><a href=#canvaspattern>CanvasPattern</a></code> objects must be assigned themselves. <a href=#refsCSSCOLOR>[CSSCOLOR]</a> If the value is a string but
27739 <code><a href=#canvasgradient>CanvasGradient</a></code>, nor a <code><a href=#canvaspattern>CanvasPattern</a></code>, then
27743 <p>When set to a <code><a href=#canvaspattern>CanvasPattern</a></code> or
27744 <code><a href=#canvasgradient>CanvasGradient</a></code> object, the assignment is
27745 <a href=#live>live</a>, meaning that changes made to the object after the
27748 <p>On getting, if the value is a color, then the <a href=#serialization-of-a-color title="serialization of a color">serialization of the color</a>
27750 <code><a href=#canvasgradient>CanvasGradient</a></code> or <code><a href=#canvaspattern>CanvasPattern</a></code>, then the
27775 <p>When the context is created, the <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> and <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> attributes must
27782 <code><a href=#canvasgradient>CanvasGradient</a></code> interface.</p>
27795 <dl class=domintro><dt><var title="">gradient</var> . <code title=dom-canvasgradient-addColorStop><a href=#dom-canvasgradient-addcolorstop>addColorStop</a></code>(<var title="">offset</var>, <var title="">color</var>)</dt>
27803 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the offset
27804 is out of range. Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if the
27809 <dt><var title="">gradient</var> = <var title="">context</var> . <code title=dom-context-2d-createLinearGradient><a href=#dom-context-2d-createlineargradient>createLinearGradient</a></code>(<var title="">x0</var>, <var title="">y0</var>, <var title="">x1</var>, <var title="">y1</var>)</dt>
27813 <p>Returns a <code><a href=#canvasgradient>CanvasGradient</a></code> object that represents a
27818 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception.</p>
27822 <dt><var title="">gradient</var> = <var title="">context</var> . <code title=dom-context-2d-createRadialGradient><a href=#dom-context-2d-createradialgradient>createRadialGradient</a></code>(<var title="">x0</var>, <var title="">y0</var>, <var title="">r0</var>, <var title="">x1</var>, <var title="">y1</var>, <var title="">r1</var>)</dt>
27826 <p>Returns a <code><a href=#canvasgradient>CanvasGradient</a></code> object that represents a
27831 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception. If either of the radii
27832 are negative, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
27839 method on the <code><a href=#canvasgradient>CanvasGradient</a></code> interface adds a new stop
27842 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception must be raised. If the <var title="">color</var> cannot be parsed as a CSS color, then a
27843 <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception must be raised. Otherwise, the
27855 that represent the start point (<var title="">x0</var>, <var title="">y0</var>) and end point (<var title="">x1</var>, <var title="">y1</var>) of the gradient. If any of the arguments to <code title=dom-context-2d-createLinearGradient><a href=#dom-context-2d-createlineargradient>createLinearGradient()</a></code>
27857 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception. Otherwise, the method must
27858 return a linear <code><a href=#canvasgradient>CanvasGradient</a></code> initialized with the
27864 coming from the <a href=#interpolation>interpolation and
27866 gradient must be transformed as described by the <a href=#transformations title=dom-context-2d-transformation>current transformation
27878 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised. If either
27880 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception must be raised. Otherwise,
27881 the method must return a radial <code><a href=#canvasgradient>CanvasGradient</a></code>
27898 that position on the gradient (with the colors coming from the <a href=#interpolation>interpolation and extrapolation</a>
27918 described by the <a href=#transformations title=dom-context-2d-transformation>current
27937 <code><a href=#canvaspattern>CanvasPattern</a></code> interface.</p>
27939 <dl class=domintro><dt><var title="">pattern</var> = <var title="">context</var> . <code title=dom-context-2d-createPattern><a href=#dom-context-2d-createpattern>createPattern</a></code>(<var title="">image</var>, <var title="">repetition</var>)</dt>
27943 <p>Returns a <code><a href=#canvaspattern>CanvasPattern</a></code> object that uses the given image
27949 <p>If the first argument isn't an <code><a href=#the-img-element>img</a></code>,
27950 <code><a href=#the-canvas-element>canvas</a></code>, or <code><a href=#video>video</a></code> element, throws a
27951 <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code> exception. If the image has no
27952 image data, throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception. If
27954 <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception. If the image isn't yet fully
27963 pattern (either an <code><a href=#htmlimageelement>HTMLImageElement</a></code>,
27964 <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code>, or <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>
27965 object). Modifying this image after calling the <code title=dom-context-2d-createPattern><a href=#dom-context-2d-createpattern>createPattern()</a></code> method
27972 <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception. User agents must recognize the
27974 folding). The method must return a <code><a href=#canvaspattern>CanvasPattern</a></code> object
27978 <code><a href=#htmlimageelement>HTMLImageElement</a></code>, <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code>, or
27979 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>. If the <var title="">image</var> is
27980 null, the implementation must raise a <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code>
27984 <code><a href=#htmlimageelement>HTMLImageElement</a></code> object whose <code title=dom-img-complete><a href=#dom-img-complete>complete</a></code> attribute is false, or
27986 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code> object whose <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is either
27987 <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code> or <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, then the
27992 <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> object with either a horizontal
27994 implementation must raise an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code>
28010 <p>When the <code title=dom-context-2d-createPattern><a href=#dom-context-2d-createpattern>createPattern()</a></code> method
28018 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>, then the frame at the <a href=#current-playback-position>current
28020 source image's dimensions must be the <a href=#concept-video-intrinsic-width title=concept-video-intrinsic-width>intrinsic width</a> and
28021 <a href=#concept-video-intrinsic-height title=concept-video-intrinsic-height>intrinsic height</a>
28022 of the <a href=#media-resource>media resource</a> (i.e. after any aspect-ratio
28039 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-lineWidth><a href=#dom-context-2d-linewidth>lineWidth</a></code> [ = <var title="">value</var> ]</dt>
28050 <dt><var title="">context</var> . <code title=dom-context-2d-lineCap><a href=#dom-context-2d-linecap>lineCap</a></code> [ = <var title="">value</var> ]</dt>
28064 <dt><var title="">context</var> . <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code> [ = <var title="">value</var> ]</dt>
28078 <dt><var title="">context</var> . <code title=dom-context-2d-miterLimit><a href=#dom-context-2d-miterlimit>miterLimit</a></code> [ = <var title="">value</var> ]</dt>
28098 <p>When the context is created, the <code title=dom-context-2d-lineWidth><a href=#dom-context-2d-linewidth>lineWidth</a></code> attribute must
28120 <p>When the context is created, the <code title=dom-context-2d-lineCap><a href=#dom-context-2d-linecap>lineCap</a></code> attribute must
28134 <p>When the context is created, the <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code> attribute must
28150 point, must be rendered at all joins. The <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code> attribute controls
28183 <p>When the context is created, the <code title=dom-context-2d-miterLimit><a href=#dom-context-2d-miterlimit>miterLimit</a></code> attribute must
28217 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code> [ = <var title="">value</var> ]</dt>
28227 <dt><var title="">context</var> . <code title=dom-context-2d-shadowOffsetX><a href=#dom-context-2d-shadowoffsetx>shadowOffsetX</a></code> [ = <var title="">value</var> ]</dt>
28228 <dt><var title="">context</var> . <code title=dom-context-2d-shadowOffsetY><a href=#dom-context-2d-shadowoffsety>shadowOffsetY</a></code> [ = <var title="">value</var> ]</dt>
28238 <dt><var title="">context</var> . <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> [ = <var title="">value</var> ]</dt>
28253 <p>When the context is created, the <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code> attribute
28256 <p>On getting, the <a href=#serialization-of-a-color title="serialization of a
28262 value. <a href=#refsCSSCOLOR>[CSSCOLOR]</a></p>
28284 <p>When the context is created, the <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> attribute must
28294 of <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code> is
28295 non-zero and either the <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> is non-zero, or
28296 the <code title=dom-context-2d-shadowOffsetX><a href=#dom-context-2d-shadowoffsetx>shadowOffsetX</a></code>
28297 is non-zero, or the <code title=dom-context-2d-shadowOffsetY><a href=#dom-context-2d-shadowoffsety>shadowOffsetY</a></code> is
28300 <p><a href=#when-shadows-are-drawn>When shadows are drawn</a>, they must be rendered as follows:</p>
28309 <li> <p>Copy the alpha channel of <var title="">A</var> to <var title="">B</var>, offset by <code title=dom-context-2d-shadowOffsetX><a href=#dom-context-2d-shadowoffsetx>shadowOffsetX</a></code> in the
28310 positive <var title="">x</var> direction, and <code title=dom-context-2d-shadowOffsetY><a href=#dom-context-2d-shadowoffsety>shadowOffsetY</a></code> in the
28313 <li> <p>If <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> is greater than
28316 <ol><li> <p>If <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> is less than
28317 8, let <var title="">σ</var> be half the value of <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code>; otherwise,
28319 the value of <code title=dom-context-2d-shadowBlur><a href=#dom-context-2d-shadowblur>shadowBlur</a></code> by
28334 (respectively) of the color of <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code>.</p> </li>
28336 <li> <p>Multiply the alpha component of every pixel in <var title="">B</var> by the alpha component of the color of <code title=dom-context-2d-shadowColor><a href=#dom-context-2d-shadowcolor>shadowColor</a></code>.</p> </li>
28343 <p>If the current composition operation is <code title=gcop-copy><a href=#gcop-copy>copy</a></code>, shadows effectively won't render
28356 <p>The <a href=#transformations title=dom-context-2d-transformation>current
28365 subject to the <a href=#clipping-region title="clipping region">clipping region</a>,
28366 and, with the exception of <code title=dom-context-2d-clearRect><a href=#dom-context-2d-clearrect>clearRect()</a></code>, also <a href=#shadows title=shadows>shadow effects</a>, <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, and <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
28371 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-clearRect><a href=#dom-context-2d-clearrect>clearRect</a></code>(<var title="">x</var>, <var title="">y</var>, <var title="">w</var>, <var title="">h</var>)</dt>
28379 <dt><var title="">context</var> . <code title=dom-context-2d-fillRect><a href=#dom-context-2d-fillrect>fillRect</a></code>(<var title="">x</var>, <var title="">y</var>, <var title="">w</var>, <var title="">h</var>)</dt>
28387 <dt><var title="">context</var> . <code title=dom-context-2d-strokeRect><a href=#dom-context-2d-strokerect>strokeRect</a></code>(<var title="">x</var>, <var title="">y</var>, <var title="">w</var>, <var title="">h</var>)</dt>
28403 rectangular area using the <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code>. If either height
28407 rectangle's path using the <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code>, <code title=dom-context-2d-lineWidth><a href=#dom-context-2d-linewidth>lineWidth</a></code>, <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code>, and (if
28408 appropriate) <code title=dom-context-2d-miterLimit><a href=#dom-context-2d-miterlimit>miterLimit</a></code> attributes. If
28420 path, it is not part of the <a href=#drawing-state>drawing state</a>.</p>
28430 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-beginPath><a href=#dom-context-2d-beginpath>beginPath</a></code>()</dt>
28438 <dt><var title="">context</var> . <code title=dom-context-2d-moveTo><a href=#dom-context-2d-moveto>moveTo</a></code>(<var title="">x</var>, <var title="">y</var>)</dt>
28446 <dt><var title="">context</var> . <code title=dom-context-2d-closePath><a href=#dom-context-2d-closepath>closePath</a></code>()</dt>
28454 <dt><var title="">context</var> . <code title=dom-context-2d-lineTo><a href=#dom-context-2d-lineto>lineTo</a></code>(<var title="">x</var>, <var title="">y</var>)</dt>
28462 <dt><var title="">context</var> . <code title=dom-context-2d-quadraticCurveTo><a href=#dom-context-2d-quadraticcurveto>quadraticCurveTo</a></code>(<var title="">cpx</var>, <var title="">cpy</var>, <var title="">x</var>, <var title="">y</var>)</dt>
28470 <dt><var title="">context</var> . <code title=dom-context-2d-bezierCurveTo><a href
28478 <dt><var title="">context</var> . <code title=dom-context-2d-arcTo><a href=#dom-context-2d-arcto>arcTo</a></code>(<var title="">x1</var>, <var title="">y1</var>, <var title="">x2</var>, <var title="">y2</var>, <var title="">radius</var>)</dt>
28487 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the given
28492 <dt><var title="">context</var> . <code title=dom-context-2d-arc><a href=#dom-context-2d-arc>arc</a></code>(<var title="">x</var>, <var title="">y</var>, <var title="">radius</var>, <var title="">startAngle</var>, <var title="">endAngle</var>, <var title="">anticlockwise</var>)</dt>
28502 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the given
28507 <dt><var title="">context</var> . <code title=dom-context-2d-rect><a href=#dom-context-2d-rect>rect</a></code>(<var title="">x</var>, <var title="">y</var>, <var title="">w</var>, <var title="">h</var>)</dt>
28515 <dt><var title="">context</var> . <code title=dom-context-2d-fill><a href=#dom-context-2d-fill>fill</a></code>()</dt>
28523 <dt><var title="">context</var> . <code title=dom-context-2d-stroke><a href=#dom-context-2d-stroke>stroke</a></code>()</dt>
28531 <dt><var title="">context</var> . <code title=dom-context-2d-clip><a href=#dom-context-2d-clip>clip</a></code>()</dt>
28539 <dt><var title="">context</var> . <code title=dom-context-2d-isPointInPath><a href=#dom-context-2d-ispointinpath>isPointInPath</a></code>(<var title="">x</var>, <var title="">y</var>)</dt>
28552 transformed according to the <a href=#transformations title=dom-context-2d-transformation>current transformation
28570 (and only) point, as if the <code title=dom-context-2d-moveTo><a href=#dom-context-2d-moveto>moveTo()</a></code> method had been
28583 the shape, and then repeating the last (possibly implied) <code title=dom-context-2d-moveTo><a href=#dom-context-2d-moveto>moveTo()</a></code> call.</p>
28592 <a href=#ensure-there-is-a-subpath>ensure there is a subpath</a> for <span title="">(<var title="">x</var>, <var title="">y</var>)</span> if the context has
28600 <var title="">y</var>)</code></dfn> method must <a href=#ensure-there-is-a-subpath>ensure there
28605 then add the given point (<var title="">x</var>, <var title="">y</var>) to the subpath. <a href=#refsBEZIER>[BEZIER]</a></p>
28609 <a href=#ensure-there-is-a-subpath>ensure there is a subpath</a> for <span title="">(<var title="">cp1x</var>, <var title="">cp1y</var>)</span>, and then must
28611 curve with control points (<var title="">cp1x</var>, <var title="">cp1y</var>) and (<var title="">cp2x</var>, <var title="">cp2y</var>). Then, it must add the point (<var title="">x</var>, <var title="">y</var>) to the subpath. <a href=#refsBEZIER>[BEZIER]</a></p>
28615 method must first <a href=#ensure-there-is-a-subpath>ensure there is a subpath</a> for <span title="">(<var title="">x1</var>, <var title="">y1</var>)</span>. Then, the behavior depends on the
28619 implementation to raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
28691 implementation to raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
28710 <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code>, and using
28722 using the <code title=dom-context-2d-lineWidth><a href=#dom-context-2d-linewidth>lineWidth</a></code>,
28723 <code title=dom-context-2d-lineCap><a href=#dom-context-2d-linecap>lineCap</a></code>, <code title=dom-context-2d-lineJoin><a href=#dom-context-2d-linejoin>lineJoin</a></code>, and (if
28724 appropriate) <code title=dom-context-2d-miterLimit><a href=#dom-context-2d-miterlimit>miterLimit</a></code> attributes, and
28725 then fill the combined stroke area using the <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code>
28733 the current path, and must be subject to <a href=#shadows title=shadows>shadow effects</a>, <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, the <a href=#clipping-region title="clipping region">clipping region</a>, and <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
28781 focused, authors should use the <code title=dom-context-2d-drawFocusRing><a href=#dom-context-2d-drawfocusring>drawFocusRing()</a></code> method,
28789 <dl class=domintro><dt><var title="">shouldDraw</var> = <var title="">context</var> . <code title=dom-context-2d-drawFocusRing><a href=#dom-context-2d-drawfocusring>drawFocusRing</a></code>(<var title="">element</var>, <var title="">x</var>, <var title="">y</var>, [ <var title="">canDrawCustom</var> ])</dt>
28822 <li><p>Transform the given point (<var title="">x</var>, <var title="">y</var>) according to the <a href=#transformations title=dom-context-2d-transformation>current transformation
28837 <p>The focus ring should not be subject to the <a href=#shadows title=shadows>shadow effects</a>, the <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, or the <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
28838 operators</a>, but <em>should</em> be subject to the <a href=#clipping-region title="clipping region">clipping region</a>.</p>
28848 <p>This <code><a href=#the-canvas-element>canvas</a></code> element has a couple of checkboxes:</p>
28920 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code> [ = <var title="">value</var> ]</dt>
28931 of the <code><a href=#the-canvas-element>canvas</a></code> element.</p>
28935 <dt><var title="">context</var> . <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> [ = <var title="">value</var> ]</dt>
28947 <dt><var title="">context</var> . <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> [ = <var title="">value</var> ]</dt>
28959 <dt><var title="">context</var> . <code title=dom-context-2d-fillText><a href=#dom-context-2d-filltext>fillText</a></code>(<var title="">text</var>, <var title="">x</var>, <var title="">y</var> [, <var title="">maxWidth</var> ] )</dt>
28960 <dt><var title="">context</var> . <code title=dom-context-2d-strokeText><a href=#dom-context-2d-stroketext>strokeText</a></code>(<var title="">text</var>, <var title="">x</var>, <var title="">y</var> [, <var title="">maxWidth</var> ] )</dt>
28970 <dt><var title="">metrics</var> = <var title="">context</var> . <code title=dom-context-2d-measureText><a href=#dom-context-2d-measuretext>measureText</a></code>(<var title="">text</var>)</dt>
28974 <p>Returns a <code><a href=#textmetrics>TextMetrics</a></code> object with the metrics of the given text in the current font.</p>
28978 <dt><var title="">metrics</var> . <code title=dom-textmetrics-width><a href=#dom-textmetrics-width>width</a></code></dt>
28983 <code title=dom-context-2d-measureText><a href=#dom-context-2d-measuretext>measureText()</a></code>
29000 value. <a href=#refsCSS>[CSS]</a></p>
29003 <code><a href=#the-canvas-element>canvas</a></code> element's stylesheets; any fonts embedded using
29007 to another as described by the relevant CSS specifications.) <a href=#refsCSSFONTS>[CSSFONTS]</a></p>
29013 <p>On getting, the <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code>
29016 (with no 'line-height' component). <a href=#refsCSSOM>[CSSOM]</a></p>
29036 of the 'font-size' property of the corresponding <code><a href=#the-canvas-element>canvas</a></code>
29041 <code><a href=#the-canvas-element>canvas</a></code> element at the time that the attribute is
29043 (e.g. because the <code><a href=#the-canvas-element>canvas</a></code> element is not <a href=#in-a-document>in a
29052 must be ignored. When the context is created, the <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> attribute must
29057 setting, if the value is one of <code title=dom-context-2d-textBaseline-top><a href=#dom-context-2d-textbaseline-top>top</a></code>, <code title=dom-context-2d-textBaseline-hanging><a href=#dom-context-2d-textbaseline-hanging>hanging</a></code>, <code title=dom-context-2d-textBaseline-middle><a href=#dom-context-2d-textbaseline-middle>middle</a></code>, <code title=dom-context-2d-textBaseline-alphabetic><a href=#dom-context-2d-textbaseline-alphabetic>alphabetic</a></code>,
29058 <code title=dom-context-2d-textBaseline-ideographic><a href=#dom-context-2d-textbaseline-ideographic>ideographic</a></code>,
29059 or <code title=dom-context-2d-textBaseline-bottom><a href=#dom-context-2d-textbaseline-bottom>bottom</a></code>,
29061 value must be ignored. When the context is created, the <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> attribute
29066 <p>The <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code>
29107 <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code>, <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code>, and <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code>
29112 context, as given by the <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code> attribute.</li>
29114 <li><p>Replace all the <a href=#space-character title="space character">space
29122 'direction' property of the inline box set to <a href=#the-directionality>the
29123 directionality</a> of the <code><a href=#the-canvas-element>canvas</a></code> element. <a href=#refsCSS>[CSS]</a></li>
29139 inline box, determined by the <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> and <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> values, as
29144 <dl><dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">left</code></dt>
29145 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">start</code> and <a href=#the-directionality>the directionality</a> of the
29146 <code><a href=#the-canvas-element>canvas</a></code> element is 'ltr'</dt>
29147 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">end</code> and <a href=#the-directionality>the directionality</a> of the
29148 <code><a href=#the-canvas-element>canvas</a></code> element is 'rtl'</dt>
29154 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">right</code></dt>
29155 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">end</code> and <a href=#the-directionality>the directionality</a> of the
29156 <code><a href=#the-canvas-element>canvas</a></code> element is 'ltr'</dt>
29157 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">start</code> and <a href=#the-directionality>the directionality</a> of the
29158 <code><a href=#the-canvas-element>canvas</a></code> element is 'rtl'</dt>
29164 <dt> If <code title=dom-context-2d-textAlign><a href=#dom-context-2d-textalign>textAlign</a></code> is <code title="">center</code></dt>
29172 <dl><dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-top><a href=#dom-context-2d-textbaseline-top>top</a></code></dt>
29179 <dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-hanging><a href=#dom-context-2d-textbaseline-hanging>hanging</a></code></dt>
29186 <dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-middle><a href=#dom-context-2d-textbaseline-middle>middle</a></code></dt>
29193 <dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-alphabetic><a href=#dom-context-2d-textbaseline-alphabetic>alphabetic</a></code></dt>
29200 <dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-ideographic><a href=#dom-context-2d-textbaseline-ideographic>ideographic</a></code></dt>
29207 <dt> If <code title=dom-context-2d-textBaseline><a href=#dom-context-2d-textbaseline>textBaseline</a></code> is <code title=dom-context-2d-textBaseline-bottom><a href=#dom-context-2d-textbaseline-bottom>bottom</a></code></dt>
29218 text's glyphs, as transformed by the <a href=#transformations title=dom-context-2d-transformation>current transformation
29220 <a href=#transformations title=dom-context-2d-transformation>current transformation
29224 <p>For <code title=dom-context-2d-fillText><a href=#dom-context-2d-filltext>fillText()</a></code>
29225 <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> must be
29226 applied to the glyphs and <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> must be
29227 ignored. For <code title=dom-context-2d-strokeText><a href=#dom-context-2d-stroketext>strokeText()</a></code> the reverse
29228 holds and <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> must be
29229 applied to the glyph outlines and <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> must be
29233 subject to <a href=#shadows title=shadows>shadow effects</a>, <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, the <a href=#clipping-region title="clipping region">clipping region</a>, and <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
29386 href=#space-character title="space
29393 the <code title=dom-context-2d-font><a href=#dom-context-2d-font>font</a></code> attribute, and
29394 must then return a new <code><a href=#textmetrics>TextMetrics</a></code> object with its
29395 <code title=dom-textmetrics-width><a href=#dom-textmetrics-width>width</a></code> attribute set to
29396 the width of that inline box, in CSS pixels. <a href=#refsCSS>[CSS]</a></p>
29398 <p>The <code><a href=#textmetrics>TextMetrics</a></code> interface is used for the objects
29399 returned from <code title=dom-context-2d-measureText><a href=#dom-context-2d-measuretext>measureText()</a></code>. It has one
29401 by the <code title=dom-context-2d-measureText><a href=#dom-context-2d-measuretext>measureText()</a></code>
29404 <p class=note>Glyphs rendered using <code title=dom-context-2d-fillText><a href=#dom-context-2d-filltext>fillText()</a></code> and <code title=dom-context-2d-strokeText><a href=#dom-context-2d-stroketext>strokeText()</a></code> can spill out
29406 returned by <code title=dom-context-2d-measureText><a href=#dom-context-2d-measuretext>measureText()</a></code> (the text
29438 <code><a href=#htmlimageelement>HTMLImageElement</a></code>, an <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code>, or
29439 an <code><a href=#htmlvideoelement>HTMLVideoElement</a></code> for the <var title="">image</var>
29442 <dl class=domintro><dt><var title="">context</var> . <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage</a></code>(<var title="">image</var>, <var title="">dx</var>, <var title="">dy</var>)</dt>
29443 <dt><var title="">context</var> . <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage</a></code>(<var title="">image</var>, <var title="">dx</var>, <var title="">dy</var>, <var title="">dw</var>, <var title="">dh</var>)</dt>
29444 <dt><var title="">context</var> . <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage</a></code>(<var title="">image</var>, <var title="">sx</var>, <var title="">sy</var>, <var title="">sw</var>, <var title="">sh</var>, <var title="">dx</var>, <var title="">dy</var>, <var title="">dw</var>, <var title="">dh</var>)</dt>
29453 <p>If the first argument isn't an <code><a href=#the-img-element>img</a></code>,
29454 <code><a href=#the-canvas-element>canvas</a></code>, or <code><a href=#video>video</a></code> element, throws a
29455 <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code> exception. If the image has no
29456 image data, throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception. If
29458 0×0 rectangle), throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
29473 <code><a href=#htmlimageelement>HTMLImageElement</a></code>, <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code>, or
29474 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>. If the <var title="">image</var> is
29475 null, the implementation must raise a <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code>
29479 <code><a href=#htmlimageelement>HTMLImageElement</a></code> object whose <code title=dom-img-complete><a href=#dom-img-complete>complete</a></code> attribute is false, or
29481 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code> object whose <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is either
29482 <code title=dom-media-HAVE_NOTHING><a href=#dom-media-have_nothing>HAVE_NOTHING</a></code> or <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, then the
29487 <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> object with either a horizontal
29489 implementation must raise an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code>
29499 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
29505 <p>When <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code> is
29508 destination rectangle, after applying the <a href=#transformations title=dom-context-2d-transformation>current transformation
29512 image as it is rendered (e.g. <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> and <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> attributes on the source
29527 <p>When the <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code> method
29535 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>, then the frame at the <a href=#current-playback-position>current
29537 source image's dimensions must be the <a href=#concept-video-intrinsic-width title=concept-video-intrinsic-width>intrinsic width</a> and
29538 <a href=#concept-video-intrinsic-height title=concept-video-intrinsic-height>intrinsic height</a>
29539 of the <a href=#media-resource>media resource</a> (i.e. after any aspect-ratio
29544 subject to <a href=#shadows title=shadows>shadow effects</a>, <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, the <a href=#clipping-region title="clipping region">clipping region</a>, and <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
29553 <dl class=domintro><dt><var title="">imagedata</var> = <var title="">context</var> . <code title=dom-context-2d-createImageData><a href=#dom-context-2d-createimagedata>createImageData</a></code>(<var title="">sw</var>, <var title="">sh</var>)</dt>
29557 <p>Returns an <code><a href=#imagedata>ImageData</a></code> object with the given
29564 <dt><var title="">imagedata</var> = <var title="">context</var> . <code title=dom-context-2d-createImageData><a href=#dom-context-2d-createimagedata>createImageData</a></code>(<var title="">imagedata</var>)</dt>
29568 <p>Returns an <code><a href=#imagedata>ImageData</a></code> object with the same
29572 <p>Throws a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception if the
29577 <dt><var title="">imagedata</var> = <var title="">context</var> . <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData</a></code>(<var title="">sx</var>, <var title="">sy</var>, <var title="">sw</var>, <var title="">sh</var>)</dt>
29581 <p>Returns an <code><a href=#imagedata>ImageData</a></code> object containing the image
29584 <p>Throws a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception if any of the
29585 arguments are not finite. Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
29591 <dt><var title="">imagedata</var> . <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code></dt>
29592 <dt><var title="">imagedata</var> . <code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code></dt>
29596 <p>Returns the actual dimensions of the data in the <code><a href=#imagedata>ImageData</a></code> object, in device pixels.</p>
29600 <dt><var title="">imagedata</var> . <code title=dom-imagedata-data><a href=#dom-imagedata-data>data</a></code></dt>
29608 <dt><var title="">context</var> . <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData</a></code>(<var title="">imagedata</var>, <var title="">dx</var>, <var title="">dy</var> [, <var title="">dirtyX</var>, <var title="">dirtyY</var>, <var title="">dirtyWidth</var>, <var title="">dirtyHeight</var> ])</dt>
29612 <p>Paints the data from the given <code><a href=#imagedata>ImageData</a></code> object
29616 <p>The <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code>
29617 and <code title=dom-context-2d-globalCompositeOperation><a href=#dom-context-2d-globalcompositeoperation>globalCompositeOperation</a></code>
29623 <p>If the first argument isn't an <code><a href=#imagedata>ImageData</a></code> object,
29624 throws a <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code> exception. Throws a
29625 <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception if any of the other
29633 method is used to instantiate new blank <code><a href=#imagedata>ImageData</a></code>
29635 <code><a href
29638 <code><a href=#imagedata>ImageData</a></code> object representing a rectangle with the same
29639 dimensions as the <code><a href=#imagedata>ImageData</a></code> object passed as the
29640 argument. The <code><a href=#imagedata>ImageData</a></code> object return must be filled
29645 <code><a href=#imagedata>ImageData</a></code> object representing the underlying pixel data
29653 <p>If any of the arguments to <code title=dom-context-2d-createImageData><a href=#dom-context-2d-createimagedata>createImageData()</a></code> or
29654 <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> are
29655 infinite or NaN, or if the <code title=dom-context-2d-createImageData><a href=#dom-context-2d-createimagedata>createImageData()</a></code>
29657 the method must instead raise a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code>
29659 an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
29661 <p><code><a href=#imagedata>ImageData</a></code> objects must be initialized so that their
29667 attribute is initialized to a <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object
29671 <p>The <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object provides ordered,
29681 <p>The <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object thus represents <var title="">h</var>×<var title="">w</var>×4 integers. The
29683 attribute of a <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object must return this
29689 <p>When a <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object is <dfn id=dom-canvaspixelarray-get title=dom-CanvasPixelArray-get>indexed to retrieve an indexed
29694 <p>When a <code><a href=#canvaspixelarray>CanvasPixelArray</a></code> object is <dfn id=dom-canvaspixelarray-set title=dom-CanvasPixelArray-set>indexed to modify an indexed
29704 <code><a href=#imagedata>ImageData</a></code> structures back to the canvas.</p>
29707 method must raise a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception.</p>
29710 <code><a href=#imagedata>ImageData</a></code> object then the <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code> method
29711 must raise a <code><a href=#type_mismatch_err>TYPE_MISMATCH_ERR</a></code> exception.</p>
29714 have the values 0, 0, the <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> member of the <var title="">imagedata</var> structure, and the <code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> member of the <var title="">imagedata</var> structure, respectively.</p>
29717 paragraphs, cause an exception to be raised, the <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code> method
29756 <p>If <span title=""><var title="">dirtyX</var>+<var title="">dirtyWidth</var></span> is greater than the <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> attribute of the <var title="">imagedata</var> argument, let <var title="">dirtyWidth</var> be the value of that <code title=dom-imagedata-width><a href=#dom-imagedata-width>width</a></code> attribute, minus the
29759 <p>If <span title=""><var title="">dirtyY</var>+<var title="">dirtyHeight</var></span> is greater than the <code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> attribute of the <var title="">imagedata</var> argument, let <var title="">dirtyHeight</var> be the value of that <code title=dom-imagedata-height><a href=#dom-imagedata-height>height</a></code> attribute, minus the
29796 <p>...must return <code><a href=#imagedata>ImageData</a></code> objects with the same
29800 for all of the <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>createImageData()</a></code>, <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> and <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code>
29805 using <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code> might be
29806 returned to an equivalent <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> as
29809 <p>The current path, <a href=#transformations title=dom-context-2d-transformation>transformation matrix</a>,
29810 <a href=#shadows title=shadows>shadow attributes</a>, <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>global alpha</a>, the <a href=#clipping-region title="clipping region">clipping region</a>, and <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>global composition
29811 operator</a> must not affect the <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> and <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code>
29818 <p>The data returned by <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> is at the
29824 <code><a href=#imagedata>ImageData</a></code> object so that it can draw onto it.</p>
29849 <p>Here is an example of using <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> and <code title=dom-context-2d-putImageData><a href=#dom-context-2d-putimagedata>putImageData()</a></code> to
29922 <li><p><a href=#when-shadows-are-drawn>When shadows are drawn</a>, render the shadow from
29926 <li><p><a href=#when-shadows-are-drawn>When shadows are drawn</a>, multiply the alpha
29927 component of every pixel in <var title="">B</var> by <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code>.</li>
29929 <li><p><a href=#when-shadows-are-drawn>When shadows are drawn</a>, composite <var title="">B</var> within the clipping region over the current canvas
29932 <li><p>Multiply the alpha component of every pixel in <var title="">A</var> by <code title=dom-context-2d-globalAlpha><a href=#dom-context-2d-globalalpha>globalAlpha</a></code>.</li>
29999 <p>The <code><a href=#the-canvas-element>canvas</a></code> APIs must perform color correction at
30003 Context's <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code>
30004 method with an <code><a href=#htmlimageelement>HTMLImageElement</a></code> object), and when
30008 onto the canvas will exactly match colors obtained through the <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code>
30011 <p>The <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> method
30014 resources created by <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> must match those
30015 returned by the <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code>
30019 <code><a href=#the-canvas-element>canvas</a></code> element must match the color space used for
30024 <code><a href=#the-img-element>img</a></code> element would use the same colors as one painted on
30025 a <code><a href=#the-canvas-element>canvas</a></code> element that is then itself
30027 correction information (such as those returned by the <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> method) must be
30030 <p class=note>Thus, in the 2D context, calling the <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code> method to render
30031 the output of the <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> method to the
30039 <h5 id=security-with-canvas-elements><span class=secno>4.8.11.3 </span>Security with <code><a href=#the-canvas-element>canvas</a></code> elements</h5>
30042 one <a href=#origin>origin</a> can access information (e.g. read pixels)
30043 from images from another origin (one that isn't the <a href=#same-origin title="same origin">same</a>).</p>
30045 <p>To mitigate this, <code><a href=#the-canvas-element>canvas</a></code> elements are defined to
30047 <code><a href=#the-canvas-element>canvas</a></code> elements must start with their
30051 <ul><li><p>The element's 2D context's <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code> method is
30052 called with an <code><a href=#htmlimageelement>HTMLImageElement</a></code> or an
30053 <code><a href=#htmlvideoelement>HTMLVideoElement</a></code> whose <a href=#origin>origin</a> is not the
30054 <a href=#same-origin title="same origin">same</a> as that of the
30055 <code><a href=#document>Document</a></code> object that owns the <code><a href=#the-canvas-element>canvas</a></code>
30058 <li><p>The element's 2D context's <code title=dom-context-2d-drawImage><a href=#dom-context-2d-drawimage>drawImage()</a></code> method is
30059 called with an <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> whose
30062 <li><p>The element's 2D context's <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> attribute is set
30063 to a <code><a href=#canvaspattern>CanvasPattern</a></code> object that was created from an
30064 <code><a href=#htmlimageelement>HTMLImageElement</a></code> or an <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>
30065 whose <a href=#origin>origin</a> was not the <a href=#same-origin title="same
30066 origin">same</a> as that of the <code><a href=#document>Document</a></code> object
30067 that owns the <code><a href=#the-canvas-element>canvas</a></code> element when the pattern was
30070 <li><p>The element's 2D context's <code title=dom-context-2d-fillStyle><a href=#dom-context-2d-fillstyle>fillStyle</a></code> attribute is set
30071 to a <code><a href=#canvaspattern>CanvasPattern</a></code> object that was created from an
30072 <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> whose <i>origin-clean</i> flag was
30075 <li><p>The element's 2D context's <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> attribute is
30076 set to a <code><a href=#canvaspattern>CanvasPattern</a></code> object that was created from an
30077 <code><a href=#htmlimageelement>HTMLImageElement</a></code> or an <code><a href=#htmlvideoelement>HTMLVideoElement</a></code>
30078 whose <a href=#origin>origin</a> was not the <a href=#same-origin title="same
30079 origin">same</a> as that of the <code><a href=#document>Document</a></code> object
30080 that owns the <code><a href=#the-canvas-element>canvas</a></code> element when the pattern was
30083 <li><p>The element's 2D context's <code title=dom-context-2d-strokeStyle><a href=#dom-context-2d-strokestyle>strokeStyle</a></code> attribute is
30084 set to a <code><a href=#canvaspattern>CanvasPattern</a></code> object that was created from an
30085 <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> whose <i>origin-clean</i> flag was
30088 </ul><p>Whenever the <code title=dom-canvas-toDataURL><a href=#dom-canvas-todataurl>toDataURL()</a></code> method of a
30089 <code><a href=#the-canvas-element>canvas</a></code> element whose <i>origin-clean</i> flag is set to
30090 false is called, the method must raise a <code><a href=#security_err>SECURITY_ERR</a></code>
30093 <p>Whenever the <code title=dom-context-2d-getImageData><a href=#dom-context-2d-getimagedata>getImageData()</a></code> method of
30094 the 2D context of a <code><a href=#the-canvas-element>canvas</a></code> element whose
30096 correct arguments, the method must raise a <code><a href=#security_err>SECURITY_ERR</a></code>
30100 <code title=attr-canvas-width><a href=#attr-canvas-width>width</a></code> or <code title=attr-canvas-height><a href=#attr-canvas-height>height</a></code> attributes doesn't reset
30110 <dd><a href=#flow-content>Flow content</a>.</dd>
30111 <dd>When the element only contains <a href=#phrasing-content>phrasing content</a>: <a href=#phrasing-content>phrasing content</a>.</dd>
30113 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
30115 <dd><a href=#transparent>Transparent</a>.</dd>
30117 <dd><a href=#global-attributes>Global attributes</a></dd>
30118 <dd><code title=attr-map-name><a href=#attr-map-name>name</a></code></dd>
30121 <pre class=idl>interface <dfn id=htmlmapelement>HTMLMapElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
30122 attribute DOMString <a href=#dom-map-name title=dom-map-name>name</a>;
30123 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-map-areas title=dom-map-areas>areas</a>;
30124 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-map-images title=dom-map-images>images</a>;
30127 </dl><p>The <code><a href=#the-map-element>map</a></code> element, in conjunction with any
30128 <code><a href=#the-area-element>area</a></code> element descendants, defines an <a href=#image-map>image
30129 map</a>. The element <a href=#represents>represents</a> its children.</p>
30133 must be present and must have a non-empty value with no <a href=#space-character title="space character">space characters</a>. The value of the
30134 <code title=attr-map-name><a href=#attr-map-name>name</a></code> attribute must not be a
30135 <a href=#compatibility-caseless title="compatibility caseless">compatibility-caseless</a>
30136 match for the value of the <code title=attr-map-name><a href=#attr-map-name>name</a></code>
30137 attribute of another <code><a href=#the-map-element>map</a></code> element in the same
30138 document. If the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute is also
30141 <dl class=domintro><dt><var title="">map</var> . <code title=dom-map-areas><a href=#dom-map-areas>areas</a></code></dt>
30145 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-area-element>area</a></code> elements in the <code><a href=#the-map-element>map</a></code>.</p>
30149 <dt><var title="">map</var> . <code title=dom-map-images><a href=#dom-map-images>images</a></code></dt>
30153 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-img-element>img</a></code> and <code><a href=#the-object-element>object</a></code> elements that use the <code><a href=#the-map-element>map</a></code>.</p>
30160 must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
30161 <code><a href=#the-map-element>map</a></code> element, whose filter matches only
30162 <code><a href=#the-area-element>area</a></code> elements.</p>
30165 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
30166 <code><a href=#document>Document</a></code> node, whose filter matches only
30167 <code><a href=#the-img-element>img</a></code> and <code><a href=#the-object-element>object</a></code> elements that are
30168 associated with this <code><a href=#the-map-element>map</a></code> element according to the
30169 <a href=#image-map>image map</a> processing model.</p>
30172 <a href=#reflect>reflect</a> the content attribute of the same name.</p>
30181 <dd><a href=#flow-content>Flow content</a>.</dd>
30182 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
30184 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected, but only if there is a <code><a href=#the-map-element>map</a></code> element ancestor.</dd>
30188 <dd><a href=#global-attributes>Global attributes</a></dd>
30189 <dd><code title=attr-area-alt><a href=#attr-area-alt>alt</a></code></dd>
30190 <dd><code title=attr-area-coords><a href=#attr-area-coords>coords</a></code></dd>
30191 <dd><code title=attr-area-shape><a href=#attr-area-shape>shape</a></code></dd>
30192 <dd><code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code></dd>
30193 <dd><code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code></dd>
30195 <dd><code title=attr-hyperlink-ping><a href=#ping>ping</a></code></dd>
30197 <dd><code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code></dd>
30198 <dd><code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code></dd>
30199 <dd><code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code></dd>
30200 <dd><code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code></dd>
30203 <pre class=idl>interface <dfn id=htmlareaelement>HTMLAreaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
30204 attribute DOMString <a href=#dom-area-alt title=dom-area-alt>alt</a>;
30205 attribute DOMString <a href
30206 attribute DOMString <a href=#dom-area-shape title=dom-area-shape>shape</a>;
30207 stringifier attribute DOMString <a href=#dom-area-href title=dom-area-href>href</a>;
30208 attribute DOMString <a href=#dom-area-target title=dom-area-target>target</a>;
30210 attribute DOMString <a href=#dom-area-ping title=dom-area-ping>ping</a>;
30212 attribute DOMString <a href=#dom-area-rel title=dom-area-rel>rel</a>;
30213 readonly attribute <a href=#domtokenlist>DOMTokenList</a> <a href=#dom-area-rellist title=dom-area-relList>relList</a>;
30214 attribute DOMString <a href=#dom-area-media title=dom-area-media>media</a>;
30215 attribute DOMString <a href=#dom-area-hreflang title=dom-area-hreflang>hreflang</a>;
30216 attribute DOMString <a href=#dom-area-type title=dom-area-type>type</a>;
30218 // <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a>
30219 attribute DOMString <a href=#dom-area-protocol title=dom-area-protocol>protocol</a>;
30220 attribute DOMString <a href=#dom-area-host title=dom-area-host>host</a>;
30221 attribute DOMString <a href=#dom-area-hostname title=dom-area-hostname>hostname</a>;
30222 attribute DOMString <a href=#dom-area-port title=dom-area-port>port</a>;
30223 attribute DOMString <a href=#dom-area-pathname title=dom-area-pathname>pathname</a>;
30224 attribute DOMString <a href=#dom-area-search title=dom-area-search>search</a>;
30225 attribute DOMString <a href=#dom-area-hash title=dom-area-hash>hash</a>;
30228 </dl><p>The <code><a href=#the-area-element>area</a></code> element <a href=#represents>represents</a> either a
30229 hyperlink with some text and a corresponding area on an <a href=#image-map>image
30232 <p>If the <code><a href=#the-area-element>area</a></code> element has an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, then the
30233 <code><a href=#the-area-element>area</a></code> element represents a <a href=#hyperlink>hyperlink</a>. In
30237 texts specified for the other hyperlinks of the <a href=#image-map>image
30241 applied to the image. The <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code>
30242 attribute may be left blank if there is another <code><a href=#the-area-element>area</a></code>
30243 element in the same <a href=#image-map>image map</a> that points to the same
30244 resource and has a non-blank <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code>
30247 <p>If the <code><a href=#the-area-element>area</a></code> element has no <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, then the area
30248 represented by the element cannot be selected, and the <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code> attribute must be omitted.</p>
30250 <p>In both cases, the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> and
30251 <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code> attributes specify the
30255 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The following
30264 <tbody><tr><td rowspan=2><a href=#attr-area-shape-circle title=attr-area-shape-circle>Circle state</a>
30269 <tr><td><a href=#attr-area-shape-default title=attr-area-shape-default>Default state</a>
30272 <tr><td rowspan=2><a href=#attr-area-shape-poly title=attr-area-shape-poly>Polygon state</a>
30277 <tr><td rowspan=2><a href=#attr-area-shape-rect title=attr-area-shape-rect>Rectangle state</a>
30283 the <a href=#attr-area-shape-rect title=attr-area-shape-rect>rectangle</a> state.</p>
30286 attribute must, if specified, contain a <a href=#valid-list-of-integers>valid list of
30288 described by the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code>
30290 described as part of the <a href=#image-map>image map</a> processing
30298 <code><a href=#the-area-element>area</a></code> elements must have a <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code> attribute present, with three
30307 state, <code><a href=#the-area-element>area</a></code> elements must not have a <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code> attribute. (The area is the
30311 <code><a href=#the-area-element>area</a></code> elements must have a <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code> attribute with at least six
30319 <code><a href=#the-area-element>area</a></code> elements must have a <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code> attribute with exactly four
30330 <p>When user agents allow users to <a href=#following-hyperlinks title="following
30332 <code><a href=#the-area-element>area</a></code> element, as described in the next section, the
30333 <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>,
30334 <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>
30336 and <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>
30339 link is followed. The <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>,
30340 <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes may be used to
30346 <p>The <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>,
30348 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>,
30350 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>, <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes must be omitted
30351 if the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute is
30356 <p>The <a href=#activation-behavior>activation behavior</a> of <code><a href=#the-area-element>area</a></code>
30359 <ol><li><p>If the <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code>
30360 event in question is not <a href=#concept-events-trusted title=concept-events-trusted>trusted</a> (i.e. a <code title=dom-click><a href=#dom-click>click()</a></code> method call was the reason for the
30361 event being dispatched), and the <code><a href=#the-area-element>area</a></code> element's <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute is such that
30362 applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a
30363 browsing context name</a>, using the value of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute as the
30365 browsing context, then raise an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code>
30368 <li>Otherwise, the user agent must <a href=#following-hyperlinks title="following
30370 <code><a href=#the-area-element>area</a></code> element, if any.</li>
30372 </ol><p>The IDL attributes <dfn id=dom-area-alt title=dom-area-alt><code>alt</code></dfn>, <dfn id=dom-area-coords title=dom-area-coords><code>coords</code></dfn>, <dfn id=dom-area-href title=dom-area-href><code>href</code></dfn>, <dfn id=dom-area-target title=dom-area-target><code>target</code></dfn>,
30377 <a href=#reflect>reflect</a> the respective content attributes of the same
30381 <a href=#reflect>reflect</a> the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code>
30382 content attribute, <a href=#limited-to-only-known-values>limited to only known values</a>.</p>
30385 <a href=#reflect>reflect</a> the <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>
30388 <p>The <code><a href=#the-area-element>area</a></code> element also supports the complement of
30389 <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a>, <dfn id=dom-area-protocol title=dom-area-protocol><code>protocol</code></dfn>, <dfn id=dom-area-host title=dom-area-host><code>host</code></dfn>, <dfn id=dom-area-port title=dom-area-port><code>port</code></dfn>, <dfn id=dom-area-hostname title=dom-area-hostname><code>hostname</code></dfn>, <dfn id=dom-area-pathname title=dom-area-pathname><code>pathname</code></dfn>, <dfn id=dom-area-search title=dom-area-search><code>search</code></dfn>, and <dfn id=dom-area-hash title=dom-area-hash><code>hash</code></dfn>. These must follow the
30390 rules given for URL decomposition IDL attributes, with the <a href=#concept-uda-input title=concept-uda-input>input</a> being the result of <a href=#resolve-a-url title="resolve a url">resolving</a> the element's <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute relative to the
30392 successful, or the empty string otherwise; and the <a href=#concept-uda-setter title=concept-uda-setter>common setter action</a> being the
30393 same as setting the element's <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute to the new output
30402 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A%3Cimg%20src%3D%22http%3A//hixie.ch/resources/images/smallcats%22%20usemap%3D%23a%20onclick%3Dw%28%27img%27%29%3E%0A%3Cmap%20name%3Da%3E%0A%20%3Carea%20onclick%3Dw%28%271%27%29%20coords%3D%270%25%200%25%20100%25%20100%25%27%20href%3Djavascript%3A%3E%0A%3C/map%3E
30403 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A%3Cbody%20onfocus%3D%22w%28document.activeElement.tagName%29%22%3E%0A%3Cimg%20src%3D%22http%3A//hixie.ch/resources/images/smallcats%22%20usemap%3D%23a%20onclick%3Dw%28%27img%27%29%20onfocus%3D%22w%28document.activeElement.tagName%29%22%3E%0A%3Cimg%20src%3D%22http%3A//hixie.ch/resources/images/sample%22%20usemap%3D%23a%20onclick%3Dw%28%27img%27%29%20onfocus%3D%22w%28document.activeElement.tagName%29%22%3E%0A%3Cmap%20name%3Da%20onfocus%3D%22w%28document.activeElement.tagName%29%22%3E%0A%20%3Carea%20onclick%3Dw%28%271%27%29%20coords%3D%270%200%2050%2050%27%20href%3Djavascript%3A%20onfocus%3D%22w%28document.activeElement.tagName%29%22%3E%0A%3C/map%3E%0A%3Cscript%3E%0A%20var%20x%20%3D%20document.getElementsByTagName%28%27img%27%29%5B0%5D%3B%0A%20x.parentNode.appendChild%28x%29%3B%0A%20document.getElementsByTagName%28%27area%27%29%5B0%5D.focus%28%29%3B%0A%3C/script%3E
30405 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0D%0A%3Cp%3E%3Cimg%20src%3D%22http%3A//hixie.ch/resources/images/astrophy/128%22%20usemap%3D%23a%3E%0D%0A%3Cmap%20name%3Da%3E%3Carea%20shape%3Dcirc%20coords%3D%2220%2C20%2C10%25%22%20href%3D%23%3E%3Carea%20shape%3Dcirc%20coords%3D%2220%2C20%2C10%22%20href
30415 associated with <a href=#hyperlink title=hyperlink>hyperlinks</a>.</p>
30417 <p>An image, in the form of an <code><a href=#the-img-element>img</a></code> element or an
30418 <code><a href=#the-object-element>object</a></code> element representing an image, may be associated
30419 with an image map (in the form of a <code><a href=#the-map-element>map</a></code> element) by
30421 the <code><a href=#the-img-element>img</a></code> or <code><a href=#the-object-element>object</a></code> element. The <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute, if specified,
30422 must be a <a href=#valid-hash-name-reference>valid hash-name reference</a> to a
30423 <code><a href=#the-map-element>map</a></code> element.</p>
30440 <area shape=rect coords="25,25,125,125" href="red.html" alt="Red box.">
30441 <area shape=circle coords="200,75,50" href="green.html" alt="Green circle.">
30442 <area shape=poly coords="325,25,262,125,388,125" href="blue.html" alt="Blue triangle.">
30444 href="yellow.html" alt="Yellow star.">
30454 <p>If an <code><a href=#the-img-element>img</a></code> element or an <code><a href=#the-object-element>object</a></code> element
30455 representing an image has a <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute specified,
30458 <ol><li><p>First, <a href=#rules-for-parsing-a-hash-name-reference>rules for parsing a hash-name reference</a>
30459 to a <code><a href=#the-map-element>map</a></code> element must be followed. This will return
30466 <code><a href=#the-area-element>area</a></code> elements that are descendants of the <var title="">map</var>. Let those be the <var title="">areas</var>.</li>
30468 </ol><p>Having obtained the list of <code><a href=#the-area-element>area</a></code> elements that form
30473 <code><a href=#the-img-element>img</a></code> element represents, then it must use the following
30477 have images disabled, <code><a href=#the-object-element>object</a></code> elements cannot represent
30478 images, and thus this section never applies (the <a href=#fallback-content>fallback
30480 apply to <code><a href=#the-img-element>img</a></code> elements.</p>
30482 <ol><li><p>Remove all the <code><a href=#the-area-element>area</a></code> elements in <var title="">areas</var> that have no <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute.</li>
30484 <li><p>Remove all the <code><a href=#the-area-element>area</a></code> elements in <var title="">areas</var> that have no <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code> attribute, or whose <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code> attribute's value is the empty
30485 string, <em>if</em> there is another <code><a href=#the-area-element>area</a></code> element in
30486 <var title="">areas</var> with the same value in the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute and with a
30487 non-empty <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code> attribute.</li>
30489 <li><p>Each remaining <code><a href=#the-area-element>area</a></code> element in <var title="">areas</var> represents a <a href=#hyperlink>hyperlink</a>. Those
30491 associated with the text of the <code><a href=#the-img-element>img</a></code>.</p>
30493 <p>In this context, user agents may represent <code><a href=#the-area-element>area</a></code> and
30494 <code><a href=#the-img-element>img</a></code> elements with no specified <code title="">alt</code> attributes, or whose <code title="">alt</code>
30502 <code><a href=#the-area-element>area</a></code> elements in <var title="">areas</var>, in reverse
30503 tree order (so the last specified <code><a href=#the-area-element>area</a></code> element in the
30508 <p>Each <code><a href=#the-area-element>area</a></code> element in <var title="">areas</var> must
30512 <ol><li><p>Find the state that the element's <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute represents.</li>
30514 <li><p>Use the <a href=#rules-for-parsing-a-list-of-integers>rules for parsing a list of integers</a> to
30515 parse the element's <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code>
30521 <code><a href=#the-area-element>area</a></code> element's current state, as per the following
30525 <tbody><tr><td><a href=#attr-area-shape-circle title=attr-area-shape-circle>Circle state</a>
30527 <tr><td><a href=#attr-area-shape-default title=attr-area-shape-default>Default state</a>
30529 <tr><td><a href=#attr-area-shape-poly title=attr-area-shape-poly>Polygon state</a>
30531 <tr><td><a href=#attr-area-shape-rect title=attr-area-shape-rect>Rectangle state</a>
30537 <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute's state:</p>
30538 <dl class=switch><dt><a href=#attr-area-shape-circle title=attr-area-shape-circle>Circle state</a></dt>
30540 <dt><a href=#attr-area-shape-default title=attr-area-shape-default>Default state</a></dt>
30542 <dt><a href=#attr-area-shape-poly title=attr-area-shape-poly>Polygon state</a></dt>
30544 <dt><a href=#attr-area-shape-rect title=attr-area-shape-rect>Rectangle state</a></dt>
30548 <li><p>If the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute
30549 represents the <a href=#attr-area-shape-rect title=attr-area-shape-rect>rectangle
30554 <li><p>If the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute
30555 represents the <a href=#attr-area-shape-rect title=attr-area-shape-rect>rectangle
30560 <li><p>If the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code> attribute
30561 represents the <a href=#attr-area-shape-circle title=attr-area-shape-circle>circle
30567 state of the <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code>
30570 <dl class=switch><dt><a href=#attr-area-shape-circle title=attr-area-shape-circle>Circle state</a></dt>
30579 <dt><a href=#attr-area-shape-default title=attr-area-shape-default>Default state</a></dt>
30585 <dt><a href=#attr-area-shape-poly title=attr-area-shape-poly>Polygon state</a></dt>
30599 established using the even-odd rule. <a href=#refsGRAPHICS>[GRAPHICS]</a></p>
30603 http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A%3Cimg%20usemap%3D%22%23x%22%20src%3D%22/resources/images/sample%22%3E%0A%3Cmap%20name%3D%22x%22%3E%0A%20%20%3Carea%20shape%3Dpolygon%20coords%3D%220%2C0%200%2C100%20100%2C100%20100%2C2%201%2C2%202%2C1%202%2C99%2099%2C99%2099%2C0%22%20href%3Da%3E%0A%3C/map%3E%0A
30608 <dt><a href=#attr-area-shape-rect title=attr-area-shape-rect>Rectangle state</a></dt>
30632 then, must be dispatched again (with a new <code><a href=#event>Event</a></code>
30634 individual <code><a href=#the-area-element>area</a></code> elements representing <a href=#hyperlink title=hyperlink>hyperlinks</a> to be selected and activated
30638 <p class=note>Because a <code><a href=#the-map-element>map</a></code> element (and its
30639 <code><a href=#the-area-element>area</a></code> elements) can be associated with multiple
30640 <code><a href=#the-img-element>img</a></code> and <code><a href=#the-object-element>object</a></code> elements, it is possible
30641 for an <code><a href=#the-area-element>area</a></code> element to correspond to multiple focusable
30644 <p>Image maps are <a href=#live>live</a>; if the DOM is mutated, then the
30654 <p>The <dfn id=math><code>math</code></dfn> element from the <a href=#mathml-namespace>MathML
30655 namespace</a> falls into the <a href=#embedded-content>embedded content</a>,
30656 <a href=#phrasing-content>phrasing content</a>, and <a href=#flow-content>flow content</a>
30664 <p>User agents must handle text other than <a href=#inter-element-whitespace>inter-element
30669 <a href=#mathml-namespace>MathML namespace</a>. (Such text is not, however,
30675 element in the <a href=#mathml-namespace>MathML namespace</a> containing some
30686 specification and other relevant specifications. <a href=#refsMATHML>[MATHML]</a></p>
30728 <p>The <dfn id=svg><code>svg</code></dfn> element from the <a href=#svg-namespace>SVG
30729 namespace</a> falls into the <a href=#embedded-content>embedded content</a>,
30730 <a href=#phrasing-content>phrasing content</a>, and <a href=#flow-content>flow content</a>
30744 from the <a href=#html-namespace-0>HTML namespace</a>, such elements must all be
30745 <a href=#flow-content>flow content</a>. <a href=#refsSVG>[SVG]</a></p>
30748 <a href=#svg-namespace>SVG namespace</a> inside <a href=#html-documents>HTML documents</a> is
30749 <a href=#phrasing-content>phrasing content</a>. (This further constrains the
30753 specification and other relevant specifications. <a href=#refsSVG>[SVG]</a></p>
30770 <code><a href=#the-img-element>img</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-embed-element>embed</a></code>,
30771 <code><a href=#the-object-element>object</a></code>, <code><a href=#video>video</a></code>, and, when their <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state,
30772 <code><a href=#the-input-element>input</a></code> elements may be specified to give the dimensions
30776 values that are <a href=#valid-non-negative-integer title="valid non-negative integer">valid
30798 height</var> are the values of the <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> and <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> attributes respectively.</p>
30813 expected to use these attributes <a href=#dimRendering>as hints
30817 the <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-object-element>object</a></code>,
30818 and <code><a href=#video>video</a></code> elements must <a href=#reflect>reflect</a> the
30831 <dd><a href=#flow-content>Flow content</a>.</dd>
30833 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
30835 <dd>In this order: optionally a <code><a href=#the-caption-element>caption</a></code> element,
30836 followed by either zero or more <code><a href=#the-colgroup-element>colgroup</a></code> elements,
30837 followed optionally by a <code><a href=#the-thead-element>thead</a></code> element, followed
30838 optionally by a <code><a href=#the-tfoot-element>tfoot</a></code> element, followed by either zero
30839 or more <code><a href=#the-tbody-element>tbody</a></code> elements or one or more <code><a href=#the-tr-element>tr</a></code>
30840 elements, followed optionally by a <code><a href=#the-tfoot-element>tfoot</a></code> element (but
30841 there can only be one <code><a href=#the-tfoot-element>tfoot</a></code> element child in
30844 <dd><a href=#global-attributes>Global attributes</a></dd>
30845 <dd><code title=attr-table-summary><a href=#attr-table-summary>summary</a></code> (but see prose)</dd>
30848 <pre class=idl>interface <dfn id=htmltableelement>HTMLTableElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
30849 attribute <a href=#htmltablecaptionelement>HTMLTableCaptionElement</a> <a href=#dom-table-caption title=dom-table-caption>caption</a>;
30850 <a href=#htmlelement>HTMLElement</a> <a href=#dom-table-createcaption title=dom-table-createCaption>createCaption</a>();
30851 void <a href=#dom-table-deletecaption title=dom-table-deleteCaption>deleteCaption</a>();
30852 attribute <a href=#htmltablesectionelement>HTMLTableSectionElement</a> <a href=#dom-table-thead title=dom-table-tHead>tHead</a>;
30853 <a href=#htmlelement>HTMLElement</a> <a href=#dom-table-createthead title=dom-table-createTHead>createTHead</a>();
30854 void <a href=#dom-table-deletethead title=dom-table-deleteTHead>deleteTHead</a>();
30855 attribute <a href=#htmltablesectionelement>HTMLTableSectionElement</a> <a href=#dom-table-tfoot title=dom-table-tFoot>tFoot</a>;
30856 <a href=#htmlelement>HTMLElement</a> <a href=#dom-table-createtfoot title=dom-table-createTFoot>createTFoot</a>();
30857 void <a href=#dom-table-deletetfoot title=dom-table-deleteTFoot>deleteTFoot</a>();
30858 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-table-tbodies title=dom-table-tBodies>tBodies</a>;
30859 <a href=#htmlelement>HTMLElement</a> <a href=#dom-table-createtbody title=dom-table-createTBody>createTBody</a>();
30860 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-table-rows title=dom-table-rows>rows</a>;
30861 <a href=#htmlelement>HTMLElement</a> <a href=#dom-table-insertrow title=dom-table-insertRow>insertRow</a>(in optional long index);
30862 void <a href=#dom-table-deleterow title=dom-table-deleteRow>deleteRow</a>(in long index);
30863 attribute DOMString <a href=#dom-table-summary title=dom-table-summary>summary</a>;
30866 </dl><p>The <code><a href=#the-table-element>table</a></code> element <a href=#represents>represents</a> data with
30867 more than one dimension, in the form of a <a href=#concept-table title=concept-table>table</a>.</p>
30871 <p>The <code><a href=#the-table-element>table</a></code> element takes part in the <a href=#table-model>table
30899 described in the description of the <a href=#table-model>table
30963 <dt>In the table's <code><a href=#the-caption-element>caption</a></code></dt>
30990 <dt>In the table's <code><a href=#the-caption-element>caption</a></code>, in a <code><a href=#the-details-element>details</a></code> element</dt>
31020 <dt>Next to the table, in the same <code><a href=#the-figure-element>figure</a></code></dt>
31047 <dt>Next to the table, in a <code><a href=#the-figure-element>figure</a></code>'s <code><a href=#the-figcaption-element>figcaption</a></code></dt>
31088 the need for the use of <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attributes:</p>
31111 attribute on <code><a href=#the-table-element>table</a></code> elements was suggested in earlier
31113 text for complex tables for users of screen readers. One of the <a href=#table-descriptions>techniques</a> described <!--in the
31122 best to not include a <code title=attr-table-summary><a href=#attr-table-summary>summary</a></code> attribute. Similarly, if
31126 <code><a href=#the-caption-element>caption</a></code>. For example, describing the conclusions of the
31151 <p>If a <code><a href=#the-table-element>table</a></code> element has a <code title=attr-table-summary><a href=#attr-table-summary>summary</a></code> attribute, the user agent
31156 <dl class=domintro><dt><var title="">table</var> . <code title=dom-table-caption><a href=#dom-table-caption>caption</a></code> [ = <var title="">value</var> ]</dt>
31158 <p>Returns the table's <code><a href=#the-caption-element>caption</a></code> element.</p>
31159 <p>Can be set, to replace the <code><a href=#the-caption-element>caption</a></code> element. If the
31160 new value is not a <code><a href=#the-caption-element>caption</a></code> element, throws a
31161 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</p>
31164 <dt><var title="">caption</var> = <var title="">table</var> . <code title=dom-table-createCaption><a href=#dom-table-createcaption>createCaption</a></code>()</dt>
31166 <p>Ensures the table has a <code><a href=#the-caption-element>caption</a></code> element, and returns it.</p>
31169 <dt><var title="">table</var> . <code title=dom-table-deleteCaption><a href=#dom-table-deletecaption>deleteCaption</a></code>()</dt>
31171 <p>Ensures the table does not have a <code><a href=#the-caption-element>caption</a></code> element.</p>
31174 <dt><var title="">table</var> . <code title=dom-table-tHead><a href=#dom-table-thead>tHead</a></code> [ = <var title="">value</var> ]</dt>
31176 <p>Returns the table's <code><a href=#the-thead-element>thead</a></code> element.</p>
31177 <p>Can be set, to replace the <code><a href=#the-thead-element>thead</a></code> element. If the
31178 new value is not a <code><a href=#the-thead-element>thead</a></code> element, throws a
31179 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</p>
31182 <dt><var title="">thead</var> = <var title="">table</var> . <code title=dom-table-createTHead><a href=#dom-table-createthead>createTHead</a></code>()</dt>
31184 <p>Ensures the table has a <code><a href=#the-thead-element>thead</a></code> element, and returns it.</p>
31187 <dt><var title="">table</var> . <code title=dom-table-deleteTHead><a href=#dom-table-deletethead>deleteTHead</a></code>()</dt>
31189 <p>Ensures the table does not have a <code><a href=#the-thead-element>thead</a></code> element.</p>
31192 <dt><var title="">table</var> . <code title=dom-table-tFoot><a href=#dom-table-tfoot>tFoot</a></code> [ = <var title="">value</var> ]</dt>
31194 <p>Returns the table's <code><a href=#the-tfoot-element>tfoot</a></code> element.</p>
31195 <p>Can be set, to replace the <code><a href=#the-tfoot-element>tfoot</a></code> element. If the
31196 new value is not a <code><a href=#the-tfoot-element>tfoot</a></code> element, throws a
31197 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</p>
31200 <dt><var title="">tfoot</var> = <var title="">table</var> . <code title=dom-table-createTFoot><a href=#dom-table-createtfoot>createTFoot</a></code>()</dt>
31202 <p>Ensures the table has a <code><a href=#the-tfoot-element>tfoot</a></code> element, and returns it.</p>
31205 <dt><var title="">table</var> . <code title=dom-table-deleteTFoot><a href=#dom-table-deletetfoot>deleteTFoot</a></code>()</dt>
31207 <p>Ensures the table does not have a <code><a href=#the-tfoot-element>tfoot</a></code> element.</p>
31210 <dt><var title="">table</var> . <code title=dom-table-tBodies><a href=#dom-table-tbodies>tBodies</a></code></dt>
31212 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-tbody-element>tbody</a></code> elements of the table.</p>
31215 <dt><var title="">tbody</var> = <var title="">table</var> . <code title=dom-table-createTBody><a href=#dom-table-createtbody>createTBody</a></code>()</dt>
31217 <p>Creates a <code><a href=#the-tbody-element>tbody</a></code> element, inserts it into the table, and returns it.</p>
31220 <dt><var title="">table</var> . <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code></dt>
31222 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-tr-element>tr</a></code> elements of the table.</p>
31225 <dt><var title="">tr</var> = <var title="">table</var> . <code title=dom-table-insertRow><a href=#dom-table-insertrow>insertRow</a></code>(<var title="">index</var>)</dt>
31227 <p>Creates a <code><a href=#the-tr-element>tr</a></code> element, along with a <code><a href=#the-tbody-element>tbody</a></code> if required, inserts them into the table at the position given by the argument, and returns the <code><a href=#the-tr-element>tr</a></code>.</p>
31229 <p>If the given position is less than −1 or greater than the number of rows, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31232 <dt><var title="">table</var> . <code title=dom-table-deleteRow><a href=#dom-table-deleterow>deleteRow</a></code>(<var title="">index</var>)</dt>
31234 <p>Removes the <code><a href=#the-tr-element>tr</a></code> element with the given position in the table.</p>
31236 <p>If the given position is less than −1 or greater than the index of the last row, or if there are no rows, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31242 attribute must return, on getting, the first <code><a href=#the-caption-element>caption</a></code>
31243 element child of the <code><a href=#the-table-element>table</a></code> element, if any, or null
31244 otherwise. On setting, if the new value is a <code><a href=#the-caption-element>caption</a></code>
31245 element, the first <code><a href=#the-caption-element>caption</a></code> element child of the
31246 <code><a href=#the-table-element>table</a></code> element, if any, must be removed, and the new
31247 value must be inserted as the first node of the <code><a href=#the-table-element>table</a></code>
31248 element. If the new value is not a <code><a href=#the-caption-element>caption</a></code> element,
31249 then a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> DOM exception must be
31253 method must return the first <code><a href=#the-caption-element>caption</a></code> element child of
31254 the <code><a href=#the-table-element>table</a></code> element, if any; otherwise a new
31255 <code><a href=#the-caption-element>caption</a></code> element must be created, inserted as the first
31256 node of the <code><a href=#the-table-element>table</a></code> element, and then returned.</p>
31259 method must remove the first <code><a href=#the-caption-element>caption</a></code> element child of
31260 the <code><a href=#the-table-element>table</a></code> element, if any.</p>
31263 attribute must return, on getting, the first <code><a href=#the-thead-element>thead</a></code>
31264 element child of the <code><a href=#the-table-element>table</a></code> element, if any, or null
31265 otherwise. On setting, if the new value is a <code><a href=#the-thead-element>thead</a></code>
31266 element, the first <code><a href=#the-thead-element>thead</a></code> element child of the
31267 <code><a href=#the-table-element>table</a></code> element, if any, must be removed, and the new
31269 <code><a href=#the-table-element>table</a></code> element that is neither a <code><a href=#the-caption-element>caption</a></code>
31270 element nor a <code><a href=#the-colgroup-element>colgroup</a></code> element, if any, or at the end
31272 a <code><a href=#the-thead-element>thead</a></code> element, then a
31273 <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> DOM exception must be raised
31277 method must return the first <code><a href=#the-thead-element>thead</a></code> element child of the
31278 <code><a href=#the-table-element>table</a></code> element, if any; otherwise a new
31279 <code><a href=#the-thead-element>thead</a></code> element must be created and inserted immediately
31280 before the first element in the <code><a href=#the-table-element>table</a></code> element that is
31281 neither a <code><a href=#the-caption-element>caption</a></code> element nor a <code><a href=#the-colgroup-element>colgroup</a></code>
31286 method must remove the first <code><a href=#the-thead-element>thead</a></code> element child of the
31287 <code><a href=#the-table-element>table</a></code> element, if any.</p>
31290 attribute must return, on getting, the first <code><a href=#the-tfoot-element>tfoot</a></code>
31291 element child of the <code><a href=#the-table-element>table</a></code> element, if any, or null
31292 otherwise. On setting, if the new value is a <code><a href=#the-tfoot-element>tfoot</a></code>
31293 element, the first <code><a href=#the-tfoot-element>tfoot</a></code> element child of the
31294 <code><a href=#the-table-element>table</a></code> element, if any, must be removed, and the new
31296 <code><a href=#the-table-element>table</a></code> element that is neither a <code><a href=#the-caption-element>caption</a></code>
31297 element, a <code><a href=#the-colgroup-element>colgroup</a></code> element, nor a <code><a href=#the-thead-element>thead</a></code>
31299 elements. If the new value is not a <code><a href=#the-tfoot-element>tfoot</a></code> element, then
31300 a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> DOM exception must be raised
31304 method must return the first <code><a href=#the-tfoot-element>tfoot</a></code> element child of the
31305 <code><a href=#the-table-element>table</a></code> element, if any; otherwise a new
31306 <code><a href=#the-tfoot-element>tfoot</a></code> element must be created and inserted immediately
31307 before the first element in the <code><a href=#the-table-element>table</a></code> element that is
31308 neither a <code><a href=#the-caption-element>caption</a></code> element, a <code><a href=#the-colgroup-element>colgroup</a></code>
31309 element, nor a <code><a href=#the-thead-element>thead</a></code> element, if any, or at the end of
31314 method must remove the first <code><a href=#the-tfoot-element>tfoot</a></code> element child of the
31315 <code><a href=#the-table-element>table</a></code> element, if any.</p>
31318 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
31319 <code><a href=#the-table-element>table</a></code> node, whose filter matches only
31320 <code><a href=#the-tbody-element>tbody</a></code> elements that are children of the
31321 <code><a href=#the-table-element>table</a></code> element.</p>
31324 method must create a new <code><a href=#the-tbody-element>tbody</a></code> element, insert it
31325 immediately after the last <code><a href=#the-tbody-element>tbody</a></code> element in the
31326 <code><a href=#the-table-element>table</a></code> element, if any, or at the end of the
31327 <code><a hrefhref=#the-table-element>table</a></code> element has no
31328 <code><a href=#the-tbody-element>tbody</a></code> element children, and then must return the new
31329 <code><a href=#the-tbody-element>tbody</a></code> element.</p>
31332 must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
31333 <code><a href=#the-table-element>table</a></code> node, whose filter matches only <code><a href=#the-tr-element>tr</a></code>
31334 elements that are either children of the <code><a href=#the-table-element>table</a></code> element,
31335 or children of <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-tbody-element>tbody</a></code>, or
31336 <code><a href=#the-tfoot-element>tfoot</a></code> elements that are themselves children of the
31337 <code><a href=#the-table-element>table</a></code> element. The elements in the collection must be
31339 <code><a href=#the-thead-element>thead</a></code> are included first, in tree order, followed by
31340 those elements whose parent is either a <code><a href=#the-table-element>table</a></code> or
31341 <code><a href=#the-tbody-element>tbody</a></code> element, again in tree order, followed finally by
31342 those elements whose parent is a <code><a href=#the-tfoot-element>tfoot</a></code> element, still
31351 the number of elements in <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code>
31354 <dd>The method must raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
31357 <dt>If the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection has
31358 zero elements in it, and the <code><a href=#the-table-element>table</a></code> has no
31359 <code><a href=#the-tbody-element>tbody</a></code> elements in it:</dt>
31361 <dd>The method must create a <code><a href=#the-tbody-element>tbody</a></code> element, then
31362 create a <code><a href=#the-tr-element>tr</a></code> element, then append the <code><a href=#the-tr-element>tr</a></code>
31363 element to the <code><a href=#the-tbody-element>tbody</a></code> element, then append the
31364 <code><a href=#the-tbody-element>tbody</a></code> element to the <code><a href=#the-table-element>table</a></code> element, and
31365 finally return the <code><a href=#the-tr-element>tr</a></code> element.</dd>
31367 <dt>If the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection has
31370 <dd>The method must create a <code><a href=#the-tr-element>tr</a></code> element, append it to
31371 the last <code><a href=#the-tbody-element>tbody</a></code> element in the table, and return the
31372 <code><a href=#the-tr-element>tr</a></code> element.</dd>
31375 equal to the number of items in <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection:</dt>
31377 <dd>The method must create a <code><a href=#the-tr-element>tr</a></code> element, and append it
31378 to the parent of the last <code><a href=#the-tr-element>tr</a></code> element in the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection. Then, the newly
31379 created <code><a href=#the-tr-element>tr</a></code> element must be returned.</dd>
31383 <dd>The method must create a <code><a href=#the-tr-element>tr</a></code> element, insert it
31384 immediately before the <var title="">index</var>th <code><a href=#the-tr-element>tr</a></code>
31385 element in the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection,
31387 <code><a href=#the-tr-element>tr</a></code> element.</dd>
31394 <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection, minus
31398 greater than or equal to the number of elements in the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection, the method must
31399 instead raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception, and these
31402 <li><p>Otherwise, the method must remove the <var title="">index</var>th element in the <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection from its parent.</p>
31405 attribute must <a href=#reflect>reflect</a> the content attribute of the
31416 <dd>As the first element child of a <code><a href=#the-table-element>table</a></code> element.</dd>
31418 <dd><a href=#flow-content>Flow content</a>, but with no descendant <code><a href=#the-table-element>table</a></code> elements.</dd>
31420 <dd><a href=#global-attributes>Global attributes</a></dd>
31423 <pre class=idl>interface <dfn id=htmltablecaptionelement>HTMLTableCaptionElement</dfn> : <a href=#htmlelement>HTMLElement</a> {};</pre>
31425 </dl><p>The <code><a href=#the-caption-element>caption</a></code> element <a href=#represents>represents</a> the title of the
31426 <code><a href=#the-table-element>table</a></code> that is its parent, if it has a parent and that
31427 is a <code><a href=#the-table-element>table</a></code> element.</p>
31431 <p>The <code><a href=#the-caption-element>caption</a></code> element takes part in the <a href=#table-model>table
31436 <p>When a <code><a href=#the-table-element>table</a></code> element is the only content in a
31437 <code><a href=#the-figure-element>figure</a></code> element other than the <code><a href=#the-figcaption-element>figcaption</a></code>,
31438 the <code><a href=#the-caption-element>caption</a></code> element should be omitted in favor of the
31439 <code><a href=#the-figcaption-element>figcaption</a></code>.</p>
31494 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31495 <code><a href=#the-caption-element>caption</a></code> elements and before any <code><a href=#the-thead-element>thead</a></code>,
31496 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, and <code><a href=#the-tr-element>tr</a></code>
31499 <dd>If the <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code> attribute is present: Empty.</dd>
31500 <dd>If the <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code> attribute is absent: Zero or more <code><a href=#the-col-element>col</a></code> elements.</dd>
31502 <dd><a href=#global-attributes>Global attributes</a></dd>
31503 <dd><code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code></dd>
31506 <pre class=idl>interface <dfn id=htmltablecolelement>HTMLTableColElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
31507 attribute unsigned long <a href=#dom-colgroup-span title=dom-colgroup-span>span</a>;
31510 </dl><p>The <code><a href=#the-colgroup-element>colgroup</a></code> element <a href=#represents>represents</a> a <a href=#concept-column-group title=concept-column-group>group</a> of one or more <a href=#concept-column title=concept-column>columns</a> in the <code><a href=#the-table-element>table</a></code> that
31511 is its parent, if it has a parent and that is a <code><a href=#the-table-element>table</a></code>
31514 <p>If the <code><a href=#the-colgroup-element>colgroup</a></code> element contains no <code><a href=#the-col-element>col</a></code>
31516 specified, whose value must be a <a href=#valid-non-negative-integer>valid non-negative
31521 <p>The <code><a href=#the-colgroup-element>colgroup</a></code> element and its <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code> attribute take part in the
31522 <a href=#table-model>table model</a>.</p>
31525 attribute must <a href=#reflect>reflect</a> the content attribute of the
31526 same name. The value must be <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited to only non-negative
31537 <dd>As a child of a <code><a href=#the-colgroup-element>colgroup</a></code> element that doesn't have
31538 a <code title=attr-col-span><a href=#attr-col-span>span</a></code> attribute.</dd>
31542 <dd><a href=#global-attributes>Global attributes</a></dd>
31543 <dd><code title=attr-col-span><a href=#attr-col-span>span</a></code></dd>
31547 <p><code><a href=#htmltablecolelement>HTMLTableColElement</a></code>, same as for
31548 <code><a href=#the-colgroup-element>colgroup</a></code> elements. This interface defines one member,
31549 <code title=dom-col-span><a href=#dom-col-span>span</a></code>.</p>
31551 </dl><p>If a <code><a href=#the-col-element>col</a></code> element has a parent and that is a
31552 <code><a href=#the-colgroup-element>colgroup</a></code> element that itself has a parent that is a
31553 <code><a href=#the-table-element>table</a></code> element, then the <code><a href=#the-col-element>col</a></code> element
31554 <a href=#represents>represents</a> one or more <a href=#concept-column title=concept-column>columns</a> in the <a href=#concept-column-group title=concept-column-group>column group</a> represented by that
31555 <code><a href=#the-colgroup-element>colgroup</a></code>.</p>
31558 specified, whose value must be a <a href=#valid-non-negative-integer>valid non-negative
31563 <p>The <code><a href=#the-col-element>col</a></code> element and its <code title=attr-col-span><a href=#attr-col-span>span</a></code> attribute take part in the
31564 <a href=#table-model>table model</a>.</p>
31567 attribute must <a href=#reflect>reflect</a> the content attribute of the
31568 same name. The value must be <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited to only non-negative
31579 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31580 <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-colgroup-element>colgroup</a></code>, and
31581 <code><a href=#the-thead-element>thead</a></code> elements, but only if there are no
31582 <code><a href=#the-tr-element>tr</a></code> elements that are children of the
31583 <code><a href=#the-table-element>table</a></code> element.</dd>
31585 <dd>Zero or more <code><a href=#the-tr-element>tr</a></code> elements</dd>
31587 <dd><a href=#global-attributes>Global attributes</a></dd>
31590 <pre class=idl>interface <dfn id=htmltablesectionelement>HTMLTableSectionElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
31591 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-tbody-rows title=dom-tbody-rows>rows</a>;
31592 <a href=#htmlelement>HTMLElement</a> <a href=#dom-tbody-insertrow title=dom-tbody-insertRow>insertRow</a>(in optional long index);
31593 void <a href=#dom-tbody-deleterow title=dom-tbody-deleteRow>deleteRow</a>(in long index);
31595 <p>The <code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code> interface is also
31596 used for <code><a href=#the-thead-element>thead</a></code> and <code><a href=#the-tfoot-element>tfoot</a></code> elements.</p>
31598 </dl><p>The <code><a href=#the-tbody-element>tbody</a></code> element <a href=#represents>represents</a> a <a href=#concept-row-group title=concept-row-group>block</a> of <a href=#concept-row title=concept-row>rows</a> that consist of a body of data for
31599 the parent <code><a hrefhref=#the-tbody-element>tbody</a></code>
31600 element has a parent and it is a <code><a href=#the-table-element>table</a></code>.</p>
31604 <p>The <code><a href=#the-tbody-element>tbody</a></code> element takes part in the <a href=#table-model>table
31609 <dl class=domintro><dt><var title="">tbody</var> . <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code></dt>
31611 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-tr-element>tr</a></code> elements of the table section.</p>
31614 <dt><var title="">tr</var> = <var title="">tbody</var> . <code title=dom-tbody-insertRow><a href=#dom-tbody-insertrow>insertRow</a></code>( [ <var title="">index</var> ] )</dt>
31616 <p>Creates a <code><a href=#the-tr-element>tr</a></code> element, inserts it into the table section at the position given by the argument, and returns the <code><a href=#the-tr-element>tr</a></code>.</p>
31618 <p>If the given position is less than −1 or greater than the number of rows, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31621 <dt><var title="">tbody</var> . <code title=dom-tbody-deleteRow><a href=#dom-tbody-deleterow>deleteRow</a></code>(<var title="">index</var>)</dt>
31623 <p>Removes the <code><a href=#the-tr-element>tr</a></code> element with the given position in the table section.</p>
31625 <p>If the given position is less than −1 or greater than the index of the last row, or if there are no rows, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31631 must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the element,
31632 whose filter matches only <code><a href=#the-tr-element>tr</a></code> elements that are children
31639 number of elements in the <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code>
31640 collection, the method must raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
31644 equal to the number of items in the <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code> collection, the method must
31645 create a <code><a href=#the-tr-element>tr</a></code> element, append it to the element <var title="">table section</var>, and return the newly created
31646 <code><a href=#the-tr-element>tr</a></code> element.</p>
31648 <p>Otherwise, the method must create a <code><a href=#the-tr-element>tr</a></code> element,
31651 <code><a href=#the-tr-element>tr</a></code> element in the <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code> collection, and finally must
31652 return the newly created <code><a href=#the-tr-element>tr</a></code> element.</p>
31654 <p>The <dfn id=dom-tbody-deleterow title=dom-tbody-deleteRow><code>deleteRow(<var title="">index</var>)</code></dfn> method must remove the <var title="">index</var>th element in the <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code> collection from its parent. If
31656 to the number of elements in the <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code> collection, the method must
31657 instead raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31667 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31668 <code><a href=#the-caption-element>caption</a></code>, and <code><a href=#the-colgroup-element>colgroup</a></code>
31669 elements and before any <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, and
31670 <code><a href=#the-tr-element>tr</a></code> elements, but only if there are no other
31671 <code><a href=#the-thead-element>thead</a></code> elements that are children of the
31672 <code><a href=#the-table-element>table</a></code> element.</dd>
31674 <dd>Zero or more <code><a href=#the-tr-element>tr</a></code> elements</dd>
31676 <dd><a href=#global-attributes>Global attributes</a></dd>
31678 <dd><code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code>, as defined for
31679 <code><a href=#the-tbody-element>tbody</a></code> elements.</dd>
31680 </dl><p>The <code><a href=#the-thead-element>thead</a></code> element <a href=#represents>represents</a> the <a href=#concept-row-group title=concept-row-group>block</a> of <a href=#concept-row title=concept-row>rows</a> that consist of the column labels
31681 (headers) for the parent <code><a href=#the-table-element>table</a></code> element, if the
31682 <code><a href=#the-thead-element>thead</a></code> element has a parent and it is a
31683 <code><a href=#the-table-element>table</a></code>.</p>
31687 <p>The <code><a href=#the-thead-element>thead</a></code> element takes part in the <a href=#table-model>table
31698 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31699 <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-colgroup-element>colgroup</a></code>, and <code><a href=#the-thead-element>thead</a></code>
31700 elements and before any <code><a href=#the-tbody-element>tbody</a></code> and <code><a href=#the-tr-element>tr</a></code>
31701 elements, but only if there are no other <code><a href=#the-tfoot-element>tfoot</a></code>
31702 elements that are children of the <code><a href=#the-table-element>table</a></code> element.</dd>
31703 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31704 <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-colgroup-element>colgroup</a></code>, <code><a href=#the-thead-element>thead</a></code>,
31705 <code><a href=#the-tbody-element>tbody</a></code>, and <code><a href=#the-tr-element>tr</a></code> elements, but only if there
31706 are no other <code><a href=#the-tfoot-element>tfoot</a></code> elements that are children of the
31707 <code><a href=#the-table-element>table</a></code> element.</dd>
31709 <dd>Zero or more <code><a href=#the-tr-element>tr</a></code> elements</dd>
31711 <dd><a href=#global-attributes>Global attributes</a></dd>
31713 <dd><code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code>, as defined for
31714 <code><a href=#the-tbody-element>tbody</a></code> elements.</dd>
31715 </dl><p>The <code><a href=#the-tfoot-element>tfoot</a></code> element <a href=#represents>represents</a> the <a href=#concept-row-group title=concept-row-group>block</a> of <a href=#concept-row title=concept-row>rows</a> that consist of the column summaries
31716 (footers) for the parent <code><a href=#the-table-element>table</a></code> element, if the
31717 <code><a href=#the-tfoot-element>tfoot</a></code> element has a parent and it is a
31718 <code><a href=#the-table-element>table</a></code>.</p>
31722 <p>The <code><a href=#the-tfoot-element>tfoot</a></code> element takes part in the <a href=#table-model>table
31733 <dd>As a child of a <code><a href=#the-thead-element>thead</a></code> element.</dd>
31734 <dd>As a child of a <code><a href=#the-tbody-element>tbody</a></code> element.</dd>
31735 <dd>As a child of a <code><a href=#the-tfoot-element>tfoot</a></code> element.</dd>
31736 <dd>As a child of a <code><a href=#the-table-element>table</a></code> element, after any
31737 <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-colgroup-element>colgroup</a></code>, and <code><a href=#the-thead-element>thead</a></code>
31738 elements, but only if there are no <code><a href=#the-tbody-element>tbody</a></code> elements that
31739 are children of the <code><a href=#the-table-element>table</a></code> element.</dd>
31741 <dd>When the parent node is a <code><a href=#the-thead-element>thead</a></code> element: Zero or more <code><a href=#the-th-element>th</a></code> elements</dd>
31742 <dd>Otherwise: Zero or more <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code> elements</dd>
31744 <dd><a href=#global-attributes>Global attributes</a></dd>
31747 <pre class=idl>interface <dfn id=htmltablerowelement>HTMLTableRowElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
31748 readonly attribute long <a href=#dom-tr-rowindex title=dom-tr-rowIndex>rowIndex</a>;
31749 readonly attribute long <a href=#dom-tr-sectionrowindex title=dom-tr-sectionRowIndex>sectionRowIndex</a>;
31750 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-tr-cells title=dom-tr-cells>cells</a>;
31751 <a href=#htmlelement>HTMLElement</a> <a href=#dom-tr-insertcell title=dom-tr-insertCell>insertCell</a>(in optional long index);
31752 void <a href=#dom-tr-deletecell title=dom-tr-deleteCell>deleteCell</a>(in long index);
31755 </dl><p>The <code><a href=#the-tr-element>tr</a></code> element <a href=#represents>represents</a> a <a href=#concept-row title=concept-row>row</a> of <a href=#concept-cell title=concept-cell>cells</a> in a <a href=#concept-table title=concept-table>table</a>.</p>
31759 <p>The <code><a href=#the-tr-element>tr</a></code> element takes part in the <a href=#table-model>table
31764 <dl class=domintro><dt><var title="">tr</var> . <code title=dom-tr-rowIndex><a href=#dom-tr-rowindex>rowIndex</a></code></dt>
31768 <p>Returns the position of the row in the table's <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> list.</p>
31774 <dt><var title="">tr</var> . <code title=dom-tr-sectionRowIndex><a href=#dom-tr-sectionrowindex>sectionRowIndex</a></code></dt>
31778 <p>Returns the position of the row in the table section's <code title=dom-tbody-rows><a href=#dom-tbody-rows>rows</a></code> list.</p>
31784 <dt><var title="">tr</var> . <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code></dt>
31787 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements of the row.</p>
31791 <dt><var title="">cell</var> = <var title="">tr</var> . <code title=dom-tr-insertCell><a href=#dom-tr-insertcell>insertCell</a></code>( [ <var title="">index</var> ] )</dt>
31795 <p>Creates a <code><a href=#the-td-element>td</a></code> element, inserts it into the table
31797 <code><a href=#the-td-element>td</a></code>.</p>
31804 the number of cells, throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
31809 <dt><var title="">tr</var> . <code title=dom-tr-deleteCell><a href=#dom-tr-deletecell>deleteCell</a></code>(<var title="">index</var>)</dt>
31812 <p>Removes the <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code> element with the
31820 <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31827 attribute must, if the element has a parent <code><a href=#the-table-element>table</a></code>
31828 element, or a parent <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, or
31829 <code><a href=#the-tfoot-element>tfoot</a></code> element and a <em>grandparent</em>
31830 <code><a href=#the-table-element>table</a></code> element, return the index of the <code><a href=#the-tr-element>tr</a></code>
31831 element in that <code><a href=#the-table-element>table</a></code> element's <code title=dom-table-rows><a href=#dom-table-rows>rows</a></code> collection. If there is no such
31832 <code><a href=#the-table-element>table</a></code> element, then the attribute must return
31836 attribute must, if the element has a parent <code><a href=#the-table-element>table</a></code>,
31837 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, or <code><a href=#the-tfoot-element>tfoot</a></code>
31838 element, return the index of the <code><a href=#the-tr-element>tr</a></code> element in the
31840 that's the <code title=dom-table-rows><a href=#dom-table-rows>HTMLTableElement.rows</a></code>
31841 collection; for table sections, that's the <code title=dom-tbody-rows><a href=#dom-tbody-rows>HTMLTableRowElement.rows</a></code>
31846 must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
31847 <code><a href=#the-tr-element>tr</a></code> element, whose filter matches only <code><a href=#the-td-element>td</a></code>
31848 and <code><a href=#the-th-element>th</a></code> elements that are children of the
31849 <code><a href=#the-tr-element>tr</a></code> element.</p>
31854 number of elements in the <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code>
31855 collection, the method must raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code>
31859 equal to the number of items in <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> collection, the method must create
31860 a <code><a href=#the-td-element>td</a></code> element, append it to the <code><a href
31861 and return the newly created <code><a href=#the-td-element>td</a></code> element.</p>
31863 <p>Otherwise, the method must create a <code><a href=#the-td-element>td</a></code> element,
31864 insert it as a child of the <code><a href=#the-tr-element>tr</a></code> element, immediately
31865 before the <var title="">index</var>th <code><a href=#the-td-element>td</a></code> or
31866 <code><a href=#the-th-element>th</a></code> element in the <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> collection, and finally must
31867 return the newly created <code><a href=#the-td-element>td</a></code> element.</p>
31869 <p>The <dfn id=dom-tr-deletecell title=dom-tr-deleteCell><code>deleteCell(<var title="">index</var>)</code></dfn> method must remove the <var title="">index</var>th element in the <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> collection from its parent. If
31871 to the number of elements in the <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> collection, the method must
31872 instead raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
31880 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
31882 <dd>As a child of a <code><a href=#the-tr-element>tr</a></code> element.</dd>
31884 <dd><a href=#flow-content>Flow content</a>.</dd>
31886 <dd><a href=#global-attributes>Global attributes</a></dd>
31887 <dd><code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code></dd>
31888 <dd><code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code></dd>
31889 <dd><code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code></dd>
31893 <pre class=idl>interface <dfn id=htmltabledatacellelement>HTMLTableDataCellElement</dfn> : <a href=#htmltablecellelement>HTMLTableCellElement</a> {};</pre>
31895 </dl><p>The <code><a href=#the-td-element>td</a></code> element <a href=#represents>represents</a> a data <a href=#concept-cell title=concept-cell>cell</a> in a table.</p>
31899 <p>The <code><a href=#the-td-element>td</a></code> element and its <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code>, <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code>, and <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attributes take part in the
31900 <a href=#table-model>table model</a>.</p>
31910 <dd>As a child of a <code><a href=#the-tr-element>tr</a></code> element.</dd>
31912 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
31914 <dd><a href=#global-attributes>Global attributes</a></dd>
31915 <dd><code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code></dd>
31916 <dd><code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code></dd>
31917 <dd><code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code></dd>
31918 <dd><code title=attr-th-scope><a href=#attr-th-scope>scope</a></code></dd>
31921 <pre class=idl>interface <dfn id=htmltableheadercellelement>HTMLTableHeaderCellElement</dfn> : <a href=#htmltablecellelement>HTMLTableCellElement</a> {
31922 attribute DOMString <a href=#dom-th-scope title=dom-th-scope>scope</a>;
31925 </dl><p>The <code><a href=#the-th-element>th</a></code> element <a href=#represents>represents</a> a header <a href=#concept-cell title=concept-cell>cell</a> in a table.</p>
31927 <p>The <code><a href=#the-th-element>th</a></code> element may have a <dfn id=attr-th-scope title=attr-th-scope><code>scope</code></dfn> content attribute
31928 specified. The <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute is
31929 an <a href=#enumerated-attribute>enumerated attribute</a> with five states, four of which
31948 the remaining cells in the row group. A <code><a href=#the-th-element>th</a></code> element's
31949 <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute must not be in
31950 the <a href=#attr-th-scope-rowgroup title=attr-th-scope-rowgroup>row group</a> state if
31951 the element is not anchored in a <a href=#concept-row-group title=concept-row-group>row group</a>.</dd>
31957 all the remaining cells in the column group. A <code><a href=#the-th-element>th</a></code>
31958 element's <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute must
31959 not be in the <a href=#attr-th-scope-colgroup title=attr-th-scope-colgroup>column
31960 group</a> state if the element is not anchored in a <a href=#concept-column-group title=concept-column-group>column group</a>.</dd>
31967 </dl><p>The <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute's
31972 <p>The <code><a href=#the-th-element>th</a></code> element and its <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code>, <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code>, <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code>, and <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attributes take part in the
31973 <a href=#table-model>table model</a>.</p>
31976 attribute must <a href=#reflect>reflect</a> the content attribute of the
31983 <p>The following example shows how the <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute's <code title=attr-th-scope-rowgroup><a href=#attr-th-scope-rowgroup>rowgroup</a></code> value affects which
32013 <p>The headers with the explicit <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attributes apply to all the
32024 <h4 id=attributes-common-to-td-and-th-elements><span class=secno>4.9.11 </span>Attributes common to <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</h4>
32026 <p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements may have a <dfn id=attr-tdth-colspan title=attr-tdth-colspan><code>colspan</code></dfn> content
32027 attribute specified, whose value must be a <a href=#valid-non-negative-integer>valid non-negative
32030 <p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements may also have a
32032 attribute specified, whose value must be a <a href=#valid-non-negative-integer>valid non-negative
32038 the <a href=#table-model>table model</a></span>.</p> <!-- conformance criteria
32042 <hr><p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> element may have a <dfn id=attr-tdth-headers title=attr-tdth-headers><code>headers</code></dfn> content
32043 attribute specified. The <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute, if specified,
32044 must contain a string consisting of an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique
32046 an ID of a <code><a href=#the-th-element>th</a></code> element taking part in the same <a href=#concept-table title=concept-table>table</a> as the <code><a href=#the-td-element>td</a></code> or
32047 <code><a href=#the-th-element>th</a></code> element<span class=impl> (as defined by the
32048 <a href=#table-model>table model</a>)</span>.</p>
32050 <p>A <code><a href=#the-th-element>th</a></code> element with ID <var title="">id</var> is said
32051 to be <i>directly targeted</i> by all <code><a href=#the-td-element>td</a></code> and
32052 <code><a href=#the-th-element>th</a></code> elements in the same <a href=#concept-table title=concept-table>table</a> that have <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attributes whose values
32054 <code><a href=#the-th-element>th</a></code> element <var title="">A</var> is said to be
32055 <i>targeted</i> by a <code><a href=#the-th-element>th</a></code> or <code><a href=#the-td-element>td</a></code> element
32062 <p>A <code><a href=#the-th-element>th</a></code> element must not be <i>targeted</i> by
32067 <p>The <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code>, <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code>, and <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attributes take part in the
32068 <a href=#table-model>table model</a>.</p>
32072 <hr><p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements implement
32073 interfaces that inherit from the <code><a href=#htmltablecellelement>HTMLTableCellElement</a></code>
32076 <pre class=idl>interface <dfn id=htmltablecellelement>HTMLTableCellElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
32077 attribute unsigned long <a href=#dom-tdth-colspan title=dom-tdth-colSpan>colSpan</a>;
32078 attribute unsigned long <a href=#dom-tdth-rowspan title=dom-tdth-rowSpan>rowSpan</a>;
32079 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <a href=#dom-tdth-headers title=dom-tdth-headers>headers</a>;
32080 readonly attribute long <a href=#dom-tdth-cellindex title=dom-tdth-cellIndex>cellIndex</a>;
32083 <dl class=domintro><dt><var title="">cell</var> . <code title=dom-tdth-cellIndex><a href=#dom-tdth-cellindex>cellIndex</a></code></dt>
32087 <p>Returns the position of the cell in the row's <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> list. This does not necessarily
32099 attribute must <a href=#reflect>reflect</a> the content attribute of the
32100 same name. The value must be <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited to only non-negative
32104 attribute must <a href=#reflect>reflect</a> the content attribute of the
32105 same name. Its default value, which must be used if <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative integers">parsing the
32109 attribute must <a href=#reflect>reflect</a> the content attribute of the
32113 IDL attribute must, if the element has a parent <code><a href=#the-tr-element>tr</a></code>
32115 element's <code title=dom-tr-cells><a href=#dom-tr-cells>cells</a></code> collection. If
32135 no slots). Tables correspond to <code><a href=#the-table-element>table</a></code> elements.</p>
32143 correspond to <code><a href=#the-td-element>td</a></code> elements, and header cells correspond
32144 to <code><a href=#the-th-element>th</a></code> elements. Cells of both types can have zero or
32151 from <span title=""><var title="">x</var>=0</span> to <span title=""><var title="">x</var>=<var title="">x<sub title="">width</sub></var>-1</span>, for a particular value of <var title="">y</var>. Rows correspond to <code><a href=#the-tr-element>tr</a></code> elements.</p>
32154 slots from <span title=""><var title="">y</var>=0</span> to <span title=""><var title="">y</var>=<var title="">y<sub title="">height</sub></var>-1</span>, for a particular value of <var title="">x</var>. Columns can correspond to <code><a href=#the-col-element>col</a></code>
32155 elements. In the absence of <code><a href=#the-col-element>col</a></code> elements, columns are
32159 <a href=#concept-row title=concept-row>rows</a> anchored at a slot (0, <var title="">group<sub title="">y</sub></var>) with a particular <var title="">height</var> such that the row group covers all the slots
32162 correspond to <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and
32163 <code><a href=#the-tfoot-element>tfoot</a></code> elements. Not every row is necessarily in a row
32167 of <a href=#concept-column title=concept-column>columns</a> anchored at a slot
32172 correspond to <code><a href=#the-colgroup-element>colgroup</a></code> elements. Not every column is
32175 <p><a href=#concept-row-group title=concept-row-group>Row groups</a> cannot overlap
32176 each other. Similarly, <a href=#concept-column-group title=concept-column-group>column
32179 <p>A <a href=#concept-cell title=concept-cell>cell</a> cannot cover slots that
32180 are from two or more <a href=#concept-row-group title=concept-row-group>row
32182 <a href=#concept-column-group title=concept-column-group>column groups</a>. All the
32183 slots that form part of one cell are part of zero or one <a href=#concept-row-group title=concept-row-group>row groups</a> and zero or more <a href=#concept-column-group title=concept-column-group>column groups</a>.</p>
32185 <p>In addition to <a href=#concept-cell title=concept-cell>cells</a>, <a href=#concept-column title=concept-column>columns</a>, <a href=#concept-row title=concept-row>rows</a>, <a href=#concept-row-group title=concept-row-group>row
32186 groups</a>, and <a href=#concept-column-group title=concept-column-group>column
32187 groups</a>, <a href=#concept-table title=concept-table>tables</a> can have a
32188 <code><a href=#the-caption-element>caption</a></code> element associated with them. This gives the
32192 represented by <code><a href=#the-table-element>table</a></code> elements and their
32198 <p>To determine which elements correspond to which slots in a <a href=#concept-table title=concept-table>table</a> associated with a
32199 <code><a href=#the-table-element>table</a></code> element, to determine the dimensions of the table
32201 there are any <a href=#table-model-error title="table model error">table model
32214 <p>Let <var title="">pending <code><a href=#the-tfoot-element>tfoot</a></code> elements</var> be
32215 a list of <code><a href=#the-tfoot-element>tfoot</a></code> elements, initially empty.</p>
32220 <p>Let <var title="">the table</var> be the <a href=#concept-table title=concept-table>table</a> represented by the
32221 <code><a href=#the-table-element>table</a></code> element. The <var title="">x<sub title="">width</sub></var> and <var title="">y<sub title="">height</sub></var> variables give <var title="">the
32233 <p>If the <code><a href=#the-table-element>table</a></code> element has no children elements,
32241 <p>Associate the first <code><a href=#the-caption-element>caption</a></code> element child of the
32242 <code><a href=#the-table-element>table</a></code> element with <var title="">the table</var>. If
32244 <code><a href=#the-caption-element>caption</a></code> element.</p>
32251 element child of the <code><a href=#the-table-element>table</a></code> element.</p>
32263 following elements, <a href=#concept-table-advance title=concept-table-advance>advance</a> the <var title="">current element</var> to the next child of the
32264 <code><a href=#the-table-element>table</a></code>:</p>
32266 <ul class=brief><li><code><a href=#the-colgroup-element>colgroup</a></code></li>
32267 <li><code><a href=#the-thead-element>thead</a></code></li>
32268 <li><code><a href=#the-tbody-element>tbody</a></code></li>
32269 <li><code><a href=#the-tfoot-element>tfoot</a></code></li>
32270 <li><code><a href=#the-tr-element>tr</a></code></li>
32276 <code><a href=#the-colgroup-element>colgroup</a></code>, follow these substeps:</p>
32284 <code><a href=#the-col-element>col</a></code> element children</dt>
32300 <code><a href=#the-col-element>col</a></code> element child of the <code><a href=#the-colgroup-element>colgroup</a></code>
32308 <code><a href=#the-col-element>col</a></code> element has a <code title=attr-col-span><a href=#attr-col-span>span</a></code> attribute, then parse its
32309 value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
32315 <p>Otherwise, if the <code><a href=#the-col-element>col</a></code> element has no <code title=attr-col-span><a href=#attr-col-span>span</a></code> attribute, or if trying to
32330 <p>Let the last <var title="">span</var> <a href=#concept-column title=concept-column>columns</a> in <var title="">the
32332 column</var> <code><a href=#the-col-element>col</a></code> element.</p>
32339 <code><a href=#the-col-element>col</a></code> element child of the <code><a href=#the-colgroup-element>colgroup</a></code>
32341 the next <code><a href=#the-col-element>col</a></code> element child of the
32342 <code><a href=#the-colgroup-element>colgroup</a></code> element, and return to the step
32349 <p>Let all the last <a href=#concept-column title=concept-column>columns</a> in <var title="">the
32351 new <a href=#concept-column-group title=concept-column-group>column group</a>,
32353 corresponding to the <code><a href=#the-colgroup-element>colgroup</a></code> element.</p>
32361 <code><a href=#the-col-element>col</a></code> element children</dt>
32367 <p>If the <code><a href=#the-colgroup-element>colgroup</a></code> element has a <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code> attribute, then parse
32368 its value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
32374 <p>Otherwise, if the <code><a href=#the-colgroup-element>colgroup</a></code> element has no
32375 <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code> attribute, or
32390 <p>Let the last <var title="">span</var> <a href=#concept-column title=concept-column>columns</a> in <var title="">the
32391 table</var> form a new <a href=#concept-column-group title=concept-column-group>column group</a>, anchored
32394 the <code><a href=#the-colgroup-element>colgroup</a></code> element.</p>
32404 <p><a href=#concept-table-advance title=concept-table-advance>Advance</a> the <var title="">current element</var> to the next child of the
32405 <code><a href=#the-table-element>table</a></code>.</p>
32412 the following elements, <a href=#concept-table-advance title=concept-table-advance>advance</a> the <var title="">current element</var> to the next child of the
32413 <code><a href=#the-table-element>table</a></code>:</p>
32415 <ul class=brief><li><code><a href=#the-colgroup-element>colgroup</a></code></li>
32416 <li><code><a href=#the-thead-element>thead</a></code></li>
32417 <li><code><a href=#the-tbody-element>tbody</a></code></li>
32418 <li><code><a href=#the-tfoot-element>tfoot</a></code></li>
32419 <li><code><a href=#the-tr-element>tr</a></code></li>
32425 <code><a href=#the-colgroup-element>colgroup</a></code> element, jump to the step labeled
32449 not one of the following elements, <a href=#concept-table-advance title=concept-table-advance>advance</a> the <var title="">current element</var> to the next child of the
32450 <code><a href=#the-table-element>table</a></code>:</p>
32452 <ul class=brief><li><code><a href=#the-thead-element>thead</a></code></li>
32453 <li><code><a href=#the-tbody-element>tbody</a></code></li>
32454 <li><code><a href=#the-tfoot-element>tfoot</a></code></li>
32455 <li><code><a href
32461 <code><a href=#the-tr-element>tr</a></code>, then run the <a href=#algorithm-for-processing-rows>algorithm for processing
32462 rows</a>, <a href=#concept-table-advance title=concept-table-advance>advance</a>
32464 <code><a href=#the-table-element>table</a></code>, and return to the step labeled
32471 <p>Run the <a href=#algorithm-for-ending-a-row-group>algorithm for ending a row group</a>.</p>
32478 <code><a href=#the-tfoot-element>tfoot</a></code>, then add that element to the list of <var title="">pending <code><a href=#the-tfoot-element>tfoot</a></code> elements</var>, <a href=#concept-table-advance title=concept-table-advance>advance</a> the <var title="">current element</var> to the next child of the
32479 <code><a href=#the-table-element>table</a></code>, and return to the step labeled
32487 <code><a href=#the-thead-element>thead</a></code> or a <code><a href=#the-tbody-element>tbody</a></code>.</p>
32489 <p>Run the <a href=#algorithm-for-processing-row-groups>algorithm for processing row groups</a>.</p>
32495 <p><a href=#concept-table-advance title=concept-table-advance>Advance</a> the <var title="">current element</var> to the next child of the
32496 <code><a href=#the-table-element>table</a></code>.</p>
32508 <p><i>End</i>: For each <code><a href=#the-tfoot-element>tfoot</a></code> element in the list of
32509 <var title="">pending <code><a href=#the-tfoot-element>tfoot</a></code> elements</var>, in tree
32510 order, run the <a href=#algorithm-for-processing-row-groups>algorithm for processing row
32517 <p>If there exists a <a href=#concept-row title=concept-row>row</a> or <a href=#concept-column title=concept-column>column</a> in <var title="">the
32518 table</var> containing only <a href=#concept-slots title=concept-slots>slots</a> that do not have a <a href=#concept-cell title=concept-cell>cell</a> anchored to them, then this is a
32519 <a href=#table-model-error>table model error</a>.</p>
32531 <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-tbody-element>tbody</a></code>, and <code><a href=#the-tfoot-element>tfoot</a></code>
32543 <p>For each <code><a href=#the-tr-element>tr</a></code> element that is a child of the element
32544 being processed, in tree order, run the <a href=#algorithm-for-processing-rows>algorithm for
32552 <p>If <span title=""><var title="">y<sub title="">height</sub></var> > <var title="">y<sub title="">start</sub></var></span>, then let all the last <a href=#concept-row title=concept-row>rows</a> in <var title="">the table</var>
32554 to <span title="">y=<var title="">y<sub title="">height</sub></var>-1</span> form a new <a href=#concept-row-group title=concept-row-group>row group</a>, anchored at the slot
32562 <p>Run the <a href=#algorithm-for-ending-a-row-group>algorithm for ending a row group</a>.</p>
32578 <p>Run the <a href=#algorithm-for-growing-downward-growing-cells>algorithm for growing downward-growing
32600 the set of steps above for processing <code><a href=#the-tr-element>tr</a></code> elements,
32620 <p>Run the <a href=#algorithm-for-growing-downward-growing-cells>algorithm for growing downward-growing
32627 <p>If the <code><a href=#the-tr-element>tr</a></code> element being processed has no
32628 <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code> element children, then increase
32637 <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code> element in the <code><a href=#the-tr-element>tr</a></code>
32660 <p>If the <var title="">current cell</var> has a <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code> attribute, then <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative integers">parse that
32672 <p>If the <var title="">current cell</var> has a <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code> attribute, then <a href=#rules-for-parsing-non-negative-integers title="rules for
32709 covered by a new <a href=#concept-cell title=concept-cell>cell</a> <var title="">c</var>, anchored at (<var title="">x<sub title="">current</sub></var>, <var title="">y<sub title="">current</sub></var>), which has width <var title="">colspan</var> and height <var title="">rowspan</var>,
32713 <code><a href=#the-th-element>th</a></code> element, let this new cell <var title="">c</var>
32716 <p>To establish which header cells apply to the <var title="">current cell</var> element, use the <a href=#algorithm-for-assigning-header-cells>algorithm for
32719 <p>If any of the slots involved already had a <a href=#concept-cell title=concept-cell>cell</a> covering them, then this is a
32720 <a href=#table-model-error>table model error</a>. Those slots now have two cells
32742 <p>If <var title="">current cell</var> is the last <code><a href=#the-td-element>td</a></code>
32743 or <code><a href=#the-th-element>th</a></code> element in the <code><a href=#the-tr-element>tr</a></code> element being
32752 <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code> element in the <code><a href=#the-tr-element>tr</a></code>
32767 any, extend the <a href=#concept-cell title=concept-cell>cell</a> <var title="">cell</var> so that it also covers the slots with
32795 <dl class=switch><dt>If the <var title="">principal cell</var> has a <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute specified</dt>
32804 <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute and
32805 <a href=#split-a-string-on-spaces title="split a string on spaces">split it on
32816 first element in the <code><a href=#document>Document</a></code> with an ID equal to
32817 the token is a cell in the same <a href=#concept-table title=concept-table>table</a>, and that cell is not the
32825 <dt>If <var title="">principal cell</var> does not have a <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code> attribute specified</dt>
32849 run the <a href=#internal-algorithm-for-scanning-and-assigning-header-cells>internal algorithm for scanning and assigning
32864 run the <a href=#internal-algorithm-for-scanning-and-assigning-header-cells>internal algorithm for scanning and assigning
32877 <a href=#concept-row-group title=concept-row-group>row group</a>, then add all
32878 header cells that are <a href=#row-group-header title="row group header">row group
32896 <a href=#concept-column-group title=concept-column-group>column group</a>, then
32897 add all header cells that are <a href=#column-group-header title="column group
32916 <p>Remove all the <a href=#empty-cell title="empty cell">empty cells</a> from
33041 <a href=#column-header>column header</a>, then let <var title="">blocked</var> be true.</p>
33054 <a href=#row-header>row header</a>, then let <var title="">blocked</var> be true.</p>
33086 <ul><li>The cell's <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute
33087 is in the <a href=#attr-th-scope-col title=attr-th-scope-col>column</a> state, or</li>
33089 <li>The cell's <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute
33090 is in the <a href=#attr-th-scope-auto title=attr-th-scope-auto>auto</a> state, and
33099 <ul><li>The cell's <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute
33100 is in the <a href=#attr-th-scope-row title=attr-th-scope-row>row</a> state, or</li>
33102 <li>The cell's <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute
33103 is in the <a href=#attr-th-scope-auto title=attr-th-scope-auto>auto</a> state, the
33104 cell is not a <a href=#column-header>column header</a>, and there are no data
33108 its <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute is in the
33109 <a href=#attr-th-scope-colgroup title=attr-th-scope-colgroup>column group</a> state.</p>
33112 its <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute is in the
33113 <a href=#attr-th-scope-rowgroup title=attr-th-scope-rowgroup>row group</a> state.</p>
33117 <a href=#white_space>White_Space</a> characters.</p>
33320 <p>Any form starts with a <code><a href=#the-form-element>form</a></code> element, inside which
33322 <code><a href=#the-input-element>input</a></code> element, which by default provides a one-line
33323 text field. To label a control, the <code><a href
33325 <code><a href=#the-label-element>label</a></code> element. Each part of a form is considered a
33326 <a href=#paragraph>paragraph</a>, and is typically separated from other parts
33327 using <code><a href=#the-p-element>p</a></code> elements. Putting this together, here is how
33335 radio buttons. Radio buttons also use the <code><a href=#the-input-element>input</a></code>
33336 element, this time with a <code title=attr-input-type><a href=#attr-input-type>type</a></code>
33337 attribute with the value <code title=attr-input-type-radio><a href=#radio-button-state>radio</a></code>. To make the radio
33339 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute. To group a batch
33341 can use the <code><a href=#the-fieldset-element>fieldset</a></code> element. The title of such a group
33343 <code><a href=#the-fieldset-element>fieldset</a></code>, which has to be a <code><a href=#the-legend-element>legend</a></code>
33359 <code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute with the value <code title=attr-input-type-checkbox><a href=#checkbox-state>checkbox</a></code>:</p>
33381 (<code><a href=#the-input-element>input</a></code> elements with their <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute set to <code title=attr-input-type-tel><a href=#telephone-state>tel</a></code>) and e-mail addresses
33382 (<code><a href=#the-input-element>input</a></code> elements with their <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute set to <code title=attr-input-type-email><a href=#e-mail-state>email</a></code>):</p>
33403 <p>We can use an <code><a href=#the-input-element>input</a></code> element with its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute set to <code title=attr-input-type-time><a href=#time-state>time</a></code> to ask for a delivery
33406 particular interest are <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
33407 <code title=attr-input-max><a href=#attr-input-max>max</a></code>, and <code title=attr-input-step><a href=#attr-input-step>step</a></code>. These set the minimum time, the
33433 <p>The <code><a href=#the-textarea-element>textarea</a></code> element can be used to provide a
33459 <code><a href=#the-button-element>button</a></code> element:</p>
33491 accept submissions using the <code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code>
33522 method used, the <code title=attr-fs-method><a href=#attr-fs-method>method</a></code>
33523 attribute is specified on the <code><a href=#the-form-element>form</a></code> element. This
33525 that, you use the <code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code>
33526 attribute. You also have to specify the <a href=#url>URL</a> of the
33527 service that will handle the submitted data, using the <code title=attr-fs-action><a href=#attr-fs-action>action</a></code> attribute.</p>
33532 attribute (<code title=attr-fe-name><a href=#attr-fe-name>name</a></code>) also specifies
33535 <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute.</p>
33541 values with the <code title=attr-input-value><a href=#attr-input-value>value</a></code>
33592 <p>The simplest annotation is the <code title=attr-input-required><a href=#attr-input-required>required</a></code> attribute, which can be
33593 specified on <code><a href=#the-input-element>input</a></code> elements to indicate that the form
33624 <code title=attr-fe-maxlength><a href=#attr-fe-maxlength>maxlength</a></code> attribute. By
33625 adding this to the <code><a href=#the-textarea-element>textarea</a></code> element, we can limit users
33661 the usual ones like <a href=#flow-content>flow content</a>, <a href=#phrasing-content>phrasing
33662 content</a>, and <a href=#interactive-content>interactive content</a>.</p>
33666 <a href=#form-owner>form owner</a> and, to expose this, have a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> content attribute with a matching
33667 <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute.</p>
33670 <ul class="brief category-list"><li><code><a href=#the-button-element>button</a></code></li>
33671 <li><code><a href=#the-fieldset-element>fieldset</a></code></li>
33672 <li><code><a href=#the-input-element>input</a></code></li>
33673 <li><code><a href=#the-keygen-element>keygen</a></code></li>
33674 <li><code><a href=#the-label-element>label</a></code></li>
33675 <li><code><a href=#the-meter-element>meter</a></code></li>
33676 <li><code><a href=#the-object-element>object</a></code></li>
33677 <li><code><a href=#the-output-element>output</a></code></li>
33678 <li><code><a href=#the-progress-element>progress</a></code></li>
33679 <li><code><a href=#the-select-element>select</a></code></li>
33680 <li><code><a href=#the-textarea-element>textarea</a></code></li>
33681 </ul><p>The <a href=#form-associated-element title="form-associated element">form-associated
33688 <p>Denotes elements that are listed in the <code title=dom-form-elements><a href=#dom-form-elements><var title="">form</var>.elements</a></code>
33689 and <code title=dom-fieldset-elements><a href=#dom-fieldset-elements><var title="">fieldset</var>.elements</a></code> APIs.</p>
33692 <ul class="brief category-list"><li><code><a href=#the-button-element>button</a></code></li>
33693 <li><code><a href=#the-fieldset-element>fieldset</a></code></li>
33694 <li><code><a href=#the-input-element>input</a></code></li>
33695 <li><code><a href=#the-keygen-element>keygen</a></code></li>
33696 <li><code><a href=#the-object-element>object</a></code></li>
33697 <li><code><a href=#the-output-element>output</a></code></li>
33698 <li><code><a href=#the-select-element>select</a></code></li>
33699 <li><code><a href=#the-textarea-element>textarea</a></code></li>
33706 <p>Denotes elements that can be associated with <code><a href=#the-label-element>label</a></code>
33710 <ul class="brief category-list"><li><code><a href=#the-button-element>button</a></code></li>
33711 <li><code><a href=#the-input-element>input</a></code></li>
33712 <li><code><a href=#the-keygen-element>keygen</a></code></li>
33713 <li><code><a href=#the-meter-element>meter</a></code></li>
33714 <li><code><a href=#the-output-element>output</a></code></li>
33715 <li><code><a href=#the-progress-element>progress</a></code></li>
33716 <li><code><a href=#the-select-element>select</a></code></li>
33717 <li><code><a href=#the-textarea-element>textarea</a></code></li>
33724 <p>Denotes elements that can be used for <a href=#constructing-form-data-set>constructing the form data
33725 set</a> when a <code><a href=#the-form-element>form</a></code> element is <a href=#concept-form-submit title=concept-form-submit>submitted</a>.</p>
33728 <ul class="brief category-list"><li><code><a href=#the-button-element>button</a></code></li>
33729 <li><code><a href=#the-input-element>input</a></code></li>
33730 <li><code><a href=#the-keygen-element>keygen</a></code></li>
33731 <li><code><a href=#the-object-element>object</a></code></li>
33732 <li><code><a href=#the-select-element>select</a></code></li>
33733 <li><code><a href=#the-textarea-element>textarea</a></code></li>
33740 <p>Denotes elements that can be affected when a <code><a href=#the-form-element>form</a></code>
33741 element is <a href=#concept-form-reset title=concept-form-reset>reset</a>.</p>
33744 <ul class="brief category-list"><li><code><a href=#the-input-element>input</a></code></li>
33745 <li><code><a href=#the-keygen-element>keygen</a></code></li>
33746 <li><code><a href=#the-output-element>output</a></code></li>
33747 <li><code><a href=#the-select-element>select</a></code></li>
33748 <li><code><a href=#the-textarea-element>textarea</a></code></li>
33751 </dl><p>In addition, some <a href=#category-submit title=category-submit>submittable
33755 <p class=note>The <code><a href=#the-object-element>object</a></code> element is also a
33756 <a href=#form-associated-element>form-associated element</a> and can, with the use of a
33757 suitable <a href=#plugin>plugin</a>, partake in <a href=#form-submission>form
33764 <dd><a href=#flow-content>Flow content</a>.</dd>
33766 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
33768 <dd><a href=#flow-content>Flow content</a>, but with no <code><a href=#the-form-element>form</a></code> element descendants.</dd>
33770 <dd><a href=#global-attributes>Global attributes</a></dd>
33771 <dd><code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code></dd>
33772 <dd><code title=attr-fs-action><a href=#attr-fs-action>action</a></code></dd>
33773 <dd><code title=attr-form-autocomplete><a href=#attr-form-autocomplete>autocomplete</a></code></dd>
33774 <dd><code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code></dd>
33775 <dd><code title=attr-fs-method><a href=#attr-fs-method>method</a></code></dd>
33776 <dd><code title=attr-form-name><a href=#attr-form-name>name</a></code></dd>
33777 <dd><code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code></dd>
33778 <dd><code title=attr-fs-target><a href=#attr-fs-target>target</a></code></dd>
33782 interface <dfn id=htmlformelement>HTMLFormElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
33783 attribute DOMString <a href=#dom-form-acceptcharset title=dom-form-acceptCharset>acceptCharset</a>;
33784 attribute DOMString <a href=#dom-fs-action title=dom-fs-action>action</a>;
33785 attribute DOMString <a href=#dom-form-autocomplete title=dom-form-autocomplete>autocomplete</a>;
33786 attribute DOMString <a href=#dom-fs-enctype title=dom-fs-enctype>enctype</a>;
33787 attribute DOMString <a href=#dom-fs-method title=dom-fs-method>method</a>;
33788 attribute DOMString <a href=#dom-form-name title=dom-form-name>name</a>;
33789 attribute boolean <a href=#dom-fs-novalidate title=dom-fs-noValidate>noValidate</a>;
33790 attribute DOMString <a href=#dom-fs-target title=dom-fs-target>target</a>;
33792 readonly attribute <a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a> <a href=#dom-form-elements title=dom-form-elements>elements</a>;
33793 readonly attribute long <a href=#dom-form-length title=dom-form-length>length</a>;
33794 caller getter any <a href=#dom-form-item title=dom-form-item>item</a>(in unsigned long index);
33795 caller getter any <a href=#dom-form-nameditem title=dom-form-namedItem>namedItem</a>(in DOMString name);
33797 void <a href=#dom-form-submit title=dom-form-submit>submit</a>();
33798 void <a href=#dom-form-reset title=dom-form-reset>reset</a>();
33799 boolean <a href=#dom-form-checkvalidity title=dom-form-checkValidity>checkValidity</a>();
33801 void <a href=#dom-form-dispatchforminput title=dom-form-dispatchFormInput>dispatchFormInput</a>();
33802 void <a href=#dom-form-dispatchformchange title=dom-form-dispatchFormChange>dispatchFormChange</a>();
33805 </dl><p>The <code><a href=#the-form-element>form</a></code> element <a href=#represents>represents</a> a
33806 collection of <a href=#form-associated-element title="form-associated element">form-associated
33812 submission. If specified, the value must be an <a href=#ordered-set-of-unique-space-separated-tokens>ordered set of
33814 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the <a href=#preferred-mime-name>preferred
33815 MIME name</a> of an <a href=#ascii-compatible-character-encoding>ASCII-compatible character
33816 encoding</a>. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
33819 represents the <code><a href=#the-form-element>form</a></code>'s name within the <code title=dom-document-forms><a href=#dom-document-forms>forms</a></code> collection. The value must
33821 <code><a href=#the-form-element>form</a></code> elements in the <code title=dom-document-forms><a href=#dom-document-forms>forms</a></code> collection that it is in, if
33825 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The attribute has
33831 default</i> is the <a href=#attr-form-autocomplete-on-state title=attr-form-autocomplete-on-state>on</a> state. The <a href=#attr-form-autocomplete-off-state title=attr-form-autocomplete-off-state>off</a> state indicates
33832 that by default, <code><a href=#the-input-element>input</a></code> elements in the form will have
33833 their <a href=#resulting-autocompletion-state>resulting autocompletion state</a> set to <i title="">off</i>; the <a href=#attr-form-autocomplete-on-state title=attr-form-autocomplete-on-state>on</a> state indicates
33834 that by default, <code><a href
33835 their <a href=#resulting-autocompletion-state>resulting autocompletion state</a> set to <i title="">on</i>.</p>
33837 <p>The <code title=attr-fs-action><a href=#attr-fs-action>action</a></code>, <code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code>, <code title=attr-fs-method><a href=#attr-fs-method>method</a></code>, <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code>, and <code title=attr-fs-target><a href=#attr-fs-target>target</a></code> attributes are <a href=#attributes-for-form-submission>attributes
33840 <dl class=domintro><dt><var title="">form</var> . <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code></dt>
33844 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the form controls in
33849 <dt><var title="">form</var> . <code title=dom-form-length><a href=#dom-form-length>length</a></code></dt>
33858 <dt><var title="">element</var> = <var title="">form</var> . <code title=dom-form-item><a href=#dom-form-item>item</a></code>(<var title="">index</var>)</dt>
33869 <dt><var title="">element</var> = <var title="">form</var> . <code title=dom-form-namedItem><a href=#dom-form-nameditem>namedItem</a></code>(<var title="">name</var>)</dt>
33875 <p>Returns the form control in the form with the given ID or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> (excluding image buttons for
33880 element in this method, even if the element's actual ID or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> changes, for as long as the
33881 element remains in the <code><a href=#document>Document</a></code>.</p>
33884 <code><a href=#nodelist>NodeList</a></code> object containing all those elements is
33887 <p>Returns null if no element with that <a href=#concept-id title=concept-id>ID</a> or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> could be found.</p>
33891 <dt><var title="">form</var> . <code title=dom-form-submit><a href=#dom-form-submit>submit</a></code>()</dt>
33899 <dt><var title="">form</var> . <code title=dom-form-reset><a href=#dom-form-reset>reset</a></code>()</dt>
33907 <dt><var title="">form</var> . <code title=dom-form-checkValidity><a href=#dom-form-checkvalidity>checkValidity</a></code>()</dt>
33916 <dt><var title="">form</var> . <code title=dom-form-dispatchFormInput><a href=#dom-form-dispatchforminput>dispatchFormInput</a></code>()</dt>
33924 <dt><var title="">form</var> . <code title=dom-form-dispatchFormChange><a href=#dom-form-dispatchformchange>dispatchFormChange</a></code>()</dt>
33936 must <a href=#reflect>reflect</a> the respective content attributes of the
33940 attribute must <a href=#reflect>reflect</a> the <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code> content
33944 IDL attribute must return an <code><a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a></code>
33945 rooted at the <code><a href=#document>Document</a></code> node, whose filter matches <a href=#category-listed title=category-listed>listed elements</a> whose <a href=#form-owner>form
33946 owner</a> is the <code><a href=#the-form-element>form</a></code> element, with the exception of
33947 <code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, which must,
33952 attribute must return the number of nodes <a href=#represented-by-the-collection title="represented
33953 by the collection">represented</a> by the <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> collection.</p>
33958 <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> attribute at that
33962 returned by the method of the same name on the <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> collection, when invoked
33965 <p>Each <code><a href=#the-form-element>form</a></code> element has a mapping of names to elements
33971 <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> attribute, and the
33972 names currently in the <a href=#past-names-map>past names map</a>.</p>
33981 <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> attribute, then
33985 by the <code title=dom-HTMLFormControlsCollection-namedItem><a href=#dom-htmlformcontrolscollection-nameditem>namedItem()</a></code>
33986 method on the object returned by the <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> attribute when passed
33990 mapping from <var title="">name</var> to <var title="">candidate</var> in the <code><a href=#the-form-element>form</a></code> element's
33991 <a href=#past-names-map>past names map</a>, replacing the previous entry with
34000 the entries in the <code><a href=#the-form-element>form</a></code> element's <a href=#past-names-map>past names
34003 </ol><p>If an element listed in the <code><a href=#the-form-element>form</a></code> element's <a href=#past-names-map>past
34004 names map</a> is removed from the <code><a href=#document>Document</a></code>, then its
34030 method, when invoked, must <a href=#concept-form-submit title=concept-form-submit>submit</a> the <code><a href=#the-form-element>form</a></code>
34031 element from the <code><a href=#the-form-element>form</a></code> element itself, with the <var title="">scripted-submit</var> flag set.</p>
34036 <ol><li><p>If the <code><a href=#the-form-element>form</a></code> element is marked as <i><a href=#locked-for-reset>locked for
34039 <li><p>Mark the <code><a href=#the-form-element>form</a></code> element as <dfn id=locked-for-reset>locked for
34042 <li><p><a href=#concept-form-reset title=concept-form-reset>Reset</a> the
34043 <code><a href=#the-form-element>form</a></code> element.</li>
34045 <li><p>Unmark the <code><a href=#the-form-element>form</a></code> element as <i><a href=#locked-for-reset>locked for
34049 method is invoked, the user agent must <a href=#statically-validate-the-constraints>statically validate the
34050 constraints</a> of the <code><a href=#the-form-element>form</a></code> element, and return true
34055 method is invoked, the user agent must <a href=#broadcast-forminput-events>broadcast <code title=event-forminput>forminput</code> events</a> from the
34056 <code><a href=#the-form-element>form</a></code> element.</p>
34059 method is invoked, the user agent must <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> from the
34060 <code><a href=#the-form-element>form</a></code> element.</p>
34083 <dd><a href=#flow-content>Flow content</a>.</dd>
34084 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
34085 <dd><a href=#category-listed title=category-listed>Listed</a> <a href=#form-associated-element>form-associated element</a>.</dd>
34087 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
34089 <dd>Optionally a <code><a href=#the-legend-element>legend</a></code> element, followed by <a href=#flow-content>flow content</a>.</dd>
34091 <dd><a href=#global-attributes>Global attributes</a></dd>
34092 <dd><code title=attr-fieldset-disabled><a href=#attr-fieldset-disabled>disabled</a></code></dd>
34093 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
34094 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
34097 <pre class=idl>interface <dfn id=htmlfieldsetelement>HTMLFieldSetElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
34098 attribute boolean <a href=#dom-fieldset-disabled title=dom-fieldset-disabled>disabled</a>;
34099 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
34100 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
34102 readonly attribute DOMString <a href=#dom-fieldset-type title=dom-fieldset-type>type</a>;
34104 readonly attribute <a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a> <a href=#dom-fieldset-elements title=dom-fieldset-elements>elements</a>;
34106 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
34107 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
34108 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
34109 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
34110 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
34113 </dl><p>The <code><a href=#the-fieldset-element>fieldset</a></code> element <a href=#represents>represents</a> a set
34116 <p>The name of the group is given by the first <code><a href=#the-legend-element>legend</a></code>
34117 element that is a child of the <code><a href=#the-fieldset-element>fieldset</a></code> element, if
34122 of the <code><a href=#the-fieldset-element>fieldset</a></code> element, excluding those that are
34123 descendants of the <code><a href=#the-fieldset-element>fieldset</a></code> element's first
34124 <code><a hrefhref=#concept-fe-disabled title=concept-fe-disabled>disabled</a>.</p>
34126 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
34127 explicitly associate the <code><a href=#the-fieldset-element>fieldset</a></code> element with its
34128 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
34131 <dl class=domintro><dt><var title="">fieldset</var> . <code title=dom-fieldset-type><a href=#dom-fieldset-type>type</a></code></dt>
34139 <dt><var title="">fieldset</var> . <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code></dt>
34143 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the form controls in
34151 attribute must <a href=#reflect>reflect</a> the content attribute of the
34158 attribute must return an <code><a href=#htmlformcontrolscollection>HTMLFormControlsCollection</a></code>
34159 rooted at the <code><a href=#the-fieldset-element>fieldset</a></code> element, whose filter matches
34160 <a href=#category-listed title=category-listed>listed elements</a>.</p>
34162 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
34163 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
34164 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
34165 <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
34168 <p><strong>Constraint validation</strong>: <code><a href=#the-fieldset-element>fieldset</a></code>
34169 elements are always <a href=#barred-from-constraint-validation>barred from constraint
34199 <dd>As the first child of a <code><a href=#the-fieldset-element>fieldset</a></code> element.</dd>
34201 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
34203 <dd><a href=#global-attributes>Global attributes</a></dd>
34206 <pre class=idl>interface <dfn id=htmllegendelement>HTMLLegendElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
34207 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-legend-form title=dom-legend-form>form</a>;
34210 </dl><p>The <code><a href=#the-legend-element>legend</a></code> element <a href=#represents>represents</a> a caption
34211 for the rest of the contents of the <code><a href=#the-legend-element>legend</a></code> element's
34212 parent <code><a href=#the-fieldset-element>fieldset</a></code> element<span class=impl>, if
34215 <dl class=domintro><dt><var title="">legend</var> . <code title=dom-legend-form><a href=#dom-legend-form>form</a></code></dt>
34219 <p>Returns the element's <code><a href=#the-form-element>form</a></code> element, if any, or
34227 attribute's behavior depends on whether the <code><a href=#the-legend-element>legend</a></code>
34228 element is in a <code><a href=#the-fieldset-element>fieldset</a></code> element or not. If the
34229 <code><a href=#the-legend-element>legend</a></code> has a <code><a href=#the-fieldset-element>fieldset</a></code> element as its
34230 parent, then the <code title=dom-legend-form><a href=#dom-legend-form>form</a></code> IDL
34231 attribute must return the same value as the <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute on that
34232 <code><a href=#the-fieldset-element>fieldset</a></code> element. Otherwise, it must return null.</p>
34241 <dd><a href=#flow-content>Flow content</a>.</dd>
34242 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
34243 <dd><a href=#interactive-content>Interactive content</a>.</dd>
34244 <dd><a href=#form-associated-element>Form-associated element</a>.</dd>
34246 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
34248 <dd><a href=#phrasing-content>Phrasing content</a>, but with no descendant <a href=#category-label title=category-label>labelable form-associated elements</a> unless it is the element's <a href=#labeled-control>labeled control</a>, and no descendant <code><a href=#the-label-element>label</a></code> elements.</dd>
34250 <dd><a href=#global-attributes>Global attributes</a></dd>
34251 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
34252 <dd><code title=attr-label-for><a href=#attr-label-for>for</a></code></dd>
34255 <pre class=idl>interface <dfn id=htmllabelelement>HTMLLabelElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
34256 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
34257 attribute DOMString <a href=#dom-label-htmlfor title=dom-label-htmlFor>htmlFor</a>;
34258 readonly attribute <a href=#htmlelement>HTMLElement</a> <a href=#dom-label-control title=dom-label-control>control</a>;
34261 </dl><p>The <code><a href=#the-label-element>label</a></code> <a href=#represents>represents</a> a caption in a
34263 control<span class=impl>, known as the <code><a href=#the-label-element>label</a></code>
34264 element's <dfn id=labeled-control>labeled control</dfn></span>, either using <code title=attr-label-for><a href=#attr-label-for>for</a></code> attribute, or by putting the form
34265 control inside the <code><a href=#the-label-element>label</a></code> element itself.</p>
34270 <code><a href=#the-label-element>label</a></code> element has no <a href=#labeled-control>labeled control</a>.</p>
34277 value must be the ID of a <a href=#category-label title=category-label>labelable
34278 form-associated element</a> in the same <code><a href=#document>Document</a></code> as
34279 the <code><a href=#the-label-element>label</a></code> element. <span class=impl>If the attribute
34280 is specified and there is an element in the <code><a href=#document>Document</a></code>
34281 whose ID is equal to the value of the <code title=attr-label-for><a href=#attr-label-for>for</a></code> attribute, and the first such
34282 element is a <a href=#category-label title=category-label>labelable form-associated
34283 element</a>, then that element is the <code><a href=#the-label-element>label</a></code>
34284 element's <a href=#labeled-control>labeled control</a>.</span></p>
34288 <p>If the <code title=attr-label-for><a href=#attr-label-for>for</a></code> attribute is not
34289 specified, but the <code><a href=#the-label-element>label</a></code> element has a <a href=#category-label title=category-label>labelable form-associated element</a>
34290 descendant, then the first such descendant in <a href=#tree-order>tree
34291 order</a> is the <code><a href=#the-label-element>label</a></code> element's <a href=#labeled-control>labeled
34294 <p>The <code><a href=#the-label-element>label</a></code> element's exact default presentation and
34295 behavior, in particular what its <a href=#activation-behavior>activation behavior</a>
34307 the checkbox, clicking the <code><a href=#the-label-element>label</a></code> in the following
34308 snippet could trigger the user agent to <a href=#run-synthetic-click-activation-steps>run synthetic click
34309 activation steps</a> on the <code><a href=#the-input-element>input</a></code> element, as if
34321 <dl class=domintro><dt><var title="">label</var> . <code title=dom-label-control><a href=#dom-label-control>control</a></code></dt>
34329 </dl><p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
34330 explicitly associate the <code><a href=#the-label-element>label</a></code> element with its
34331 <a href=#form-owner>form owner</a>.</p>
34336 attribute must <a href=#reflect>reflect</a> the <code title=attr-label-for><a href=#attr-label-for>for</a></code> content attribute.</p>
34339 attribute must return the <code><a href=#the-label-element>label</a></code> element's <a href=#labeled-control>labeled
34344 <hr><dl class=domintro><dt><var title="">control</var> . <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code></dt>
34348 <p>Returns a <code><a href=#nodelist>NodeList</a></code> of all the <code><a href=#the-label-element>label</a></code>
34355 <p><a href=#category-label title=category-label>Labelable form-associated
34356 elements</a> have a <code><a href=#nodelist>NodeList</a></code> object associated with
34357 them that represents the list of <code><a href=#the-label-element>label</a></code> elements, in
34358 <a href=#tree-order>tree order</a>, whose <a href=#labeled-control>labeled control</a> is the
34360 <a href=#category-label title=category-label>labelable form-associated
34361 elements</a>, on getting, must return that <code><a href=#nodelist>NodeList</a></code>
34364 <p>The <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute is part
34385 <dd><a href=#flow-content>Flow content</a>.</dd>
34386 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
34387 <dd>If the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is <em>not</em> in the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state: <a href=#interactive-content>Interactive content</a>.</dd>
34388 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-label title=category-label>labelable</a>, <a href=#category-submit title=category-submit>submittable</a>, and <a href=#category-reset title=category-reset>resettable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
34390 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
34394 <dd><a href=#global-attributes>Global attributes</a></dd>
34395 <dd><code title=attr-input-accept><a href=#attr-input-accept>accept</a></code></dd>
34396 <dd><code title=attr-input-alt><a href=#attr-input-alt>alt</a></code></dd>
34397 <dd><code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code></dd>
34398 <dd><code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code></dd>
34399 <dd><code title=attr-input-checked><a href=#attr-input-checked>checked</a></code></dd>
34400 <dd><code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code></dd>
34401 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
34402 <dd><code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code></dd>
34403 <dd><code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code></dd>
34404 <dd><code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code></dd>
34405 <dd><code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code></dd>
34406 <dd><code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code></dd>
34407 <dd><code title=attr-dim-height><a href=#attr-dim-height>height</a></code></dd>
34408 <dd><code title=attr-input-list><a href=#attr-input-list>list</a></code></dd>
34409 <dd><code title=attr-input-max><a href=#attr-input-max>max</a></code></dd>
34410 <dd><code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code></dd>
34411 <dd><code title=attr-input-min><a href=#attr-input-min>min</a></code></dd>
34412 <dd><code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code></dd>
34413 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
34414 <dd><code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code></dd>
34415 <dd><code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code></dd>
34416 <dd><code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code></dd>
34417 href=#attr-input-required>required</a></code></dd>
34418 <dd><code title=attr-input-size><a href=#attr-input-size>size</a></code></dd>
34419 <dd><code title=attr-input-src><a href=#attr-input-src>src</a></code></dd>
34420 <dd><code title=attr-input-step><a href=#attr-input-step>step</a></code></dd>
34421 <dd><code title=attr-input-type><a href=#attr-input-type>type</a></code></dd>
34422 <dd><code title=attr-input-value><a href=#attr-input-value>value</a></code></dd>
34423 <dd><code title=attr-dim-width><a href=#attr-dim-width>width</a></code></dd>
34426 <pre class=idl>interface <dfn id=htmlinputelement>HTMLInputElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
34427 attribute DOMString <a href=#dom-input-accept title=dom-input-accept>accept</a>;
34428 attribute DOMString <a href=#dom-input-alt title=dom-input-alt>alt</a>;
34429 attribute DOMString <a href=#dom-input-autocomplete title=dom-input-autocomplete>autocomplete</a>;
34430 attribute boolean <a href=#dom-fe-autofocus title=dom-fe-autofocus>autofocus</a>;
34431 attribute boolean <a href=#dom-input-defaultchecked title=dom-input-defaultChecked>defaultChecked</a>;
34432 attribute boolean <a href=#dom-input-checked title=dom-input-checked>checked</a>;
34433 attribute boolean <a href=#dom-fe-disabled title=dom-fe-disabled>disabled</a>;
34434 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
34435 readonly attribute <span>FileList</span> <a href=#dom-input-files title=dom-input-files>files</a>;
34436 attribute DOMString <a href=#dom-fs-formaction title=dom-fs-formAction>formAction</a>;
34437 attribute DOMString <a href=#dom-fs-formenctype title=dom-fs-formEnctype>formEnctype</a>;
34438 attribute DOMString <a href=#dom-fs-formmethod title=dom-fs-formMethod>formMethod</a>;
34439 attribute boolean <a href=#dom-fs-formnovalidate title=dom-fs-formNoValidate>formNoValidate</a>;
34440 attribute DOMString <a href=#dom-fs-formtarget title=dom-fs-formTarget>formTarget</a>;
34441 attribute DOMString <a href=#dom-dim-height title=dom-dim-height>height</a>;
34442 attribute boolean <a href=#dom-input-indeterminate title=dom-input-indeterminate>indeterminate</a>;
34443 readonly attribute <a href=#htmlelement>HTMLElement</a> <a href=#dom-input-list title=dom-input-list>list</a>;
34444 attribute DOMString <a href=#dom-input-max title=dom-input-max>max</a>;
34445 attribute long <a href=#dom-input-maxlength title=dom-input-maxLength>maxLength</a>;
34446 attribute DOMString <a href=#dom-input-min title=dom-input-min>min</a>;
34447 attribute boolean <a href=#dom-input-multiple title=dom-input-multiple>multiple</a>;
34448 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
34449 attribute DOMString <a href=#dom-input-pattern title=dom-input-pattern>pattern</a>;
34450 attribute DOMString <a href=#dom-input-placeholder title=dom-input-placeholder>placeholder</a>;
34451 attribute boolean <a href=#dom-input-readonly title=dom-input-readOnly>readOnly</a>;
34452 attribute boolean <a href=#dom-input-required title=dom-input-required>required</a>;
34453 attribute unsigned long <a href=#dom-input-size title=dom-input-size>size</a>;
34454 attribute DOMString <a href=#dom-input-src title=dom-input-src>src</a>;
34455 attribute DOMString <a href=#dom-input-step title=dom-input-step>step</a>;
34456 attribute DOMString <a href=#dom-input-type title=dom-input-type>type</a>;
34457 attribute DOMString <a href=#dom-input-defaultvalue title=dom-input-defaultValue>defaultValue</a>;
34458 attribute DOMString <a href=#dom-input-value title=dom-input-value>value</a>;
34459 attribute <span>Date</span> <a href=#dom-input-valueasdate title=dom-input-valueAsDate>valueAsDate</a>;
34460 attribute double <a href=#dom-input-valueasnumber title=dom-input-valueAsNumber>valueAsNumber</a>;
34461 readonly attribute <a href=#htmloptionelement>HTMLOptionElement</a> <a href=#dom-input-selectedoption title=dom-input-selectedOption>selectedOption</a>;
34462 attribute DOMString <a href=#dom-dim-width title=dom-dim-width>width</a>;
34464 void <a href=#dom-input-stepup title=dom-input-stepUp>stepUp</a>(in optional long n);
34465 void <a href=#dom-input-stepdown title=dom-input-stepDown>stepDown</a>(in optional long n);
34467 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
34468 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
34469 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
34470 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
34471 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
34473 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
34475 void <a href=#dom-textarea/input-select title=dom-textarea/input-select>select</a>();
34476 attribute unsigned long <a href=#dom-textarea/input-selectionstart title=dom-textarea/input-selectionStart>selectionStart</a>;
34477 attribute unsigned long <a href=#dom-textarea/input-selectionend title=dom-textarea/input-selectionEnd>selectionEnd</a>;
34478 void <a href=#dom-textarea/input-setselectionrange title=dom-textarea/input-setSelectionRange>setSelectionRange</a>(in unsigned long start, in unsigned long end);
34481 </dl><p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a typed data field,
34486 element. It is an <a href=#enumerated-attribute>enumerated attribute</a>. The following
34496 <td> <a href=#hidden-state title=attr-input-type-hidden>Hidden</a>
34500 <td> <a href=#text-state-and-search-state title=attr-input-type-text>Text</a>
34504 <td> <a href=#text-state-and-search-state title=attr-input-type-search>Search</a>
34508 <td> <a href=#telephone-state title=attr-input-type-tel>Telephone</a>
34512 <td> <a href=#url-state title=attr-input-type-url>URL</a>
34516 <td> <a href=#e-mail-state title=attr-input-type-email>E-mail</a>
34520 <td> <a href=#password-state title=attr-input-type-password>Password</a>
34524 <td> <a href=#date-and-time-state title=attr-input-type-datetime>Date and Time</a>
34528 <td> <a href=#date-state title=attr-input-type-date>Date</a>
34532 <td> <a href=#month-state title=attr-input-type-month>Month</a>
34536 <td> <a href=#week-state title=attr-input-type-week>Week</a>
34540 <td> <a href=#time-state title=attr-input-type-time>Time</a>
34544 <td> <a href=#local-date-and-time-state title=attr-input-type-datetime-local>Local Date and Time</a>
34548 <td> <a href=#number-state title=attr-input-type-number>Number</a>
34552 <td> <a href=#range-state title=attr-input-type-range>Range</a>
34556 <td> <a href=#color-state title=attr-input-type-color>Color</a>
34560 <td> <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a>
34564 <td> <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a>
34568 <td> <a href=#file-upload-state title=attr-input-type-file>File Upload</a>
34569 <td> Zero or more files each with a <a href=#mime-type>MIME type</a> and optionally a file name
34572 <td> <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>
34576 <td> <a href=#image-button-state title=attr-input-type-image>Image Button</a>
34580 <td> <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>
34584 <td> <a href=#button-state title=attr-input-type-button>Button</a>
34587 </table><p>The <i>missing value default</i> is the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state.</p>
34589 <p>Which of the <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>, <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code>, <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>, <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>, <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>, <code title=attr-dim-height><a href=#attr-dim-height>height</a></code>, <code title=attr-input-list><a href=#attr-input-list>list</a></code>, <code title=attr-input-max><a href=#attr-input-max>max</a></code>, <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>, <code title=attr-input-min><a href=#attr-input-min>min</a></code>, <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>, <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>, <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>, <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>, <code title=attr-input-required><a href=#attr-input-required>required</a></code>, <code title=attr-input-size><a href=#attr-input-size>size</a></code>, <code title=attr-input-src><a href=#attr-input-src>src</a></code>, <code title=attr-input-step><a href=#attr-input-step>step</a></code>, and <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> content attributes, the <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code>, <code title=dom-input-files><a href=#dom-input-files>files</a></code>, <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, <code title=dom-input-list><a href=#dom-input-list>list</a></code>, and <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL
34590 attributes, the <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> method, the <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code> and
34591 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>
34592 IDL attributes, the <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
34593 method, the <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> and
34594 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods, and the
34595 <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply to an
34596 <code><a href=#the-input-element>input</a></code> element depends on the state of its <code title=attr-input-type><a href
34602 <th> <span title=""><a href=#hidden-state title=attr-input-type-hidden>Hidden</a></span>
34603 <th> <span title=""><a href=#text-state-and-search-state title=attr-input-type-text>Text</a>,</span>
34604 <span title=""><a href=#text-state-and-search-state title=attr-input-type-search>Search</a>,</span>
34605 <span title=""><a href=#url-state title=attr-input-type-url>URL</a>,</span>
34606 <span title=""><a href=#telephone-state title=attr-input-type-tel>Telephone</a></span>
34607 <th> <span title=""><a href=#e-mail-state title=attr-input-type-email>E-mail</a></span>
34608 <th> <span title=""><a href=#password-state title=attr-input-type-password>Password</a></span>
34609 <th> <span title=""><a href=#date-and-time-state title=attr-input-type-datetime>Date and Time</a>,</span>
34610 <span title=""><a href=#date-state title=attr-input-type-date>Date</a>,</span>
34611 <span title=""><a href=#month-state title=attr-input-type-month>Month</a>,</span>
34612 <span title=""><a href=#week-state title=attr-input-type-week>Week</a>,</span>
34613 <span title=""><a href=#time-state title=attr-input-type-time>Time</a></span>
34614 <th> <span title=""><a href=#local-date-and-time-state title=attr-input-type-datetime-local>Local Date and Time</a>,</span>
34615 <span title=""><a href=#number-state title=attr-input-type-number>Number</a></span>
34616 <th> <span title=""><a href=#range-state title=attr-input-type-range>Range</a></span>
34617 <th> <span title=""><a href=#color-state title=attr-input-type-color>Color</a></span>
34618 <th> <span title=""><a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a>,</span>
34619 <span title=""><a href=#radio-button-state title=attr-input-type-radio>Radio Button</a></span>
34620 <th> <span title=""><a href=#file-upload-state title=attr-input-type-file>File Upload</a></span>
34621 <th> <span title=""><a href=#submit-button-state title=attr-input-type-submit>Submit Button</a></span>
34622 <th> <span title=""><a href=#image-button-state title=attr-input-type-image>Image Button</a></span>
34623 <th> <span title=""><a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>,</span>
34624 <span title=""><a href=#button-state title=attr-input-type-button>Button</a></span>
34628 <tr><th> <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>
34652 <tr><th> <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code>
34676 <tr><th> <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>
34700 <tr><th> <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>
34724 <tr><th> <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>
34748 <tr><th> <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>
34772 <tr><th> <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>
34796 <tr><th> <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>
34820 <tr><th> <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>
34844 <tr><th> <code title=attr-dim-height><a href=#attr-dim-height>height</a></code>
34868 <tr><th> <code title=attr-input-list><a href=#attr-input-list>list</a></code>
34892 <tr><th> <code title=attr-input-max><a href=#attr-input-max>max</a></code>
34916 <tr><th> <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>
34940 <tr><th> <code title=attr-input-min><a href=#attr-input-min>min</a></code>
34964 <tr><th> <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>
34988 <tr><th> <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>
35012 <tr><th> <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>
35036 <tr><th> <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>
35060 <tr><th> <code title=attr-input-required><a href=#attr-input-required>required</a></code>
35084 <tr><th> <code title=attr-input-size><a href=#attr-input-size>size</a></code>
35108 <tr><th> <code title=attr-input-src><a href=#attr-input-src>src</a></code>
35132 <tr><th> <code title=attr-input-step><a href=#attr-input-step>step</a></code>
35156 <tr><th> <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>
35182 <tr><th> <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code>
35206 <tr><th> <code title=dom-input-files><a href=#dom-input-files>files</a></code>
35230 <tr class=impl><th> <code title=dom-input-value><a href=#dom-input-value>value</a></code>
35231 <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Hidden -->
35232 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Text -->
35235 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- E-mail -->
35236 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Password -->
35237 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Date and Time -->
35242 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Local Date and Time -->
35244 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Range -->
35245 <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Color -->
35246 <td class=yes> <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a> <!-- Checkbox -->
35248 <td class=yes> <a href=#dom-input-value-filename title=dom-input-value-filename>filename</a> <!-- File Upload -->
35249 <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Submit Button -->
35250 <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Image Button -->
35251 href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Reset Button -->
35254 <tr><th> <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>
35278 <tr><th> <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>
35302 <tr><th> <code title=dom-input-list><a href=#dom-input-list>list</a></code>
35326 <tr><th> <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>
35350 <tr><th> <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>
35374 <tr><th> <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>
35398 <tr><th> <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>
35422 <tr><th> <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
35446 <tr><th> <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>
35470 <tr><th> <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>
35496 <tr><th> <span title=""><code title=event-input-input><a href=#event-input-input>input</a></code> event</span>
35520 <tr><th> <span title=""><code title=event-input-change><a href=#event-input-change>change</a></code> event</span>
35546 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute changes state, and
35550 <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's new state,
35553 <p>Each <code><a href=#the-input-element>input</a></code> element has a <a href=#concept-fe-value title=concept-fe-value>value</a>, which is exposed by the <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute. Some states
35559 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
35560 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
35561 <code title=attr-input-step><a href=#attr-input-step>step</a></code>,
35562 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
35563 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>,
35564 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
35565 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>.</p>
35567 <p>Each <code><a href=#the-input-element>input</a></code> element has a boolean <dfn id=concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value flag</dfn>. When
35569 <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value flag</a>
35572 that changes the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35577 content attribute gives the default <a href=#concept-fe-value title=concept-fe-value>value</a> of the <code><a href=#the-input-element>input</a></code>
35578 element. <span class=impl>When the <code title=attr-input-value><a href=#attr-input-value>value</a></code> content attribute is added,
35579 set, or removed, if the control does not have a <i title=concept-input-value-dirty><a href=#concept-input-value-dirty>dirty value</a></i>, the user agent
35580 must set the <a href=#concept-fe-value title=concept-fe-value>value</a> of the
35581 element to the value of the <code title=attr-input-value><a href=#attr-input-value>value</a></code> content attribute, if there is
35583 <a href=#value-sanitization-algorithm>value sanitization algorithm</a>, if one is
35588 <p>Each <code><a href=#the-input-element>input</a></code> element has a <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>, which is exposed by
35589 the <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> IDL
35592 <p>Each <code><a href=#the-input-element>input</a></code> element has a boolean <dfn id=concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
35594 checkedness</i></dfn>. The <a href=#concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
35597 the control in a way that changes the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>.</p>
35602 content attribute is a <a href=#boolean-attribute>boolean attribute</a> that gives the
35603 default <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the
35604 <code><a href=#the-input-element>input</a></code> element. <span class=impl>When the <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code> content attribute is
35605 added, if the control does not have <i title=concept-input-checked-dirty><a href=#concept-input-checked-dirty>dirty checkedness</a></i>, the user
35606 agent must set the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the element to
35607 true; when the <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>
35608 content attribute is removed, if the control does not have <i title=concept-input-checked-dirty><a href=#concept-input-checked-dirty>dirty checkedness</a></i>, the user
35609 agent must set the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the element to
35614 <p>The <a href=#concept-form-reset-control title=concept-form-reset-control>reset
35615 algorithm</a> for <code><a href=#the-input-element>input</a></code> elements is to set the <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value flag</a> and
35616 <a href=#concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
35617 flag</a> back to false, set the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element to the value of
35618 the <code title=attr-input-value><a href=#attr-input-value>value</a></code> content attribute,
35619 if there is one, or the empty string otherwise, set the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the element to true
35620 if the element has a <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>
35622 <a href=#value-sanitization-algorithm>value sanitization algorithm</a>, if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state
35625 <p>Each <code><a href=#the-input-element>input</a></code> element is either <dfn id=concept-input-mutable title=concept-input-mutable><i>mutable</i></dfn> or <dfn id=concept-input-immutable title=concept-input-immutable><i>immutable</i></dfn>. Except where
35626 otherwise specified, an <code><a href=#the-input-element>input</a></code> element is always <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>. Similarly, except where
35628 modify the element's <a href=#concept-fe-value title=concept-fe-value>value</a> or
35629 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>.</p>
35631 <p>When an <code><a href=#the-input-element>input</a></code> element is <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, it is <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i>.</p>
35633 <p>When an <code><a href=#the-input-element>input</a></code> element does not have a
35634 <code><a href=#document>Document</a></code> node as one of its ancestors (i.e. when it is
35635 not in the document), it is <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i>.</p> <!-- XBL2 spec
35638 <p class=note>The <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute can also in
35639 some cases (e.g. for the <a href=#date-state title=attr-input-type-date>Date</a> state, but not the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state) make an
35640 <code><a href=#the-input-element>input</a></code> element <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i>.</p>
35642 <p>When an <code><a href=#the-input-element>input</a></code> element is cloned, the element's <a href=#concept-fe-value title=concept-fe-value>value</a>, <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value flag</a>,
35643 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>, and <a href=#concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
35648 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
35649 explicitly associate the <code><a href=#the-input-element>input</a></code> element with its
35650 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
35651 attribute represents the element's name. The <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is used to make
35653 submitted. The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>
35661 value. It has no effect except for changing the appearance of <a href=#checkbox-state title=attr-input-type-checkbox>checkbox</a> controls.</p>
35664 <a href=#reflect>reflect</a> the respective content attributes of the same
35666 attribute must <a href=#reflect>reflect</a> the <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code> content attribute,
35667 <a href=#limited-to-only-non-negative-numbers>limited to only non-negative numbers</a>. The <dfn id=dom-input-readonly title=dom-input-readOnly><code>readOnly</code></dfn> IDL attribute
35668 must <a href=#reflect>reflect</a> the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> content attribute. The
35670 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code> content attribute. The
35672 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-input-value><a href=#attr-input-value>value</a></code> content attribute.</p>
35674 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
35675 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
35676 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
35677 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
35678 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>, <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
35679 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
35680 and <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
35682 <code title=dom-fe-autofocus><a href=#dom-fe-autofocus>autofocus</a></code>, <code title=dom-fe-disabled><a href=#dom-fe-disabled>disabled</a></code>, <code title=dom-fae-form><a href=#dom-fae-form>form</a></code>, and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
35689 <h5 id=states-of-the-type-attribute><span class=secno>4.10.7.1 </span>States of the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute</h5>
35696 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state, the rules in
35701 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a value
35706 <p><strong>Constraint validation</strong>: If an <code><a href=#the-input-element>input</a></code>
35707 element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
35708 the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state, it is
35709 <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
35713 <p>If the <code title=attr-input-value><a href=#attr-input-value>name</a></code> attribute is
35714 present and has a value that is a <a href=#case-sensitive>case-sensitive</a> match
35716 <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute must be
35722 <code title=dom-input-value><a href=#dom-input-value>value</a></code>
35724 in mode <a href=#dom-input-value-default title=dom-input-value-default>default</a>.</p>
35728 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
35729 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
35730 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
35731 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
35732 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
35733 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
35734 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
35735 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
35736 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
35737 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
35738 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
35739 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
35740 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
35741 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
35742 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
35743 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
35744 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
35745 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
35746 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
35747 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
35748 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
35749 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
35750 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
35754 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
35755 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
35756 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
35757 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
35758 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
35759 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
35760 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
35761 href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
35762 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
35763 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
35764 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
35765 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
35767 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> and <code class=no-backref title=event-input-change><a href=#event-input-change>change</a></code> events do not apply.</p>
35780 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state or the <a href=#text-state-and-search-state title=attr-input-type-search>Search</a> state, the rules in
35785 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a one line
35786 plain text edit control for the element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35788 <p class=note>The difference between the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state and the <a href=#text-state-and-search-state title=attr-input-type-search>Search</a> state is primarily
35790 regular text fields, the <a href=#text-state-and-search-state title=attr-input-type-search>Search</a> state might result in
35796 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
35797 its <a href=#concept-fe-value title=concept-fe-value>value</a> should be editable
35800 element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35803 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
35809 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
35810 follows</strong>: <a href=#strip-line-breaks>Strip line breaks</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35816 <p>The following common <code><a href=#the-input-element>input</a></code> element content
35818 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
35819 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
35820 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
35821 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
35822 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
35823 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
35824 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
35825 <code title=attr-input-size><a href=#attr-input-size>size</a></code> content attributes;
35826 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
35827 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
35828 <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
35829 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
35830 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes;
35831 <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
35832 <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
35834 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
35835 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
35837 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
35841 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
35842 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
35843 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
35844 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
35845 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
35846 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
35847 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
35848 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
35849 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
35850 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
35851 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
35852 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
35853 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
35854 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
35855 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
35859 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
35860 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
35861 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
35862 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
35863 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
35864 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
35873 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#telephone-state title=attr-input-type-tel>Telephone</a> state, the rules in
35878 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
35879 for editing a telephone number given in the element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35883 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
35884 its <a href=#concept-fe-value title=concept-fe-value>value</a> should be editable
35885 by the user. User agents may change the punctuation of <a href=#concept-fe-value title=concept-fe-value>values</a> that the user enters. User
35887 U+000D CARRIAGE RETURN (CR) characters into the element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35891 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
35897 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
35898 follows</strong>: <a href=#strip-line-breaks>Strip line breaks</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35902 <p class=note>Unlike the <a href=#url-state title=attr-input-type-url>URL</a> and <a href=#e-mail-state title=attr-input-type-email>E-mail</a> types, the <a href=#telephone-state title=attr-input-type-tel>Telephone</a> type does not enforce a
35906 particular format are encouraged to use the <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> attribute or the <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code> method
35912 <p>The following common <code><a href=#the-input-element>input</a></code> element content
35914 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
35915 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
35916 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
35917 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
35918 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
35919 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
35920 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
35921 <code title=attr-input-size><a href=#attr-input-size>size</a></code> content attributes;
35922 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
35923 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
35924 <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
35925 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
35926 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes;
35927 <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
35928 <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
35930 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
35931 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
35933 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
35937 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
35938 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
35939 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
35940 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
35941 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
35942 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
35943 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
35944 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
35945 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
35946 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
35947 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
35948 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
35949 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
35950 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
35951 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
35955 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
35956 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
35957 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
35958 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
35959 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
35960 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
35969 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#url-state title=attr-input-type-url>URL</a> state, the rules in this
35974 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
35975 for editing a single <a href=#absolute-url>absolute URL</a> given in the
35976 element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35980 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
35982 by its <a href=#concept-fe-value title=concept-fe-value>value</a>. User agents may
35983 allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
35984 <a href=#valid-url title="valid URL">valid</a> <a href=#absolute-url>absolute URL</a>, but
35986 user so that the <a href=#concept-fe-value title=concept-fe-value>value</a> is
35987 always a <a href=#valid-url title="valid URL">valid</a> <a href=#absolute-url>absolute
35990 the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty
35992 (LF) or U+000D CARRIAGE RETURN (CR) characters into the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
35996 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
35997 specified, must have a value that is a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially
35998 surrounded by spaces</a> that is also an <a href=#absolute-url>absolute
36003 <p><strong>The <a href
36004 follows</strong>: <a href=#strip-line-breaks>Strip line breaks</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>, then <a href=#strip-leading-and-trailing-whitespace>strip leading and
36005 trailing whitespace</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
36007 <p><strong>Constraint validation</strong>: While the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element is not a <a href=#valid-url title="valid URL">valid</a> <a href=#absolute-url>absolute URL</a>, the
36008 element is <a href=#suffering-from-a-type-mismatch>suffering from a type mismatch</a>.</p>
36014 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36016 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36017 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36018 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36019 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36020 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36021 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36022 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36023 <code title=attr-input-size><a href=#attr-input-size>size</a></code> content attributes;
36024 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36025 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
36026 <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
36027 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
36028 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes;
36029 <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36030 <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36032 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36033 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36035 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36039 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36040 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36041 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36042 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36043 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36044 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36045 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36046 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36047 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36048 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
36049 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
36050 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36051 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
36052 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
36053 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36057 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36058 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36059 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
36060 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
36061 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36062 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36108 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#e-mail-state title=attr-input-type-email>E-mail</a> state, the rules in this
36113 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36114 for editing a list of e-mail addresses given in the element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
36118 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36120 represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>. If
36121 the <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code> attribute is
36125 e-mail address. User agents may allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
36126 <a href=#valid-e-mail-address-list>valid e-mail address list</a>. User agents should allow the
36127 user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the
36129 FEED (LF) or U+000D CARRIAGE RETURN (CR) characters into the <a href=#concept-fe-value title=concept-fe-value>value</a>. User agents may transform the
36130 <a href=#concept-fe-value title=concept-fe-value>value</a> for display and editing
36131 (e.g. converting punycode in the <a href=#concept-fe-value title=concept-fe-value>value</a> to IDN in the display and vice
36136 <p>If the <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>
36137 attribute is specified on the element, then the <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if specified, must
36138 have a value that is a <a href=#valid-e-mail-address-list>valid e-mail address list</a>;
36139 otherwise, the <code title=attr-input-value><a href=#attr-input-value>value</a></code>
36141 <a href=#valid-e-mail-address>valid e-mail address</a>.</p>
36145 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36146 follows</strong>: <a href=#strip-line-breaks>Strip line breaks</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
36148 <p><strong>Constraint validation</strong>: If the <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code> attribute is specified
36149 on the element, then, while the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element is not a
36150 <a href=#valid-e-mail-address-list>valid e-mail address list</a>, the element is
36151 <a href=#suffering-from-a-type-mismatch>suffering from a type mismatch</a>; otherwise, while the
36152 <a href=#concept-fe-value title=concept-fe-value>value</a> of the element is not a
36153 single <a href=#valid-e-mail-address>valid e-mail address</a>, the element is
36154 <a href=#suffering-from-a-type-mismatch>suffering from a type mismatch</a>.</p>
36158 <p>A <dfn id=valid-e-mail-address-list>valid e-mail address list</dfn> is a <a href=#set-of-comma-separated-tokens>set of
36160 <a href=#valid-e-mail-address>valid e-mail address</a>. <span class=impl>To obtain the
36161 list of tokens from a <a href=#valid-e-mail-address-list>valid e-mail address list</a>, the
36162 user agent must <a href=#split-a-string-on-commas title="split a string on commas">split the
36169 section 3.5. <a href=#refsABNF>[ABNF]</a> <a href=#refsRFC5322>[RFC5322]</a> <a href=#refsRFC1034>[RFC1034]</a></p> <!-- Domain syntax based on
36172 <p class=note>This requirement is a <a href=#willful-violation>willful violation</a>
36181 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36183 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36184 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36185 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36186 <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36187 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36188 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36189 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36190 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36191 <code title=attr-input-size><a href=#attr-input-size>size</a></code> content attributes;
36192 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36193 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
36194 <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
36195 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
36196 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes;
36197 <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36198 <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36200 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36201 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36203 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36207 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36208 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36209 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36210 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36211 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36212 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36213 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36214 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36215 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36216 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
36217 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
36218 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
36219 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
36220 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36224 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36225 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36226 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
36227 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
36228 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36229 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36238 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#password-state title=attr-input-type-password>Password</a> state, the rules in
36243 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a one line
36244 plain text edit control for the element's <a href=#concept-fe-value title=concept-fe-value>value</a>. The user agent should obscure
36249 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36250 its <a href=#concept-fe-value title=concept-fe-value>value</a> should be editable
36252 FEED (LF) or U+000D CARRIAGE RETURN (CR) characters into the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
36256 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36262 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36263 follows</strong>: <a href=#strip-line-breaks>Strip line breaks</a> from the <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
36269 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36271 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36272 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36273 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36274 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36275 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36276 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36277 <code title=attr-input-size><a href=#attr-input-size>size</a></code> content attributes;
36278 <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
36279 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
36280 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes;
36281 <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>, and
36282 <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36284 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36285 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36287 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36291 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36292 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36293 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36294 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36295 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36296 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36297 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36298 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36299 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36300 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
36301 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
36302 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
36303 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36304 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
36305 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
36306 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36310 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36311 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36312 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
36313 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
36314 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
36315 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
36316 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36317 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36326 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#date-and-time-state title=attr-input-type-datetime>Date and Time</a> state, the
36331 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36332 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
36333 specific <a href=#concept-datetime title=concept-datetime>global date and
36339 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36340 the user agent should allow the user to change the <a href=#concept-datetime title=concept-datetime>global date and time</a> represented by
36341 its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by
36342 <a href=#parse-a-global-date-and-time-string title="parse a global date and time string">parsing a global
36344 set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that
36345 is not a <a href=#valid-global-date-and-time-string>valid global date and time string</a> expressed in
36348 UTC time zone in the <a href=#concept-fe-value title=concept-fe-value>value</a>. If
36349 the user agent provides a user interface for selecting a <a href=#concept-datetime title=concept-datetime>global date and time</a>, then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to a <a href=#valid-global-date-and-time-string>valid
36351 user's selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
36355 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36356 specified, must have a value that is a <a href=#valid-global-date-and-time-string>valid global date and
36362 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36363 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
36364 of the element is a <a href=#valid-global-date-and-time-string>valid global date and time string</a>,
36365 then adjust the time so that the <a href=#concept-fe-value title=concept-fe-value>value</a> represents the same point in
36371 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
36372 specified, must have a value that is a <a href=#valid-global-date-and-time-string>valid global date and
36373 time string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
36374 attribute, if specified, must have a value that is a <a href=#valid-global-date-and-time-string>valid
36377 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
36378 expressed in seconds. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is 1000
36380 algorithms).</span> The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is 60
36385 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
36386 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-datetime title=concept-datetime>global date and time</a> for which the
36387 element would not <a href=#suffering-from-a-step-mismatch title="suffering from a step
36390 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
36392 is as follows</strong>: If <a href=#parse-a-global-date-and-time-string title="parse a global date and time
36396 "<code title="">1970-01-01T00:00:00.0Z</code>") to the parsed <a href=#concept-datetime title=concept-datetime>global date and time</a>, ignoring leap
36399 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
36401 is as follows</strong>: Return a <a href=#valid-global-date-and-time-string>valid global date and time
36402 string</a> expressed in UTC that represents the <a href=#concept-datetime title=concept-datetime>global date and time</a> that is <var title="">input</var> milliseconds after midnight UTC on the morning
36405 <p><strong>The <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
36406 string to a <code>Date</code> object</a>, given a string <var title="">input</var>, is as follows</strong>: If <a href=#parse-a-global-date-and-time-string title="parse
36410 parsed <a href=#concept-datetime title=concept-datetime>global date and time</a>,
36413 <p><strong>The <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
36416 follows</strong>: Return a <a href=#valid-global-date-and-time-string>valid global date and time
36417 string</a> expressed in UTC that represents the <a href=#concept-datetime title=concept-datetime>global date and time</a> that is
36424 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36426 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36427 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36428 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
36429 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
36430 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36431 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36432 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
36433 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36434 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
36435 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
36436 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
36437 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
36438 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36439 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36441 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36442 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36444 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36448 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36449 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36450 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36451 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36452 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36453 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36454 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36455 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36456 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36457 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36458 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36459 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36460 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36461 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
36462 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
36463 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36467 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36468 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36469 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>, and
36470 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> IDL attributes;
36471 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36472 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36491 <p>Had the application used the <code title=attr-input-type-datetime-local><a href=#local-date-and-time-state>datetime-local</a></code> type
36502 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#date-state title=attr-input-type-date>Date</a> state, the rules in this
36507 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36508 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
36509 specific <a href=#concept-date title=concept-date>date</a>.</p>
36513 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36514 the user agent should allow the user to change the <a href=#concept-date title=concept-date>date</a> represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by <a href=#parse-a-date-string title="parse a date string">parsing a date</a> from it. User
36515 agents must not allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
36516 <a href=#valid-date-string>valid date string</a>. If the user agent provides a user
36517 interface for selecting a <a href=#concept-date title=concept-date>date</a>,
36518 then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to
36519 a <a href=#valid-date-string>valid date string</a> representing the user's
36520 selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
36524 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36525 specified, must have a value that is a <a href=#valid-date-string>valid date
36531 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36532 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
36533 of the element is not a <a href=#valid-date-string>valid date string</a>, then set it
36538 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
36539 specified, must have a value that is a <a href=#valid-date-string>valid date
36540 string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
36541 attribute, if specified, must have a value that is a <a href=#valid-date-string>valid
36544 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
36545 expressed in days. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is
36547 other algorithms).</span> The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is 1 day.</p>
36551 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
36552 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-date title=concept-date>date</a> for which the element would not
36553 <a href=#suffering-from-a-step-mismatch title="suffering from a step mismatch">suffer from a step
36556 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
36558 is as follows</strong>: If <a href=#parse-a-date-string title="parse a date string">parsing
36563 morning of the parsed <a href=#concept-date title=concept-date>date</a>,
36566 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
36568 is as follows</strong>: Return a <a href=#valid-date-string>valid date string</a> that
36569 represents the <a href=#concept-date title=concept-date>date</a> that, in UTC,
36574 <p><strong>The <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
36575 string to a <code>Date</code> object</a>, given a string <var title="">input</var>, is as follows</strong>: If <a href=#parse-a-date-string title="parse
36579 the parsed <a href=#concept-date title=concept-date>date</a>.</p>
36581 <p><strong>The <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
36584 follows</strong>: Return a <a href=#valid-date-string>valid date string</a> that
36585 represents the <a href=#concept-date title=concept-date>date</a> current at the
36593 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36595 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36596 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36597 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
36598 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
36599 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36600 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36601 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
36602 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36603 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
36604 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
36605 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
36606 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
36607 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36608 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36610 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36611 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36613 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36617 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36618 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36619 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36620 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36621 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36622 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36623 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36624 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36625 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36626 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36627 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36628 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36629 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36630 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
36631 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
36632 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36636 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36637 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>, and
36638 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> IDL attributes;
36639 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36640 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36649 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#month-state title=attr-input-type-month>Month</a> state, the rules in this
36654 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36655 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
36656 specific <a href=#concept-month title=concept-month>month</a>.</p>
36660 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36661 the user agent should allow the user to change the <a href=#concept-month title=concept-month>month</a> represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by <a href=#parse-a-month-string title="parse a month string">parsing a month</a> from it. User
36662 agents must not allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
36663 <a href=#valid-month-string>valid month string</a>. If the user agent provides a user
36664 interface for selecting a <a href=#concept-month title=concept-month>month</a>,
36665 then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to
36666 a <a href=#valid-month-string>valid month string</a> representing the user's
36667 selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
36671 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36672 specified, must have a value that is a <a href=#valid-month-string>valid month
36678 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36679 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
36680 of the element is not a <a href=#valid-month-string>valid month string</a>, then set it
36685 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
36686 specified, must have a value that is a <a href=#valid-month-string>valid month
36687 string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
36688 attribute, if specified, must have a value that is a <a href=#valid-month-string>valid
36691 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
36692 expressed in months. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is 1
36694 The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is
36699 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
36700 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-month title=concept-month>month</a> for which the element would not
36701 <a href=#suffering-from-a-step-mismatch title="suffering from a step mismatch">suffer from a step
36704 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
36706 is as follows</strong>: If <a href=#parse-a-month-string title="parse a month
36709 number of months between January 1970 and the parsed <a href=#concept-month title=concept-month>month</a>.</p>
36711 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
36713 is as follows</strong>: Return a <a href=#valid-month-string>valid month string</a>
36714 that represents the <a href=#concept-month title=concept-month>month</a> that
36722 <p><strong>The <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
36723 string to a <code>Date</code> object</a>, given a string <var title="">input</var>, is as follows</strong>: If <a href=#parse-a-month-string title="parse
36726 UTC on the morning of the first day of the parsed <a href=#concept-month title=concept-month>month</a>.</p>
36728 <p><strong>The <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
36731 follows</strong>: Return a <a href=#valid-month-string>valid month string</a> that
36732 represents the <a href=#concept-month title=concept-month>month</a> current at
36740 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36742 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36743 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36744 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
36745 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
36746 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36747 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36748 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
36749 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36750 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
36751 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
36752 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
36753 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
36754 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36755 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36757 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36758 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36760 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36764 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36765 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36766 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36767 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36768 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36769 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36770 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36771 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36772 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36773 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36774 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36775 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36776 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36777 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
36778 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
36779 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36783 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36784 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36785 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>, and
36786 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> IDL attributes;
36787 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36788 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36797 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#week-state title=attr-input-type-week>Week</a> state, the rules in this
36802 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36803 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
36804 specific <a href=#concept-week title=concept-week>week</a>.</p>
36808 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36809 the user agent should allow the user to change the <a href=#concept-week title=concept-week>week</a> represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by <a href=#parse-a-week-string title="parse a week string">parsing a week</a> from it. User
36810 agents must not allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
36811 <a href=#valid-week-string>valid week string</a>. If the user agent provides a user
36812 interface for selecting a <a href=#concept-week title=concept-week>week</a>,
36813 then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to
36814 a <a href=#valid-week-string>valid week string</a> representing the user's
36815 selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
36819 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36820 specified, must have a value that is a <a href=#valid-week-string>valid week
36826 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36827 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
36828 of the element is not a <a href=#valid-week-string>valid week string</a>, then set it
36833 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
36834 specified, must have a value that is a <a href=#valid-week-string>valid week
36835 string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
36836 attribute, if specified, must have a value that is a <a href=#valid-week-string>valid
36839 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
36840 expressed in weeks. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is
36842 the other algorithms).</span> The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is 1
36843 week. <span class=impl>The <a href=#concept-input-step-default-base title=concept-input-step-default-base>default step base</a> is
36848 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
36849 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-week title=concept-week>week</a> for which the element would not
36850 <a href=#suffering-from-a-step-mismatch title="suffering from a step mismatch">suffer from a step
36853 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
36855 is as follows</strong>: If <a href=#parse-a-week-string title="parse a week string">parsing
36860 morning of the Monday of the parsed <a href=#concept-week title=concept-week>week</a>, ignoring leap seconds.</p>
36862 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
36864 is as follows</strong>: Return a <a href=#valid-week-string>valid week string</a> that
36865 represents the <a href=#concept-week title=concept-week>week</a> that, in UTC,
36870 <p><strong>The <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
36871 string to a <code>Date</code> object</a>, given a string <var title="">input</var>, is as follows</strong>: If <a href=#parse-a-week-string title="parse
36875 the Monday of the parsed <a href=#concept-week title=concept-week>week</a>.</p>
36877 <p><strong>The <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
36880 follows</strong>: Return a <a href=#valid-week-string>valid week string</a> that
36881 represents the <a href=#concept-week title=concept-week>week</a> current at the
36889 <p>The following common <code><a href=#the-input-element>input</a></code> element content
36891 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
36892 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
36893 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
36894 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
36895 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
36896 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
36897 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
36898 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
36899 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
36900 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
36901 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
36902 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
36903 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
36904 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
36906 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
36907 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
36909 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
36913 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
36914 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
36915 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
36916 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
36917 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
36918 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
36919 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
36920 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
36921 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
36922 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
36923 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
36924 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
36925 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
36926 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
36927 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
36928 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
36932 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
36933 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
36934 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>, and
36935 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> IDL attributes;
36936 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
36937 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
36950 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a hrefhref=#time-state title=attr-input-type-time>Time</a> state, the rules in this
36955 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
36956 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
36957 specific <a href=#concept-time title=concept-time>time</a>.</p>
36961 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
36962 the user agent should allow the user to change the <a href=#concept-time title=concept-time>time</a> represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by <a href=#parse-a-time-string title="parse a time string">parsing a time</a> from it. User
36963 agents must not allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
36964 <a href=#valid-time-string>valid time string</a>. If the user agent provides a user
36965 interface for selecting a <a href=#concept-time title=concept-time>time</a>,
36966 then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to
36967 a <a href=#valid-time-string>valid time string</a> representing the user's
36968 selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
36972 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
36973 specified, must have a value that is a <a href=#valid-time-string>valid time
36979 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
36980 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
36981 of the element is not a <a href=#valid-time-string>valid time string</a>, then set it
36986 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
36987 specified, must have a value that is a <a href=#valid-time-string>valid time
36988 string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
36989 attribute, if specified, must have a value that is a <a href=#valid-time-string>valid
36992 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
36993 expressed in seconds. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is 1000
36995 algorithms).</span> The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is 60
37000 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
37001 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-time title=concept-time>time</a> for which the element would not
37002 <a href=#suffering-from-a-step-mismatch title="suffering from a step mismatch">suffer from a step
37005 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
37007 is as follows</strong>: If <a href=#parse-a-time-string title="parse a time string">parsing
37010 elapsed from midnight to the parsed <a href=#concept-time title=concept-time>time</a> on a day with no time changes.</p>
37012 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
37014 is as follows</strong>: Return a <a href=#valid-time-string>valid time string</a> that
37015 represents the <a href=#concept-time title=concept-time>time</a> that is <var title="">input</var> milliseconds after midnight on a day with no
37018 <p><strong>The <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
37019 string to a <code>Date</code> object</a>, given a string <var title="">input</var>, is as follows</strong>: If <a href=#parse-a-time-string title="parse
37022 <code>Date</code> object representing the parsed <a href=#concept-time title=concept-time>time</a> in UTC on 1970-01-01.</p>
37024 <p><strong>The <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
37027 follows</strong>: Return a <a href=#valid-time-string>valid time string</a> that
37028 represents the UTC <a href=#concept-time title=concept-time>time</a> component
37035 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37037 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37038 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
37039 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
37040 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
37041 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37042 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
37043 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
37044 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
37045 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
37046 <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>,
37047 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
37048 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
37049 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
37050 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37052 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37053 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
37055 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
37059 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37060 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37061 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
37062 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37063 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37064 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37065 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37066 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37067 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37068 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37069 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37070 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37071 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37072 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37073 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
37074 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37078 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
37079 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37080 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>, and
37081 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> IDL attributes;
37082 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
37083 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
37092 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#local-date-and-time-state title=attr-input-type-datetime-local>Local Date and Time</a>
37097 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
37098 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
37099 <a href=#concept-datetime-local title=concept-datetime-local>local date and time</a>,
37104 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37105 the user agent should allow the user to change the <a href=#concept-datetime-local title=concept-datetime-local>date and time</a> represented by
37106 its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained by
37107 <a href=#parse-a-local-date-and-time-string title="parse a local date and time string">parsing a date and
37109 <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not
37110 a <a href=#valid-local-date-and-time-string>valid local date and time string</a>. If the user agent
37111 provides a user interface for selecting a <a href=#concept-datetime-local title=concept-datetime-local>local date and time</a>, then the
37112 <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to a
37113 <a href=#valid-local-date-and-time-string>valid local date and time string</a> representing the
37114 user's selection. User agents should allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
37118 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
37119 specified, must have a value that is a <a href=#valid-local-date-and-time-string>valid local date and
37125 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
37126 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
37127 of the element is not a <a href=#valid-local-date-and-time-string>valid local date and time
37132 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
37133 specified, must have a value that is a <a href=#valid-local-date-and-time-string>valid local date and
37134 time string</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
37135 attribute, if specified, must have a value that is a <a href=#valid-local-date-and-time-string>valid
37138 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute is
37139 expressed in seconds. <span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is 1000
37141 algorithms).</span> The <a href=#concept-input-step-default title=concept-input-step-default>default step</a> is 60
37146 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
37147 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest <a href=#concept-datetime-local title=concept-datetime-local>local date and time</a> for which
37148 the element would not <a href=#suffering-from-a-step-mismatch title="suffering from a step
37151 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
37153 is as follows</strong>: If <a href=#parse-a-local-date-and-time-string title="parse a local date and time
37157 "<code title="">1970-01-01T00:00:00.0</code>") to the parsed <a href=#concept-datetime-local title=concept-datetime-local>local date and time</a>, ignoring
37160 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
37162 is as follows</strong>: Return a <a href=#valid-local-date-and-time-string>valid local date and time
37170 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37172 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37173 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
37174 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
37175 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
37176 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37177 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
37178 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
37179 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
37180 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
37181 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
37182 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
37183 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
37184 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37186 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37187 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
37189 href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
37193 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37194 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37195 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
37196 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37197 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37198 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37199 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37200 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37201 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37202 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37203 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37204 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37205 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37206 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37207 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
37208 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37212 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
37213 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37214 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37215 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
37216 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> IDL attributes;
37217 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
37218 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
37225 application. The application uses an <code><a href=#the-input-element>input</a></code> element
37226 with its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute set to
37227 <code title=attr-input-type-datetime-local><a href=#local-date-and-time-state>datetime-local</a></code>,
37244 <p>If the application instead used the <code title=attr-input-type-datetime><a href=#date-and-time-state>datetime</a></code> type, then the
37255 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#number-state title=attr-input-type-number>Number</a> state, the rules in
37260 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
37261 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
37266 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37268 represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as
37269 obtained from applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point
37271 set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that
37272 is not a <a href=#valid-floating-point-number>valid floating point number</a>. If the user agent
37273 provides a user interface for selecting a number, then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to the <a href=#best-representation-of-the-number-as-a-floating-point-number title="best representation of the number as a floating point
37276 allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
37280 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
37281 specified, must have a value that is a <a href=#valid-floating-point-number>valid floating point
37287 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
37288 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
37289 of the element is not a <a href=#valid-floating-point-number>valid floating point number</a>,
37294 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
37295 specified, must have a value that is a <a href=#valid-floating-point-number>valid floating point
37296 number</a>. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
37297 attribute, if specified, must have a value that is a <a href=#valid-floating-point-number>valid
37300 <p><span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is
37301 1.</span> The <a href=#concept-input-step-default title=concept-input-step-default>default
37302 step</a> is 1 (allowing only integers, unless the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute has a non-integer
37307 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
37308 the user agent may round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest number for
37309 which the element would not <a href=#suffering-from-a-step-mismatch title="suffering from a step
37312 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
37314 is as follows</strong>: If applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing
37319 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
37321 is as follows</strong>: Return a <a href=#valid-floating-point-number>valid floating point
37328 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37330 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37331 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
37332 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
37333 <code title=attr-input-min><a href=#attr-input-min>min</a></code>,
37334 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37335 <code title=attr-input-required><a href=#attr-input-required>required</a></code>, and
37336 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
37337 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
37338 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
37339 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
37340 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
37341 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
37342 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37344 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37345 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
37347 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
37351 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37352 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37353 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
37354 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37355 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37356 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37357 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37358 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37359 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37360 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37361 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37362 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37363 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37364 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37365 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
37366 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37370 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
37371 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37372 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37373 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
37374 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> IDL attributes;
37375 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
37376 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
37385 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#range-state title=attr-input-type-range>Range</a> state, the rules in this
37390 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
37391 for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
37393 letting UAs provide a simpler interface than they do for the <a href=#number-state title=attr-input-type-number>Number</a> state.</p>
37401 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37403 represented by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as
37404 obtained from applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point
37406 set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that
37407 is not a <a href=#valid-floating-point-number>valid floating point number</a>. If the user agent
37408 provides a user interface for selecting a number, then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to a <a href=#best-representation-of-the-number-as-a-floating-point-number title="best representation of the number as a floating point
37411 allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
37415 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
37416 specified, must have a value that is a <a href=#valid-floating-point-number>valid floating point
37422 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
37423 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
37424 of the element is not a <a href=#valid-floating-point-number>valid floating point number</a>,
37425 then set it to a <a href=#valid-floating-point-number>valid floating point number</a> that
37426 represents the <a href=#concept-input-value-default-range title=concept-input-value-default-range>default value</a>.</p>
37430 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, if
37431 specified, must have a value that is a <a href=#valid-floating-point-number>valid floating point
37432 number</a>. The <a href=#concept-input-min-default title=concept-input-min-default>default
37433 minimum</a> is 0. The <code title=attr-input-max><a href=#attr-input-max>max</a></code>
37434 attribute, if specified, must have a value that is a <a href
37435 floating point number</a>. The <a href=#concept-input-max-default title=concept-input-max-default>default maximum</a> is 100.</p>
37438 value</dfn> is the <a href=#concept-input-min title=concept-input-min>minimum</a>
37439 plus half the difference between the <a href=#concept-input-min title=concept-input-min>minimum</a> and the <a href=#concept-input-max title=concept-input-max>maximum</a>, unless the <a href=#concept-input-max title=concept-input-max>maximum</a> is less than the <a href=#concept-input-min title=concept-input-min>minimum</a>, in which case the <a href=#concept-input-value-default-range title=concept-input-value-default-range>default value</a> is
37440 the <a href=#concept-input-min title=concept-input-min>minimum</a>.</p>
37444 <p>When the element is <a href=#suffering-from-an-underflow>suffering from an
37445 underflow</a>, the user agent must set the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a <a href=#valid-floating-point-number>valid floating point
37446 number</a> that represents the <a href=#concept-input-min title=concept-input-min>minimum</a>.</p>
37448 <p>When the element is <a href=#suffering-from-an-overflow>suffering from an overflow</a>,
37449 if the <a href=#concept-input-max title=concept-input-max>maximum</a> is not less
37450 than the <a href=#concept-input-min title=concept-input-min>minimum</a>, the user
37451 agent must set the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a <a href=#valid-floating-point-number>valid floating point
37452 number</a> that represents the <a href=#concept-input-max title=concept-input-max>maximum</a>.</p>
37456 <p><span class=impl>The <a href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a> is
37457 1.</span> The <a href=#concept-input-step-default title=concept-input-step-default>default
37458 step</a> is 1 (allowing only integers, unless the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute has a non-integer
37463 <p>When the element is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>,
37464 the user agent must round the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the nearest number for
37465 which the element would not <a href=#suffering-from-a-step-mismatch title="suffering from a step
37467 than or equal to the <a href=#concept-input-min title=concept-input-min>minimum</a>,
37468 and, if the <a href=#concept-input-max title=concept-input-max>maximum</a> is not
37469 less than the <a href=#concept-input-min title=concept-input-min>minimum</a>, which
37470 is less than or equal to the <a href=#concept-input-max title=concept-input-max>maximum</a>.</p>
37472 <p><strong>The <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
37474 is as follows</strong>: If applying the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing
37479 <p><strong>The <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
37481 is as follows</strong>: Return a <a href=#valid-floating-point-number>valid floating point
37488 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37490 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37491 <code title=attr-input-list><a href=#attr-input-list>list</a></code>,
37492 <code title=attr-input-max><a href=#attr-input-max>max</a></code>,
37493 <code title=attr-input-min><a href=#attr-input-min>min</a></code>, and
37494 <code title=attr-input-step><a href=#attr-input-step>step</a></code> content attributes;
37495 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
37496 <code title=dom-input-value><a href=#dom-input-value>value</a></code>,
37497 <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code>, and
37498 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes;
37499 <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
37500 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37502 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37503 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
37505 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
37509 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37510 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37511 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
37512 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37513 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37514 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37515 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37516 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37517 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37518 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37519 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37520 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37521 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37522 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37523 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
37524 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37525 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>, and
37526 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37530 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
37531 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37532 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37533 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>, and
37534 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> IDL attributes;
37535 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code> and
37536 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code> methods.</p>
37543 with the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute. This
37568 <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute has not
37605 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#color-state title=attr-input-type-color>Color</a> state, the rules in this
37610 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a color
37611 well control, for setting the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to a string representing a
37612 <a href=#simple-color>simple color</a>.</p>
37619 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37621 by its <a href=#concept-fe-value title=concept-fe-value>value</a>, as obtained from
37622 applying the <a href=#rules-for-parsing-simple-color-values>rules for parsing simple color values</a> to
37623 it. User agents must not allow the user to set the <a href=#concept-fe-value title=concept-fe-value>value</a> to a string that is not a
37624 <a href=#valid-lowercase-simple-color>valid lowercase simple color</a>. If the user agent
37625 provides a user interface for selecting a color, then the <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to the result of
37626 using the <a href=#rules-for-serializing-simple-color-values>rules for serializing simple color values</a> to
37628 <a href=#concept-fe-value title=concept-fe-value>value</a> to the empty string.</p>
37632 <p>The <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if
37633 specified, must have a value that is a <a href=#valid-simple-color>valid simple
37638 <p><strong>The <a href=#value-sanitization-algorithm>value sanitization algorithm</a> is as
37639 follows</strong>: If the <a href=#concept-fe-value title=concept-fe-value>value</a>
37640 of the element is a <a href=#valid-simple-color>valid simple color</a>, then set it to
37641 the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element
37642 <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>; otherwise, set it to the string
37649 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37651 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code> and
37652 <code title=attr-input-list><a href=#attr-input-list>list</a></code> content attributes;
37653 <code title=dom-input-list><a href=#dom-input-list>list</a></code>,
37654 <code title=dom-input-value><a href=#dom-input-value>value</a></code>, and
37655 <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> IDL attributes.</p>
37657 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37658 in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
37660 <p>The <code title=event-input-input><a href=#event-input-input>input</a></code> and <code title=event-input-change><a href=#event-input-change>change</a></code> events apply.</p>
37664 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37665 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37666 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
37667 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37668 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37669 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37670 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37671 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37672 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37673 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37674 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
37675 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
37676 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37677 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37678 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37679 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37680 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
37681 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37682 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
37683 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
37684 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37688 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
37689 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37690 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37691 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
37692 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
37693 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
37694 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
37695 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
37696 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
37697 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37706 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state, the rules in
37711 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a
37712 two-state control that represents the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state. If the
37713 element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state
37715 false, a negative selection. If the element's <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute
37720 if the element's <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute
37721 is set to true. The <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute
37726 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37727 then: The <a href=#pre-click-activation-steps>pre-click activation steps</a> consist of setting
37728 the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> to
37730 and of setting the element's <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute
37731 to false. The <a href=#canceled-activation-steps>canceled activation steps</a> consist of
37732 setting the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> and
37733 the element's <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL attribute
37734 back to the values they had before the <a href=#pre-click-activation-steps>pre-click activation
37735 steps</a> were run. The <a href=#activation-behavior>activation behavior</a> is to
37736 <a href=#fire-a-simple-event>fire a simple event</a> that bubbles named <code title=event-change>change</code> at the element<!-- It's not
37738 story. -->, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
37739 element's <a href=#form-owner>form owner</a>.</p>
37741 <p><strong>Constraint validation</strong>: If the element is <i title=concept-input-required><a href=#concept-input-required>required</a></i> and its <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> is false, then the
37742 element is <a href=#suffering-from-being-missing>suffering from being missing</a>.</p>
37746 <dl class=domintro><dt><var title="">input</var> . <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> [ = <var title="">value</var> ]</dt>
37750 <p>When set, overrides the rendering of <a href=#checkbox-state title=attr-input-type-checkbox>checkbox</a> controls so that
37757 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37759 <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>, and
37760 <code title=attr-input-required><a href=#attr-input-required>required</a></code> content attributes;
37761 <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> and
37762 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes.</p>
37764 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37765 in mode <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a>.</p>
37767 <p>The <code title=event-input-change><a href=#event-input-change>change</a></code> event applies.</p>
37771 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37772 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37773 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37774 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37775 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37776 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37777 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37778 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37779 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37780 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
37781 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
37782 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
37783 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
37784 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37785 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37786 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37787 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37788 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37789 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
37790 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
37791 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37795 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37796 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
37797 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
37798 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37799 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
37800 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
37801 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
37802 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
37803 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
37804 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
37805 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37807 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> event does not apply.</p>
37817 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state, the rules
37822 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a control
37823 that, when used in conjunction with other <code><a href=#the-input-element>input</a></code>
37824 elements, forms a <i><a href=#radio-button-group>radio button group</a></i> in which only one
37825 control can have its <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state set to true. If
37826 the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>
37832 <code><a href=#the-input-element>input</a></code> element <var title="">a</var> also contains all
37833 the other <code><a href=#the-input-element>input</a></code> elements <var title="">b</var> that
37836 <ul><li>The <code><a href=#the-input-element>input</a></code> element <var title="">b</var>'s <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state.</li>
37839 same <a href=#form-owner>form owner</a>, or they both have no <a href=#form-owner>form
37842 <li>They both have a <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
37843 attribute, and the value of <var title="">a</var>'s <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute is a
37844 <a href=#compatibility-caseless>compatibility caseless</a> match for the value of <var title="">b</var>'s <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
37847 </ul><p>A document must not contain an <code><a href=#the-input-element>input</a></code> element whose
37848 <i><a href=#radio-button-group>radio button group</a></i> contains only that element.</p>
37852 <p>When any of the following events occur, if the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state is true after
37853 the event, the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state of all the
37854 other elements in the same <i><a href=#radio-button-group>radio button group</a></i> must be set to
37857 <ul><li>The element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state is set to
37860 <li>The element's <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
37863 <li>The element's <a href=#form-owner>form owner</a> changes.</li>
37865 </ul><p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37866 then: The <a href=#pre-click-activation-steps>pre-click activation steps</a> consist of setting
37867 the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> to
37868 true. The <a href=#canceled-activation-steps>canceled activation steps</a> consist of setting
37869 the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> to
37870 false. The <a href=#activation-behavior>activation behavior</a> is to <a href=#fire-a-simple-event>fire a
37873 story. -->, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
37874 element's <a href=#form-owner>form owner</a>.</p>
37876 <p><strong>Constraint validation</strong>: If the element is <i title=concept-input-required><a href=#concept-input-required>required</a></i> and all of the
37877 <code><a href=#the-input-element>input</a></code> elements in the <i><a href=#radio-button-group>radio button group</a></i> have a
37878 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> that is
37879 false, then the element is <a href=#suffering-from-being-missing>suffering from being
37884 <p class=note>If none of the radio buttons in a <a href=#radio-button-group>radio button
37892 <p>The following common <code><a href=#the-input-element>input</a></code> element content
37894 <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code> and
37895 <code title=attr-input-required><a href=#attr-input-required>required</a></code> content attributes;
37896 <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> and
37897 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes.</p>
37899 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
37900 in mode <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a>.</p>
37902 <p>The <code title=event-input-change><a href=#event-input-change>change</a></code> event applies.</p>
37906 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
37907 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
37908 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
37909 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
37910 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
37911 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
37912 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
37913 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
37914 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
37915 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
37916 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
37917 <code class=no-backref title=attr-input-maxlength><a href
37918 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
37919 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
37920 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
37921 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
37922 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
37923 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
37924 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
37925 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
37926 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
37930 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
37931 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
37932 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
37933 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
37934 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
37935 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
37936 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
37937 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
37938 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
37939 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
37940 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
37942 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> event does not apply.</p>
37957 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#file-upload-state title=attr-input-type-file>File Upload</a> state, the rules in this
37962 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a list of
37969 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
37975 <p><strong>Constraint validation</strong>: If the element is <i title=concept-input-required><a href=#concept-input-required>required</a></i> and the list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a> is
37976 empty, then the element is <a href=#suffering-from-being-missing>suffering from being
37979 <p>Unless the <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>
37981 <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected
37990 <p>If specified, the attribute must consist of a <a href=#set-of-comma-separated-tokens>set of
37991 comma-separated tokens</a>, each of which must be an <a href=#ascii-case-insensitive>ASCII
38006 <dt>A <a href=#valid-mime-type-with-no-parameters>valid MIME type with no parameters</a></dt>
38010 </dl><p>The tokens must not be <a href=#ascii-case-insensitive>ASCII case-insensitive</a>
38013 attribute, the user agent must <a href=#split-a-string-on-commas title="split a string on
38025 <p>For historical reasons, the <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute prefixes the
38029 filename from the <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL
38064 <p>The following common <code><a href=#the-input-element>input</a></code> element content
38067 <p>The following common <code><a href=#the-input-element>input</a></code> element content
38069 <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
38070 <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>, and
38071 <code title=attr-input-required><a href=#attr-input-required>required</a></code>;
38072 <code title=dom-input-files><a href=#dom-input-files>files</a></code> and
38073 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attributes.</p>
38075 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
38076 in mode <a href=#dom-input-value-filename title=dom-input-value-filename>filename</a>.</p>
38078 <p>The <code title=event-input-change><a href=#event-input-change>change</a></code> event applies.</p>
38082 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
38083 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
38084 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
38085 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
38086 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
38087 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
38088 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
38089 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
38090 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
38091 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
38092 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
38093 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
38094 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
38095 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
38096 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
38097 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
38098 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
38099 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
38100 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
38101 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
38103 <p>The element's <code title=attr-input-value><a href=#attr-input-value>value</a></code>
38108 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
38109 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
38110 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
38111 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
38112 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
38113 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
38114 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
38115 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
38116 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
38117 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
38118 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
38120 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> event does not apply.</p>
38130 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a> state, the rules
38135 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a button
38137 element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute,
38140 some such.</span> The element is a <a href=#concept-button title=concept-button>button</a>, specifically a <a href=#concept-submit-button title=concept-submit-button>submit button</a>.</p>
38144 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
38147 <p>The element's <a href=#activation-behavior>activation behavior</a>, if the element
38148 has a <a href=#form-owner>form owner</a>, is to <a href=#concept-form-submit title=concept-form-submit>submit</a> the <a href=#form-owner>form
38149 owner</a> from the <code><a href=#the-input-element>input</a></code> element; otherwise, it is
38154 <p>The <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> attributes are <a href=#attributes-for-form-submission>attributes
38157 <p class=note>The <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code> attribute can
38163 <p>The following common <code><a href=#the-input-element>input</a></code> element content
38165 <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
38166 <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
38167 <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
38168 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and
38169 <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> content attributes;
38170 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute.</p>
38172 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
38173 in mode <a href=#dom-input-value-default title=dom-input-value-default>default</a>.</p>
38177 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
38178 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
38179 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
38180 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
38181 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
38182 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
38183 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
38184 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
38185 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
38186 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
38187 href=#attr-input-pattern>pattern</a></code>,
38188 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
38189 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
38190 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
38191 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
38192 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
38193 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
38194 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
38198 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
38199 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
38200 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
38201 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
38202 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
38203 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
38204 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
38205 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
38206 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
38207 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
38208 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
38209 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
38211 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> and <code class=no-backref title=event-input-change><a href=#event-input-change>change</a></code> events do not apply.</p>
38220 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, the rules
38225 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> either an
38228 form. The element is a <a href=#concept-button title=concept-button>button</a>,
38229 specifically a <a href=#concept-submit-button title=concept-submit-button>submit
38232 <hr><p>The image is given by the <dfn id=attr-input-src title=attr-input-src><code>src</code></dfn> attribute. The <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute must be present, and
38233 must contain a <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
38241 or the user agent only fetches elements on demand, or the <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute's value is the empty
38242 string, the user agent must <a href=#resolve-a-url title="resolve a
38243 url">resolve</a> the value of the <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute, relative to the
38244 element, and if that is successful, must <a href=#fetch>fetch</a> the
38245 resulting <a href=#absolute-url>absolute URL</a>:</p> <!-- Note how this does NOT
38249 <ul><li>The <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is first set to the
38250 <a href=#image-button-state title=attr-input-type-image>Image Button</a> state
38251 (possibly when the element is first created), and the <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute is present.</li>
38253 <li>The <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is changed back to
38254 the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state,
38255 and the <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute is
38256 present, and its value has changed since the last time the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute was in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state.</li>
38258 <li>The <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, and the
38259 <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute is set or
38262 </ul><!-- same text in <img> section and similar text elsewhere --><p>Fetching the image must <a href=#delay-the-load-event>delay the load event</a> of the
38263 element's document until the <a href=#concept-task title=concept-task>task</a>
38264 that is <a href=#queue-a-task title="queue a task">queued</a> by the
38265 <a href=#networking-task-source>networking task source</a> once the resource has been <a href=#fetch title=fetch>fetched</a> (defined below) has been run.</p>
38270 before the image is completely downloaded, each <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a
38271 task">queued</a> by the <a href=#networking-task-source>networking task source</a> while
38272 the image is being <a href=#fetch title=fetch>fetched</a> must update
38275 <p>The user agents should apply the <a href=#content-type-sniffing:-image title="Content-Type
38277 of the image, with the image's <a href=#content-type title=Content-Type>associated
38280 image must be the type given by the image's <a href=#content-type title=Content-Type>associated Content-Type headers</a>.</p>
38283 <code><a href=#the-input-element>input</a></code> element. User agents must not run executable code
38289 <p>The <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking task
38290 source</a> once the resource has been <a href=#fetch title=fetch>fetched</a>, must, if the download was successful
38291 and the image is <i title=input-img-available><a href=#input-img-available>available</a></i>,
38292 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named
38293 <code title=event-load>load</code> at the <code><a href=#the-input-element>input</a></code>
38296 valid or supported image, <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a
38298 the <code><a href=#the-input-element>input</a></code> element.</p>
38304 user agents who cannot use the image. The <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code> attribute must also be present,
38307 <p>The <code><a href=#the-input-element>input</a></code> element supports <a href=#dimension-attributes>dimension
38312 <hr><p>If the <code title=attr-input-src><a href=#attr-input-src>src</a></code> attribute is set,
38313 and the image is <i title=input-img-available><a href=#input-img-available>available</a></i> and
38315 element <a href=#represents>represents</a> a control for selecting a <a href=#concept-input-type-image-coordinate title=concept-input-type-image-coordinate>coordinate</a> from
38316 the image specified by the <code title=attr-input-src><a href=#attr-input-src>src</a></code>
38317 attribute; if the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>, the user agent should
38318 allow the user to select this <a href=#concept-input-type-image-coordinate title=concept-input-type-image-coordinate>coordinate</a>. The
38319 <a href=#activation-behavior>activation behavior</a> in this case consists of taking the
38320 user's selected <a href=#concept-input-type-image-coordinate title=concept-input-type-image-coordinate>coordinate</a>, and
38321 then, if the element has a <a href=#form-owner>form owner</a>, <a href=#concept-form-submit title=concept-form-submit>submitting</a> the <code><a href=#the-input-element>input</a></code>
38322 element's <a href=#form-owner>form owner</a> from the <code><a href=#the-input-element>input</a></code>
38327 <p>Otherwise, the element <a href=#represents>represents</a> a submit button
38328 whose label is given by the value of the <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code> attribute; if the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>, the user agent should
38329 allow the user to activate the button. The <a href=#activation-behavior>activation
38330 behavior</a> in this case consists of setting the <a href=#concept-input-type-image-coordinate title=concept-input-type-image-coordinate>selected
38332 <a href=#form-owner>form owner</a>, <a href=#concept-form-submit title=concept-form-submit>submitting</a> the <code><a href=#the-input-element>input</a></code>
38333 element's <a href=#form-owner>form owner</a> from the <code><a href=#the-input-element>input</a></code>
38344 <p>The <var title="">x</var>-component must be a <a href=#valid-integer>valid
38353 <p>The <var title="">y</var>-component must be a <a href=#valid-integer>valid
38368 <p>The <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> attributes are <a href=#attributes-for-form-submission>attributes
38373 <p>The following common <code><a href=#the-input-element>input</a></code> element content
38375 <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
38376 <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
38377 <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
38378 <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
38379 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
38380 <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
38381 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
38382 <code title=attr-input-src><a href=#attr-input-src>src</a></code>, and
38383 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code> content attributes;
38384 <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute.</p>
38386 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute is
38387 in mode <a href=#dom-input-value-default title=dom-input-value-default>default</a>.</p>
38391 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
38392 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
38393 <code class=no-backref title=attr-input-checked><a href
38394 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
38395 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
38396 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
38397 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
38398 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
38399 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
38400 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
38401 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
38402 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
38403 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>, and
38404 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>.</p>
38406 <p>The element's <code title=attr-input-value><a href=#attr-input-value>value</a></code>
38411 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
38412 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
38413 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
38414 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
38415 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
38416 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
38417 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
38418 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
38419 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
38420 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
38421 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
38422 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
38424 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> and <code class=no-backref title=event-input-change><a href=#event-input-change>change</a></code> events do not apply.</p>
38429 the behavior of the <code><a href=#the-img-element>img</a></code> element. Readers are encouraged
38439 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a> state, the rules
38444 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a button
38446 element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute,
38449 some such.</span> The element is a <a href=#concept-button title=concept-button>button</a>.</p>
38453 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
38456 <p>The element's <a href=#activation-behavior>activation behavior</a>, if the element
38457 has a <a href=#form-owner>form owner</a>, is to <a href=#concept-form-reset title=concept-form-reset>reset</a> the <a href=#form-owner>form owner</a>;
38461 <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
38467 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute
38468 applies to this element and is in mode <a href=#dom-input-value-default title=dom-input-value-default>default</a>.</p>
38472 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
38473 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
38474 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
38475 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
38476 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
38477 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
38478 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
38479 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
38480 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
38481 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
38482 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
38483 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
38484 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
38485 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
38486 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
38487 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
38488 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
38489 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
38490 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
38491 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
38492 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
38493 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
38494 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
38498 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
38499 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
38500 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
38501 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
38502 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
38503 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
38504 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
38505 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
38506 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
38507 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
38508 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
38509 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
38511 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> and <code class=no-backref title=event-input-change><a href=#event-input-change>change</a></code> events do not apply.</p>
38520 <p>When an <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#button-state title=attr-input-type-button>Button</a> state, the rules in
38525 <p>The <code><a href=#the-input-element>input</a></code> element <a href=#represents>represents</a> a button
38527 <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, the button's
38529 empty string.</span> The element is a <a href=#concept-button title=concept-button>button</a>.</p>
38533 <p>If the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>,
38535 element's <a href=#activation-behavior>activation behavior</a> is to do nothing.</p>
38538 <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
38544 <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute
38545 applies to this element and is in mode <a href=#dom-input-value-default title=dom-input-value-default>default</a>.</p>
38549 <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
38550 <code class=no-backref title=attr-input-alt><a href=#attr-input-alt>alt</a></code>,
38551 <code class=no-backref title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>,
38552 <code class=no-backref title=attr-input-checked><a href=#attr-input-checked>checked</a></code>,
38553 <code class=no-backref title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>,
38554 <code class=no-backref title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>,
38555 <code class=no-backref title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>,
38556 <code class=no-backref title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>,
38557 <code class=no-backref title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>,
38558 <code class=no-backref title=attr-dim-height><a href=#attr-dim-height>height</a></code>,
38559 <code class=no-backref title=attr-input-list><a href=#attr-input-list>list</a></code>,
38560 <code class=no-backref title=attr-input-max><a href=#attr-input-max>max</a></code>,
38561 <code class=no-backref title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
38562 <code class=no-backref title=attr-input-min><a href=#attr-input-min>min</a></code>,
38563 <code class=no-backref title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>,
38564 <code class=no-backref title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>,
38565 <code class=no-backref title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>,
38566 <code class=no-backref title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>,
38567 <code class=no-backref title=attr-input-required><a href=#attr-input-required>required</a></code>,
38568 <code class=no-backref title=attr-input-size><a href=#attr-input-size>size</a></code>,
38569 <code class=no-backref title=attr-input-src><a href=#attr-input-src>src</a></code>,
38570 <code class=no-backref title=attr-input-step><a href=#attr-input-step>step</a></code>, and
38571 <code class=no-backref title=attr-dim-width><a href=#attr-dim-width>width</a></code>.</p>
38575 <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code>,
38576 <code class=no-backref title=dom-input-files><a href=#dom-input-files>files</a></code>,
38577 <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
38578 <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
38579 <code class=no-backref title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
38580 <code class=no-backref title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
38581 <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>, and
38582 <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> IDL attributes;
38583 <code class=no-backref title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>,
38584 <code class=no-backref title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>,
38585 <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code>, and
38586 <code class=no-backref title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods.</p>
38588 <p>The <code class=no-backref title=event-input-input><a href=#event-input-input>input</a></code> and <code class=no-backref title=event-input-change><a href=#event-input-change>change</a></code> events do not apply.</p>
38594 <h5 id=common-input-element-attributes><span class=secno>4.10.7.2 </span>Common <code><a href=#the-input-element>input</a></code> element attributes</h5>
38598 <p>These attributes only apply to an <code><a href=#the-input-element>input</a></code> element if
38599 its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in a
38601 attribute doesn't apply to an <code><a href=#the-input-element>input</a></code> element, user
38602 agents must <a href=#ignore>ignore</a> the attribute, regardless of the
38608 <h6 id=the-autocomplete-attribute><span class=secno>4.10.7.2.1 </span>The <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code> attribute</h6>
38615 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The attribute has
38624 <p>The <a href=#attr-input-autocomplete-off-state title=attr-input-autocomplete-off-state>off</a>
38634 <p>Conversely, the <a href=#attr-input-autocomplete-on-state title=attr-input-autocomplete-on-state>on</a> state indicates
38639 <p>The <a href=#attr-input-autocomplete-default-state title=attr-input-autocomplete-default-state>default</a> state
38640 indicates that the user agent is to use the <code title=attr-form-autocomplete><a href=#attr-form-autocomplete>autocomplete</a></code> attribute on the
38641 element's <a href=#form-owner>form owner</a> instead. (By default, the <code title=attr-form-autocomplete><a href=#attr-form-autocomplete>autocomplete</a></code> attribute of
38642 <code><a href=#the-form-element>form</a></code> elements is in the <a href=#attr-form-autocomplete-on-state title=attr-form-autocomplete-on-state>on</a> state.)</p>
38646 <p>Each <code><a href=#the-input-element>input</a></code> element has a <dfn id=resulting-autocompletion-state>resulting
38649 <p>When an <code><a href=#the-input-element>input</a></code> element is in one of the following
38650 conditions, the <code><a href=#the-input-element>input</a></code> element's <a href=#resulting-autocompletion-state>resulting
38652 <code><a href=#the-input-element>input</a></code> element's <a href=#resulting-autocompletion-state>resulting autocompletion
38655 <ul class=brief><li>Its <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>
38656 attribute is in the <a href=#attr-input-autocomplete-on-state title=attr-input-autocomplete-on-state>on</a> state.</li>
38658 <li>Its <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>
38659 attribute is in the <a href=#attr-input-autocomplete-default-state title=attr-input-autocomplete-default-state>default</a> state,
38660 and the element has no <a href=#form-owner>form owner</a>.</li>
38662 <li>Its <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>
38663 attribute is in the <a href=#attr-input-autocomplete-default-state title=attr-input-autocomplete-default-state>default</a> state,
38664 and the element's <a href=#form-owner>form owner</a>'s <code title=attr-form-autocomplete><a href=#attr-form-autocomplete>autocomplete</a></code> attribute is in
38665 the <a href=#attr-form-autocomplete-on-state title=attr-form-autocomplete-on-state>on</a>
38668 </ul><p>When an <code><a href=#the-input-element>input</a></code> element's <a href=#resulting-autocompletion-state>resulting
38672 should not remember the control's <a href=#concept-fe-value title=concept-fe-value>value</a>, and should not offer past
38675 <p>In addition, if the <a href=#resulting-autocompletion-state>resulting autocompletion state</a>
38676 is <i title="">off</i>, <a href=#history-autocomplete>values are
38677 reset</a> when <a href=#traverse-the-history title="traverse the history">traversing the
38681 agent acting as if the user had modified the element's <a href=#concept-fe-value title=concept-fe-value>value</a>, and must be done at a time
38682 where the element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>
38684 when the user agent <a href=#stop-parsing title="stop parsing">stops
38701 <p>A user agent may allow the user to override the <a href=#resulting-autocompletion-state>resulting
38704 override the <a href=#resulting-autocompletion-state>resulting autocompletion state</a> to <i title="">on</i> should not be trivially accessible, as there are
38712 <h6 id=the-list-attribute><span class=secno>4.10.7.2.2 </span>The <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute</h6>
38718 <p>If present, its value must be the ID of a <code><a href=#the-datalist-element>datalist</a></code>
38724 element</dfn> is the first element in the document in <a href=#tree-order>tree
38725 order</a> to have an ID equal to the value of the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute, if that element is a
38726 <code><a href=#the-datalist-element>datalist</a></code> element. If there is no <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute, or if there is no
38728 <code><a href=#the-datalist-element>datalist</a></code> element, then there is no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>.</p>
38730 <p>If there is a <a href=#concept-input-list title=concept-input-list>suggestions source
38732 edit the <code><a href=#the-input-element>input</a></code> element's <a href=#concept-fe-value title=concept-fe-value>value</a>, the user agent should offer
38733 the suggestions represented by the <a href=#concept-input-list title=concept-input-list>suggestions source element</a> to the
38735 agent may use the suggestion's <a href=#concept-option-label title=concept-option-label>label</a> to identify the suggestion
38737 <code><a href=#the-input-element>input</a></code> element's <a href=#concept-fe-value title=concept-fe-value>value</a> must be set to the selected
38738 suggestion's <a href=#concept-option-value title=concept-option-value>value</a>, as if
38742 the user would not be allowed to enter as the <code><a href=#the-input-element>input</a></code>
38743 element's <a href=#concept-fe-value title=concept-fe-value>value</a>, and should
38745 element to not <a href=#concept-fv-valid title=concept-fv-valid>satisfy its
38748 <hr><p>If the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute does
38749 not apply, there is no <a href=#concept-input-list title=concept-input-list>suggestions
38776 important to the content, then simply using a <code><a href=#the-datalist-element>datalist</a></code>
38777 element with children <code><a href=#the-option-element>option</a></code> elements is enough. To
38779 should be placed inside the <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute instead of
38795 fallback content can be placed inside the <code><a href=#the-datalist-element>datalist</a></code>
38818 support <code><a href=#the-datalist-element>datalist</a></code>. The options, on the other hand, will
38820 the <code><a href=#the-datalist-element>datalist</a></code> element.</p>
38822 <p>Note that if an <code><a href=#the-option-element>option</a></code> element used in a
38823 <code><a href=#the-datalist-element>datalist</a></code> is <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code>, it will be selected
38825 <code><a href=#the-select-element>select</a></code>), but it will not have any effect on the
38826 <code><a href=#the-input-element>input</a></code> element in UAs that support
38827 <code><a href=#the-datalist-element>datalist</a></code>.</p>
38833 <h6 id=the-readonly-attribute><span class=secno>4.10.7.2.3 </span>The <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute</h6>
38836 attribute is a <a href=#boolean-attribute>boolean attribute</a> that controls whether
38838 specified, the element is <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i>.</span></p>
38842 <p><strong>Constraint validation</strong>: If the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute is specified
38843 on an <code><a href=#the-input-element>input</a></code> element, the element is <a href=#barred-from-constraint-validation>barred from
38882 <h6 id=the-size-attribute><span class=secno>4.10.7.2.4 </span>The <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute</h6>
38887 the element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
38889 <p>The <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute, if
38890 specified, must have a value that is a <a href=#valid-non-negative-integer>valid non-negative
38896 the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a>, and if the
38900 <p>The <code title=dom-input-size><a href=#dom-input-size>size</a></code> IDL attribute is
38901 <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited to only non-negative numbers greater than
38908 <h6 id=the-required-attribute><span class=secno>4.10.7.2.5 </span>The <code title=attr-input-required><a href=#attr-input-required>required</a></code> attribute</h6>
38911 attribute is a <a href=#boolean-attribute>boolean attribute</a>. When specified, the
38916 <p><strong>Constraint validation</strong>: If the element is <i title=concept-input-required><a href=#concept-input-required>required</a></i>, and its <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL attribute applies and is in
38917 the mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>, and the
38918 element is <i title=concept-input-mutable><a href=#concept-input-mutable>mutable</a></i>, and the
38919 element's <a href=#concept-fe-value title=concept-fe-value>value</a> is the empty
38920 string, then the element is <a href=#suffering-from-being-missing>suffering from being
38950 <h6 id=the-multiple-attribute><span class=secno>4.10.7.2.6 </span>The <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code> attribute</h6>
38953 attribute is a <a href=#boolean-attribute>boolean attribute</a> that indicates whether
38987 the <code><a href=#the-datalist-element>datalist</a></code> element.</p>
39003 <h6 id=the-maxlength-attribute><span class=secno>4.10.7.2.7 </span>The <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code> attribute</h6>
39006 attribute<span class=impl>, when it applies,</span> is a <a href=#attr-fe-maxlength title=attr-fe-maxlength>form control <code title="">maxlength</code> attribute</a><span class=impl>
39007 controlled by the <code><a href=#the-input-element>input</a></code> element's <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value
39010 <p>If the <code><a href=#the-input-element>input</a></code> element has a <a href=#maximum-allowed-value-length>maximum allowed
39011 value length</a>, then the <a href=#code-point-length>code-point length</a> of the
39012 value of the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code>
39013 attribute must be equal to or less than the element's <a href=#maximum-allowed-value-length>maximum
39029 <h6 id=the-pattern-attribute><span class=secno>4.10.7.2.8 </span>The <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> attribute</h6>
39033 <a href=#concept-fe-value title=concept-fe-value>value</a> is to be checked.</p>
39035 <p>If specified, the attribute's value must match the JavaScript <i title="">Pattern</i> production. <a href=#refsECMA262>[ECMA262]</a></p>
39039 <p><strong>Constraint validation</strong>: If the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is not the empty string, and
39040 the element's <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>
39046 entirety of the element's <a href=#concept-fe-value title=concept-fe-value>value</a>, then the element is
39047 <a href=#suffering-from-a-pattern-mismatch>suffering from a pattern mismatch</a>. <a href=#refsECMA262>[ECMA262]</a></p>
39051 except that the <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>
39058 <p>When an <code><a href=#the-input-element>input</a></code> element has a <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> attribute specified,
39059 authors should include a <code title=attr-title><a href=#the-title-attribute>title</a></code>
39077 <p>When a control has a <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> attribute, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute, if used, must describe
39087 <p>UAs may still show the <code><a href=#the-title-element-0>title</a></code> in non-error situations
39089 authors should be careful not to word <code><a href=#the-title-element-0>title</a></code>s as if an
39094 <h6 id=the-min-and-max-attributes><span class=secno>4.10.7.2.9 </span>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> and <code title=attr-input-max><a href=#attr-input-max>max</a></code> attributes</h6>
39101 <p>Their syntax is defined by the section that defines the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state.</p>
39103 <p>If the element has a <code title=attr-input-min><a href=#attr-input-min>min</a></code>
39104 attribute, and the result of applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39105 string to a number</a> to the value of the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute is a number, then that
39106 number is the element's <dfn id=concept-input-min title=concept-input-min>minimum</dfn>; otherwise, if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state
39108 minimum</dfn>, then that is the <a href=#concept-input-min title=concept-input-min>minimum</a>; otherwise, the element has
39109 no <a href=#concept-input-min title=concept-input-min>minimum</a>.</p>
39112 <a href=#attr-input-min title=attr-input-min>minimum</a>, and the result of
39113 applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39114 string to a number</a> to the string given by the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is a number, and the number
39115 obtained from that algorithm is less than the <a href=#attr-input-min title=attr-input-min>minimum</a>, the element is
39116 <a href=#suffering-from-an-underflow>suffering from an underflow</a>.</p>
39118 <p>The <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute also
39119 defines the <a href=#concept-input-min-zero title=concept-input-min-zero>step
39122 <p>If the element has a <code title=attr-input-max><a href=#attr-input-max>max</a></code>
39123 attribute, and the result of applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39124 string to a number</a> to the value of the <code title=attr-input-max><a href=#attr-input-max>max</a></code> attribute is a number, then that
39125 number is the element's <dfn id=concept-input-max title=concept-input-max>maximum</dfn>; otherwise, if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state
39127 maximum</dfn>, then that is the <a href=#concept-input-max title=concept-input-max>maximum</a>; otherwise, the element has
39128 no <a href=#concept-input-max title=concept-input-max>maximum</a>.</p>
39131 <a href=#attr-input-max title=attr-input-max>maximum</a>, and the result of
39132 applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39133 string to a number</a> to the string given by the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is a number, and the number
39134 obtained from that algorithm is more than the <a href=#attr-input-max title=attr-input-max>maximum</a>, the element is
39135 <a href=#suffering-from-an-overflow>suffering from an overflow</a>.</p>
39139 <p>The <code title=attr-input-max><a href=#attr-input-max>max</a></code> attribute's value
39140 (the <a href=#concept-input-max title=concept-input-max>maximum</a>) must not be
39141 less than the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute's
39142 value (its <a href=#concept-input-min title=concept-input-min>minimum</a>).</p>
39146 <p class=note>If an element has a <a href=#attr-input-max title=attr-input-max>maximum</a> that is less than its <a href=#attr-input-min title=attr-input-min>minimum</a>, then so long as the element
39147 has a <a href=#concept-fe-value title=concept-fe-value>value</a>, it will either be
39148 <a href=#suffering-from-an-underflow>suffering from an underflow</a> or <a href=#suffering-from-an-overflow>suffering from an
39172 <h6 id=the-step-attribute><span class=secno>4.10.7.2.10 </span>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute</h6>
39176 of the <a href=#concept-fe-value title=concept-fe-value>value</a>, by limiting the
39178 <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state
39185 <p>The <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute, if
39186 specified, must either have a value that is a <a href=#valid-floating-point-number>valid floating
39187 point number</a> that <a href=#rules-for-parsing-floating-point-number-values title="rules for parsing floating
39189 zero, or must have a value that is an <a href=#ascii-case-insensitive>ASCII
39197 <ol><li>If the attribute is absent, then the <a href=#concept-input-step title=concept-input-step>allowed value step</a> is the <a href=#concept-input-step-default title=concept-input-step-default>default step</a> multiplied
39198 by the <a href=#concept-input-step-scale title=concept-input-step-scale>step scale
39201 <li>Otherwise, if the attribute's value is an <a href=#ascii-case-insensitive>ASCII
39202 case-insensitive</a> match for the string "<code title="">any</code>", then there is no <a href=#concept-input-step title=concept-input-step>allowed value step</a>.</li>
39204 <li>Otherwise, if the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point number
39206 return an error, zero, or a number less than zero, then the <a href=#concept-input-step title=concept-input-step>allowed value step</a> is the <a href=#concept-input-step-default title=concept-input-step-default>default step</a> multiplied
39207 by the <a href=#concept-input-step-scale title=concept-input-step-scale>step scale
39210 <li>Otherwise, the <a href=#concept-input-step title=concept-input-step>allowed value
39211 step</a> is the number returned by the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing
39213 href=#concept-input-step-scale title=concept-input-step-scale>step scale factor</a>.</li>
39216 result of applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39217 string to a number</a> to the value of the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute, unless the element does
39218 not have a <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute
39220 which case the <a href=#concept-input-min-zero title=concept-input-min-zero>step base</a>
39221 is the <a href=#concept-input-step-default-base title=concept-input-step-default-base>default step
39225 <a href=#concept-input-step title=concept-input-step>allowed value step</a>, and the
39226 result of applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39227 string to a number</a> to the string given by the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is a number, and that
39228 number subtracted from the <a href=#concept-input-min-zero title=concept-input-min-zero>step
39229 base</a> is not an integral multiple of the <a href=#concept-input-step title=concept-input-step>allowed value step</a>, the element is
39230 <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>.</p>
39259 <h6 id=the-placeholder-attribute><span class=secno>4.10.7.2.11 </span>The <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code> attribute</h6>
39270 <p class=note>For a longer hint or other advisory text, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute is more appropriate.</p>
39272 <p>The <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>
39274 <code><a href=#the-label-element>label</a></code>.</p>
39279 <a href=#strip-line-breaks title="strip line breaks">stripped line breaks</a> from it,
39280 when the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is
39289 uses the <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>
39304 <h5 id=common-input-element-apis><span class=secno>4.10.7.3 </span>Common <code><a href=#the-input-element>input</a></code> element APIs</h5>
39306 <dl class=domintro><dt><var title="">input</var> . <code title=dom-input-value><a href=#dom-input-value>value</a></code> [ = <var title="">value</var> ]</dt>
39310 <p>Returns the current <a href=#concept-fe-value title=concept-fe-value>value</a>
39315 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if it is
39321 <dt><var title="">input</var> . <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> [ = <var title="">value</var> ]</dt>
39325 <p>Returns the current <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the form
39328 <p>Can be set, to change the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a>.</p>
39332 <dt><var title="">input</var> . <code title=dom-input-files><a href=#dom-input-files>files</a></code></dt>
39336 <p>Returns a <code>FileList</code> object listing the <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a> of
39339 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the
39344 <dt><var title="">input</var> . <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> [ = <var title="">value</var> ]</dt>
39349 control's <a href=#concept-fe-value title=concept-fe-value>value</a>, if
39354 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the
39359 <dt><var title="">input</var> . <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> [ = <var title="">value</var> ]</dt>
39363 <p>Returns a number representing the form control's <a href=#concept-fe-value title=concept-fe-value>value</a>, if applicable; otherwise,
39368 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the
39373 <dt><var title="">input</var> . <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp</a></code>( [ <var title="">n</var> ] )</dt>
39374 <dt><var title="">input</var> . <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown</a></code>( [ <var title="">n</var> ] )</dt>
39378 <p>Changes the form control's <a href=#concept-fe-value title=concept-fe-value>value</a> by the value given in the
39379 <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute, multiplied by
39382 <p>Throws <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if the control
39383 is neither date- or time-based nor numeric, if the <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute's value is "<code title="">any</code>", if the current <a href=#concept-fe-value title=concept-fe-value>value</a> could not be parsed, or if
39389 <dt><var title="">input</var> . <code title=dom-input-list><a href=#dom-input-list>list</a></code></dt>
39393 <p>Returns the <code><a href=#the-datalist-element>datalist</a></code> element indicated by the
39394 <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute.</p>
39398 <dt><var title="">input</var> . <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code></dt>
39402 <p>Returns the <code><a href=#the-option-element>option</a></code> element from the
39403 <code><a href=#the-datalist-element>datalist</a></code> element indicated by the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute that matches the
39404 form control's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
39411 attribute allows scripts to manipulate the <a href=#concept-fe-value title=concept-fe-value>value</a> of an <code><a href=#the-input-element>input</a></code>
39417 <dd>On getting, it must return the current <a href=#concept-fe-value title=concept-fe-value>value</a> of the element. On setting,
39418 it must set the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the new value, set the
39419 element's <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value
39420 flag</a> to true, and then invoke the <a href=#value-sanitization-algorithm>value sanitization
39421 algorithm</a>, if the element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state
39426 <dd>On getting, if the element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, it must return
39428 string. On setting, it must set the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute to the new
39433 <dd>On getting, if the element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, it must return
39434 that attribute's value; otherwise, it must return the string "<code title="">on</code>". On setting, it must set the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute to the new
39440 file in the list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>, if
39442 new value is the empty string, it must empty the list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>;
39443 otherwise, it must throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code>
39447 attribute allows scripts to manipulate the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of an
39448 <code><a href=#the-input-element>input</a></code> element. On getting, it must return the current
39449 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the element;
39450 and on setting, it must set the element's <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> to the new value and
39451 set the element's <a href=#concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
39455 attribute allows scripts to access the element's <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>. On
39457 <code>FileList</code> object that represents the current <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>. The
39458 same object must be returned until the list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>
39460 throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception. <a href=#refsFILEAPI>[FILEAPI]</a></p>
39463 attribute represents the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element, interpreted
39466 <p>On getting, if the <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> attribute does not
39467 apply, as defined for the <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state, then
39468 return null. Otherwise, run the <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
39473 <p>On setting, if the <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> attribute does not
39474 apply, as defined for the <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state, then
39475 throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception; otherwise, if
39476 the new value is null, then set the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element to the empty
39477 string; otherwise, run the <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
39479 state, on the new value, and set the <a href=#concept-fe-value title=concept-fe-value>value</a> of the element to resulting
39483 attribute represents the <a href=#concept-fe-value title=concept-fe-value>value</a>
39486 <p>On getting, if the <code title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> attribute does
39487 not apply, as defined for the <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state, then
39488 return a Not-a-Number (NaN) value. Otherwise, if the <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAs<em>Date</em></a></code>
39489 attribute applies, run the <a href=#concept-input-value-string-date title=concept-input-value-string-date>algorithm to convert a
39495 (NaN) value. Otherwise, run the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39500 <p>On setting, if the <code title=dom-input-valueAsNumber><a href
39501 not apply, as defined for the <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state, then
39502 throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception. Otherwise, if
39503 the <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAs<em>Date</em></a></code>
39504 attribute applies, run the <a href=#concept-input-value-date-string title=concept-input-value-date-string>algorithm to convert a
39507 new value, and set the <a href=#concept-fe-value title=concept-fe-value>value</a>
39508 of the element to resulting string. Otherwise, run the <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
39510 value, and set the <a href=#concept-fe-value title=concept-fe-value>value</a> of
39516 <ol><li><p>If the <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
39517 <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code> methods do not
39518 apply, as defined for the <code><a href=#the-input-element>input</a></code> element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state, then
39519 throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception, and abort these
39522 <li><p>If the element has no <a href=#concept-input-step title=concept-input-step>allowed value step</a>, then throw an
39523 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception, and abort these
39526 <li><p>If applying the <a href=#concept-input-value-string-number title=concept-input-value-string-number>algorithm to convert a
39528 <a href=#concept-fe-value title=concept-fe-value>value</a> results in an error,
39529 then throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception, and abort
39536 <li><p>Let <var title="">delta</var> be the <a href=#concept-input-step title=concept-input-step>allowed value step</a> multiplied by
39539 <li><p>If the method invoked was the <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> method, negate <var title="">delta</var>.</li>
39542 <li><p>If the element has a <a href=#concept-input-min title=concept-input-min>minimum</a>, and the <var title="">value</var> is less than that <a href=#concept-input-min title=concept-input-min>minimum</a>, then throw a
39543 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception.</li>
39545 <li><p>If the element has a <a href=#concept-input-max title=concept-input-max>maximum</a>, and the <var title="">value</var> is greater than that <a href=#concept-input-max title=concept-input-max>maximum</a>, then throw a
39546 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception.</li>
39549 running the <a href=#concept-input-value-number-string title=concept-input-value-number-string>algorithm to convert a
39550 number to a string</a>, as defined for the <code><a href=#the-input-element>input</a></code>
39551 element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's
39554 <li><p>Set the <a href=#concept-fe-value title=concept-fe-value>value</a> of the
39558 attribute must return the current <a href=#concept-input-list title=concept-input-list>suggestions source element</a>, if
39562 IDL attribute must return the first <code><a href=#the-option-element>option</a></code> element, in
39563 <a href=#tree-order>tree order</a>, to be a child of the <a href=#concept-input-list title=concept-input-list>suggestions source element</a> and
39564 whose <a href=#concept-option-value title=concept-option-value>value</a> matches the
39565 <code><a href=#the-input-element>input</a></code> element's <a href=#concept-fe-value title=concept-fe-value>value</a>, if any. If there is no <a href=#concept-input-list title=concept-input-list>suggestions source element</a>, or if
39566 it contains no matching <code><a href=#the-option-element>option</a></code> element, then the <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code> attribute
39577 event applies, any time the user causes the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to change, the user agent must
39578 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> that
39580 <code><a href=#the-input-element>input</a></code> element, then <a href=#broadcast-forminput-events>broadcast <code title=event-forminput>forminput</code> events</a> at the
39581 <code><a href=#the-input-element>input</a></code> element's <a href=#form-owner>form owner</a>. User agents
39588 <p class=example>Examples of a user changing the element's <a href=#concept-fe-value title=concept-fe-value>value</a> would include the user typing
39596 if the element does not have an <a href=#activation-behavior>activation behavior</a>
39599 <a href=#concept-fe-value title=concept-fe-value>value</a> or list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>, the
39600 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
39601 event</a> that bubbles named <code title=event-change>change</code> at the <code><a href=#the-input-element>input</a></code>
39602 element, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
39603 <code><a href=#the-input-element>input</a></code> element's <a href=#form-owner>form owner</a>.</p>
39606 action would be a <a href=#file-upload-state title=attr-input-type-file>File
39609 <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>file selection</a>
39610 changed as a result, then the user has committed a new <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>file selection</a>.</p>
39613 action would be a <a href=#date-state title=attr-input-type-date>Date</a>
39619 <p>When the user agent changes the element's <a href=#concept-fe-value title=concept-fe-value>value</a> on behalf of the user (e.g. as
39623 <ol><li>If the <code title=event-input-input><a href=#event-input-input>input</a></code> event
39624 applies, <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
39625 event</a> that bubbles named <code title=event-input>input</code> at the <code><a href=#the-input-element>input</a></code>
39628 <li>If the <code title=event-input-input><a href=#event-input-input>input</a></code> event
39629 applies, <a href=#broadcast-forminput-events>broadcast <code title=event-forminput>forminput</code> events</a> at the
39630 <code><a href=#the-input-element>input</a></code> element's <a href=#form-owner>form owner</a>.</li>
39632 <li>If the <code title=event-input-change><a href=#event-input-change>change</a></code> event
39633 applies, <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
39634 event</a> that bubbles named <code title=event-change>change</code> at the <code><a href=#the-input-element>input</a></code>
39637 <li>If the <code title=event-input-change><a href=#event-input-change>change</a></code> event
39638 applies, <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
39639 <code><a href=#the-input-element>input</a></code> element's <a href=#form-owner>form owner</a>.</li>
39641 </ol><p class=note>In addition, when the <code title=event-input-change><a href=#event-input-change>change</a></code> event applies, <code title=event-change>change</code> events can also be fired as part
39642 of the element's <a href=#activation-behavior>activation behavior</a> and as part of the
39643 <a href=#unfocusing-steps>unfocusing steps</a>.</p>
39645 <p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#user-interaction-task-source>user interaction task
39655 <dd><a href=#flow-content>Flow content</a>.</dd>
39656 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
39657 <dd><a href=#interactive-content>Interactive content</a>.</dd>
39658 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-label title=category-label>labelable</a>, and <a href=#category-submit title=category-submit>submittable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
39660 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
39662 <dd><a href=#phrasing-content>Phrasing content</a>, but there must be no <a href=#interactive-content>interactive content</a> descendant.</dd>
39664 <dd><a href=#global-attributes>Global attributes</a></dd>
39665 <dd><code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code></dd>
39666 <dd><code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code></dd>
39667 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
39668 <dd><code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code></dd>
39669 <dd><code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code></dd>
39670 <dd><code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code></dd>
39671 <dd><code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code></dd>
39672 <dd><code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code></dd>
39673 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
39674 <dd><code title=attr-button-type><a href=#attr-button-type>type</a></code></dd>
39675 <dd><code title=attr-button-value><a href=#attr-button-value>value</a></code></dd>
39678 <pre class=idl>interface <dfn id=htmlbuttonelement>HTMLButtonElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
39679 attribute boolean <a href=#dom-fe-autofocus title=dom-fe-autofocus>autofocus</a>;
39680 attribute boolean <a href=#dom-fe-disabled title=dom-fe-disabled>disabled</a>;
39681 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
39682 attribute DOMString <a href=#dom-fs-formaction title=dom-fs-formAction>formAction</a>;
39683 attribute DOMString <a href=#dom-fs-formenctype title=dom-fs-formEnctype>formEnctype</a>;
39684 attribute DOMString <a href=#dom-fs-formmethod title=dom-fs-formMethod>formMethod</a>;
39685 attribute DOMString <a href=#dom-fs-formnovalidate title=dom-fs-formNoValidate>formNoValidate</a>;
39686 attribute DOMString <a href=#dom-fs-formtarget title=dom-fs-formTarget>formTarget</a>;
39687 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
39688 attribute DOMString <a href=#dom-button-type title=dom-button-type>type</a>;
39689 attribute DOMString <a href=#dom-button-value title=dom-button-value>value</a>;
39691 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
39692 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
39693 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
39694 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
39695 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
39697 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
39700 </dl><p>The <code><a href=#the-button-element>button</a></code> element <a href=#represents>represents</a> a
39701 button. <span class=impl>If the element is not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, then the user agent
39704 <p>The element is a <a href=#concept-button title=concept-button>button</a>.</p>
39708 It is an <a href=#enumerated-attribute>enumerated attribute</a>. The following table
39717 <td><a href=#attr-button-type-submit-state title=attr-button-type-submit-state>Submit Button</a>
39720 <td><a href=#attr-button-type-reset-state title=attr-button-type-reset-state>Reset Button</a>
39723 <td><a href=#attr-button-type-button-state title=attr-button-type-button-state>Button</a>
39725 </table><p>The <i>missing value default</i> is the <a href=#attr-button-type-submit-state title=attr-button-type-submit-state>Submit Button</a>
39728 <p>If the <code title=attr-button-type><a href=#attr-button-type>type</a></code> attribute is in
39729 the <a href=#attr-button-type-submit-state title=attr-button-type-submit-state>Submit Button</a>
39730 state, the element is specifically a <a href=#concept-submit-button title=concept-submit-button>submit button</a>.</p>
39734 <p><strong>Constraint validation</strong>: If the <code title=attr-button-type><a href=#attr-button-type>type</a></code> attribute is in the <a href=#attr-button-type-reset-state title=attr-button-type-reset-state>Reset Button</a> state or
39735 the <a href=#attr-button-type-button-state title=attr-button-type-button-state>Button</a> state,
39736 the element is <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
39738 <p>If the element is not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, the <a href=#activation-behavior>activation
39739 behavior</a> of the <code><a href=#the-button-element>button</a></code> element is to run the
39741 element's <code title=attr-button-type><a href=#attr-button-type>type</a></code> attribute.</p>
39745 <dd><p>If the element has a <a href=#form-owner>form owner</a>, the element
39746 must <a href=#concept-form-submit title=concept-form-submit>submit</a> the <a href=#form-owner>form
39747 owner</a> from the <code><a href=#the-button-element>button</a></code> element.</dd>
39751 <dd><p>If the element has a <a href=#form-owner>form owner</a>, the element
39752 must <a href=#concept-form-reset title=concept-form-reset>reset</a> the <a href=#form-owner>form
39761 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
39762 explicitly associate the <code><a href=#the-button-element>button</a></code> element with its
39763 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
39764 attribute represents the element's name. The <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is used to make
39766 submitted. The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>
39767 attribute controls focus. The <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> attributes are
39768 <a href=#attributes-for-form-submission>attributes for form submission</a>.</p>
39770 <p class=note>The <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code> attribute can
39774 <p>The <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> must not be specified
39775 if the element's <code title=attr-button-type><a href=#attr-button-type>type</a></code>
39776 attribute is not in the <a href=#attr-button-type-submit-state title=attr-button-type-submit-state>Submit Button</a>
39781 submission. The element's <a href=#concept-fe-value title=concept-fe-value>value</a> is the value of the element's
39782 <code title=attr-button-value><a href=#attr-button-value>value</a></code> attribute, if there is
39793 must <a href=#reflect>reflect</a> the respective content attributes of the
39796 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
39797 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
39798 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
39799 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
39800 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fe-autofocus><a href=#dom-fe-autofocus>autofocus</a></code>, <code title=dom-fe-disabled><a href=#dom-fe-disabled>disabled</a></code>, <code title=dom-fae-form><a href=#dom-fae-form>form</a></code>, and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
39823 <dd><a href=#flow-content>Flow content</a>.</dd>
39824 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
39825 <dd><a href=#interactive-content>Interactive content</a>.</dd>
39826 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-label title=category-label>labelable</a>, <a href=#category-submit title=category-submit>submittable</a>, and <a href=#category-reset title=category-reset>resettable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
39828 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
39830 <dd>Zero or more <code><a href=#the-option-element>option</a></code> or <code><a href=#the-optgroup-element>optgroup</a></code> elements.</dd>
39832 <dd><a href=#global-attributes>Global attributes</a></dd>
39833 <dd><code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code></dd>
39834 <dd><code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code></dd>
39835 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
39836 <dd><code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code></dd>
39837 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
39838 <dd><code title=attr-select-size><a href=#attr-select-size>size</a></code></dd>
39841 <pre class=idl>interface <dfn id=htmlselectelement>HTMLSelectElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
39842 attribute boolean <a href=#dom-fe-autofocus title=dom-fe-autofocus>autofocus</a>;
39843 attribute boolean <a href=#dom-fe-disabled title=dom-fe-disabled>disabled</a>;
39844 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
39845 attribute boolean <a href=#dom-select-multiple title=dom-select-multiple>multiple</a>;
39846 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
39847 attribute unsigned long <a href=#dom-select-size title=dom-select-size>size</a>;
39849 readonly attribute DOMString <a href=#dom-select-type title=dom-select-type>type</a>;
39851 readonly attribute <a href=#htmloptionscollection>HTMLOptionsCollection</a> <a href=#dom-select-options title=dom-select-options>options</a>;
39852 attribute unsigned long <a href=#dom-select-length title=dom-select-length>length</a>;
39853 caller getter any <a href=#dom-select-item title=dom-select-item>item</a>(in unsigned long index);
39854 caller getter any <a href=#dom-select-nameditem title=dom-select-namedItem>namedItem</a>(in DOMString name);
39855 void <a href=#dom-select-add title=dom-select-add>add</a>(in <a href=#htmlelement>HTMLElement</a> element, in optional <a href=#htmlelement>HTMLElement</a> before);
39856 void <a href=#dom-select-add title=dom-select-add>add</a>(in <a href=#htmlelement>HTMLElement</a> element, in long before);
39857 void <a href=#dom-select-remove title=dom-select-remove>remove</a>(in long index);
39859 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-select-selectedoptions title=dom-select-selectedOptions>selectedOptions</a>;
39860 attribute long <a href=#dom-select-selectedindex title=dom-select-selectedIndex>selectedIndex</a>;
39861 attribute DOMString <a href=#dom-select-value title=dom-select-value>value</a>;
39863 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
39864 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
39865 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
39866 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
39867 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
39869 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
39882 --><p>The <code><a href=#the-select-element>select</a></code> element represents a control for
39886 attribute is a <a href=#boolean-attribute>boolean attribute</a>. If the attribute is
39887 present, then the <code><a href=#the-select-element>select</a></code> element
39888 <a href=#represents>represents</a> a control for selecting zero or more options
39889 from the <a href=#concept-select-option-list title=concept-select-option-list>list of
39891 <code><a href=#the-select-element>select</a></code> element <a href=#represents>represents</a> a control for
39892 selecting a single option from the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>.</p>
39895 for a <code><a href=#the-select-element>select</a></code> element consists of all the
39896 <code><a href=#the-option-element>option</a></code> element children of the <code><a href=#the-select-element>select</a></code>
39897 element, and all the <code><a href=#the-option-element>option</a></code> element children of all the
39898 <code><a href=#the-optgroup-element>optgroup</a></code> element children of the <code><a href=#the-select-element>select</a></code>
39899 element, in <a href=#tree-order>tree order</a>.</p>
39902 attribute gives the number of options to show to the user. The <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute, if specified, must
39903 have a value that is a <a href=#valid-non-negative-integer>valid non-negative integer</a>
39904 greater than zero. If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is present,
39905 then the <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute's
39906 default value is 4. If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is absent,
39907 then the <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute's
39913 <code><a href=#the-select-element>select</a></code> element is the result of applying the
39914 <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a> to the value of
39915 element's <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute, if it
39917 attribute's value is not successful, or if the <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute is absent, the
39918 element's <a href=#concept-select-size title=concept-select-size>display size</a> is
39921 <p>If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
39922 attribute is absent, and the element is not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, then the user agent
39923 should allow the user to pick an <code><a href=#the-option-element>option</a></code> element in its
39924 <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> that
39925 is itself not <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>. Upon this
39926 <code><a href=#the-option-element>option</a></code> element being <dfn id=concept-select-pick title=concept-select-pick>picked</dfn> (either through a click, or
39928 a <a href=#using-the-option-element-to-define-a-command title=option-command>menu command</a>, or through any
39931 <code title=event-click><a href=#event-click>click</a></code> event), the user agent must
39932 set the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of the
39933 picked <code><a href=#the-option-element>option</a></code> element to true and then <a href=#queue-a-task>queue a
39934 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> that bubbles named
39935 href=#the-select-element>select</a></code>
39936 element, using the <a href=#user-interaction-task-source>user interaction task source</a> as the
39937 task source, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
39938 element's <a href=#form-owner>form owner</a>.</p>
39940 <p>If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
39941 attribute is absent, whenever an <code><a href=#the-option-element>option</a></code> element in the
39942 <code><a href=#the-select-element>select</a></code> element's <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> has its
39943 <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to
39944 true, and whenever an <code><a href=#the-option-element>option</a></code> element with its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to true
39945 is added to the <code><a href=#the-select-element>select</a></code> element's <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, the user
39946 agent must set the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of all the
39947 other <code><a href=#the-option-element>option</a></code> element in its <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> to
39950 <p>If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
39951 attribute is absent and the element's <a href=#concept-select-size title=concept-select-size>display size</a> is greater than 1,
39953 <code><a href=#the-option-element>option</a></code> whose <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is true, if
39956 interaction event spec point --> is queued (e.g. before the <code title=event-click><a href=#event-click>click</a></code> event), the user agent must set the
39957 <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of
39958 that <code><a href=#the-option-element>option</a></code> element to false and then <a href=#queue-a-task>queue a
39959 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> that bubbles named
39960 <code title=event-change>change</code> at the <code><a href=#the-select-element>select</a></code>
39961 element, using the <a href=#user-interaction-task-source>user interaction task source</a> as the
39962 task source, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
39963 element's <a href=#form-owner>form owner</a>.</p>
39965 <p>If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
39966 attribute is absent and the element's <a href=#concept-select-size title=concept-select-size>display size</a> is 1, then whenever
39967 there are no <code><a href=#the-option-element>option</a></code> elements in the <code><a href=#the-select-element>select</a></code>
39968 element's <a href=#concept-select-option-list title=concept-select-option-list>list of
39969 options</a> that have their <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to true,
39970 the user agent must set the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of the first
39971 <code><a href=#the-option-element>option</a></code> element in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> in
39972 <a href=#tree-order>tree order</a> that is not <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>, if any, to
39975 <p>If the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
39976 attribute is present, and the element is not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, then the user agent
39977 should allow the user to <dfn id=concept-select-toggle title=concept-select-toggle>toggle</dfn> the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of the
39978 <code><a href=#the-option-element>option</a></code> elements in its <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> that are
39979 themselves not <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>
39980 (either through a click, or through a <a href=#using-the-option-element-to-define-a-command title=option-command>menu command</a>, or any other
39981 mechanism). Upon the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of one or
39982 more <code><a href=#the-option-element>option</a></code> elements being changed by the user, and
39984 spec point --> is queued (e.g. before a related <code title=event-click><a href=#event-click>click</a></code> event), the user agent must
39985 <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> that
39987 <code><a href=#the-select-element>select</a></code> element, using the <a href=#user-interaction-task-source>user interaction task
39988 source</a> as the task source, then <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> at the
39989 element's <a href=#form-owner>form owner</a>.</p>
39991 <p>The <a href=#concept-form-reset-control title=concept-form-reset-control>reset
39992 algorithm</a> for <code><a href=#the-select-element>select</a></code> elements is to go through
39993 all the <code><a href=#the-option-element>option</a></code> elements in the element's <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, and set
39994 their <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a>
39995 to true if the <code><a href=#the-option-element>option</a></code> element has a <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute, and false
40000 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
40001 explicitly associate the <code><a href=#the-select-element>select</a></code> element with its
40002 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
40003 attribute represents the element's name. The <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is used to make
40005 submitted. The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>
40008 <dl class=domintro><dt><var title="">select</var> . <code title=dom-select-type><a href=#dom-select-type>type</a></code></dt>
40013 has a <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>
40019 <dt><var title="">select</var> . <code title=dom-select-options><a href=#dom-select-options>options</a></code></dt>
40023 <p>Returns an <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code> of the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>.</p>
40027 <dt><var title="">select</var> . <code title=dom-select-length><a href=#dom-select-length>length</a></code> [ = <var title="">value</var> ]</dt>
40029 <p>Returns the number of elements in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>.</p>
40030 <p>When set to a smaller number, truncates the number of <code><a href=#the-option-element>option</a></code> elements in the <code><a href=#the-select-element>select</a></code>.</p>
40031 <p>When set to a greater number, adds new blank <code><a href=#the-option-element>option</a></code> elements to the <code><a href=#the-select-element>select</a></code>.</p>
40034 <dt><var title="">element</var> = <var title="">select</var> . <code title=dom-select-item><a href=#dom-select-item>item</a></code>(<var title="">index</var>)</dt>
40038 <p>Returns the item with index <var title="">index</var> from the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>. The items are sorted in <a href=#tree-order>tree order</a>.</p>
40042 <dt><var title="">element</var> = <var title="">select</var> . <code title=dom-select-item><a href=#dom-select-item>namedItem</a></code>(<var title="">name</var>)</dt>
40046 <p>Returns the item with ID or <code title=attr-option-name><a href=#attr-option-name>name</a></code> <var title="">name</var> from the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>.</p>
40047 <p>If there are multiple matching items, then a <code><a href=#nodelist>NodeList</a></code> object containing all those elements is returned.</p>
40051 <dt><var title="">select</var> . <code title=dom-select-add><a href=#dom-select-add>add</a></code>(<var title="">element</var> [, <var title="">before</var> ])</dt>
40056 with that number, or an element from the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, in
40062 <p>This method will throw a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code>
40064 element into which it is to be inserted. If <var title="">element</var> is not an <code><a href=#the-option-element>option</a></code> or
40065 <code><a href=#the-optgroup-element>optgroup</a></code> element, then the method does nothing.</p>
40068 <dt><var title="">select</var> . <code title=dom-select-selectedOptions><a href=#dom-select-selectedoptions>selectedOptions</a></code></dt>
40072 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> that are
40077 <dt><var title="">select</var> . <code title=dom-select-selectedIndex><a href=#dom-select-selectedindex>selectedIndex</a></code> [ = <var title="">value</var> ]</dt>
40088 <dt><var title="">select</var> . <code title=dom-select-value><a href=#dom-select-value>value</a></code> [ = <var title="">value</var> ]</dt>
40092 <p>Returns the <a href=#concept-fe-value title=concept-fe-value>value</a> of the
40103 attribute, on getting, must return the string "<code title="">select-one</code>" if the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is absent,
40104 and the string "<code title="">select-multiple</code>" if the <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is
40108 IDL attribute must return an <code><a href=#htmloptionscollection>HTMLOptionsCollection</a></code>
40109 rooted at the <code><a href=#the-select-element>select</a></code> node, whose filter matches the
40110 elements in the <a href=#concept-select-option-list title=concept-select-option-list>list of
40113 <p>The <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection is
40114 also mirrored on the <code><a href=#htmlselectelement>HTMLSelectElement</a></code> object. The
40117 <code title=dom-select-options><a href=#dom-select-options>options</a></code> attribute at that
40120 <code title=dom-select-options><a href=#dom-select-options>options</a></code> attribute at that
40124 attribute must return the number of nodes <a href=#represented-by-the-collection title="represented
40125 by the collection">represented</a> by the <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection. On setting, it
40126 must act like the attribute of the same name on the <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection.</p>
40129 returned by the method of the same name on the <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection, when invoked
40133 returned by the method of the same name on the <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection, when invoked
40137 act like their namesake methods on that same <code title=dom-select-options><a href=#dom-select-options>options</a></code> collection.</p>
40140 IDL attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at
40141 the <code><a href=#the-select-element>select</a></code> node, whose filter matches the elements in
40142 the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>
40143 that have their <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to
40147 IDL attribute, on getting, must return the <a href=#concept-option-index title=concept-option-index>index</a> of the first
40148 <code><a href=#the-option-element>option</a></code> element in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> in
40149 <a href=#tree-order>tree order</a> that has its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to true,
40152 <p>On setting, the <code title=dom-select-selectedIndex><a href=#dom-select-selectedindex>selectedIndex</a></code> attribute must
40153 href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of all the
40154 <code><a href=#the-option-element>option</a></code> elements in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> to false,
40155 and then the <code><a href=#the-option-element>option</a></code> element in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> whose
40156 <a href=#concept-option-index title=concept-option-index>index</a> is the given new
40157 value, if any, must have its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to
40161 attribute, on getting, must return the <a href=#concept-option-value title=concept-option-value>value</a> of the first
40162 <code><a href=#the-option-element>option</a></code> element in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> in
40163 <a href=#tree-order>tree order</a> that has its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to true,
40167 <p>On setting, the <code title=dom-select-value><a href=#dom-select-value>value</a></code>
40168 attribute must set the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of all the
40169 <code><a href=#the-option-element>option</a></code> elements in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> to false,
40170 and then first the <code><a href=#the-option-element>option</a></code> element in the <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, in
40171 <a href=#tree-order>tree order</a>, whose <a href=#concept-option-value title=concept-option-value>value</a> is equal to the given new
40172 value, if any, must have its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to
40177 attributes must <a href=#reflect>reflect</a> the respective content
40178 attributes of the same name. The <code title=dom-select-size><a href=#dom-select-size>size</a></code> IDL attribute <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited to
40181 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
40182 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
40183 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
40184 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
40185 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fe-autofocus><a href=#dom-fe-autofocus>autofocus</a></code>, <code title=dom-fe-disabled><a href=#dom-fe-disabled>disabled</a></code>, <code title=dom-fae-form><a href=#dom-fae-form>form</a></code>, and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
40192 <p>The following example shows how a <code><a href=#the-select-element>select</a></code> element
40233 <dd><a href=#flow-content>Flow content</a>.</dd>
40234 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
40236 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
40238 <dd>Either: <a href=#phrasing-content>phrasing content</a>.</dd>
40239 <dd>Or: Zero or more <code><a href=#the-option-element>option</a></code> elements.</dd>
40241 <dd><a href=#global-attributes>Global attributes</a></dd>
40244 <pre class=idl>interface <dfn id=htmldatalistelement>HTMLDataListElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
40245 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-datalist-options title=dom-datalist-options>options</a>;
40248 </dl><p>The <code><a href=#the-datalist-element>datalist</a></code> element represents a set of
40249 <code><a href=#the-option-element>option</a></code> elements that represent predefined options for
40251 content for legacy user agents, intermixed with <code><a href=#the-option-element>option</a></code>
40253 the <code><a href=#the-datalist-element>datalist</a></code> element <a href=#represents>represents</a>
40257 <p>The <code><a href=#the-datalist-element>datalist</a></code> element is hooked up to an
40258 <code><a href=#the-input-element>input</a></code> element using the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute on the
40259 <code><a href=#the-input-element>input</a></code> element. <!-- v2DATAGRID The
40265 <p>Each <code><a href=#the-option-element>option</a></code> element that is a descendant of the
40266 <code><a href=#the-datalist-element>datalist</a></code> element, that is not <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>, and whose <a href=#concept-option-value title=concept-option-value>value</a> is a string that isn't the
40267 empty string, represents a suggestion. Each suggestion has a <a href=#concept-option-value title=concept-option-value>value</a> and a <a href=#concept-option-label title=concept-option-label>label</a>.
40269 <dl class=domintro><dt><var title="">datalist</var> . <code title=dom-datalist-options><a href=#dom-datalist-options>options</a></code></dt>
40272 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the <code>options</code> elements of the table.</p>
40278 IDL attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at
40279 the <code><a href=#the-datalist-element>datalist</a></code> node, whose filter matches
40280 <code><a href=#the-option-element>option</a></code> elements.</p>
40283 <code><a href=#the-datalist-element>datalist</a></code> element ancestor, it is <a href=#barred-from-constraint-validation>barred from
40294 <dd>As a child of a <code><a href=#the-select-element>select</a></code> element.</dd>
40296 <dd>Zero or more <code><a href=#the-option-element>option</a></code> elements.</dd>
40298 <dd><a href=#global-attributes>Global attributes</a></dd>
40299 <dd><code title=attr-optgroup-disabled><a href=#attr-optgroup-disabled>disabled</a></code></dd>
40300 <dd><code title=attr-optgroup-label><a href=#attr-optgroup-label>label</a></code></dd>
40303 <pre class=idl>interface <dfn id=htmloptgroupelement>HTMLOptGroupElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
40304 attribute boolean <a href=#dom-optgroup-disabled title=dom-optgroup-disabled>disabled</a>;
40305 attribute DOMString <a href=#dom-optgroup-label title=dom-optgroup-label>label</a>;
40308 </dl><!-- v2: make optgroups selectable if they have a value. --><p>The <code><a href=#the-optgroup-element>optgroup</a></code> element <a href=#represents>represents</a> a group of
40309 <code><a href=#the-option-element>option</a></code> elements with a common label.</p>
40311 <p>The element's group of <code><a href=#the-option-element>option</a></code> elements consists of
40312 the <code><a href=#the-option-element>option</a></code> elements that are children of the
40313 <code><a href=#the-optgroup-element>optgroup</a></code> element.</p>
40317 <p>When showing <code><a href=#the-option-element>option</a></code> elements in <code><a href=#the-select-element>select</a></code>
40318 elements, user agents should show the <code><a href=#the-option-element>option</a></code> elements
40320 other <code><a href=#the-option-element>option</a></code> elements.</p>
40325 is a <a href=#boolean-attribute>boolean attribute</a> and can be used to <a href=#concept-option-disabled title=concept-option-disabled>disable</a> a group of
40326 <code><a href=#the-option-element>option</a></code> elements together.</p>
40332 <code><a href=#the-option-element>option</a></code> elements in a <code><a href=#the-select-element>select</a></code>
40338 <a href=#reflect>reflect</a> the respective content attributes of the same
40346 courses could be offered in a <code><a href=#the-select-element>select</a></code> drop-down
40379 <dd>As a child of a <code><a href=#the-select-element>select</a></code> element.</dd>
40380 <dd>As a child of a <code><a href=#the-datalist-element>datalist</a></code> element.</dd>
40381 <dd>As a child of an <code><a href=#the-optgroup-element>optgroup</a></code> element.</dd>
40383 <dd><a href=#text-content title="text content">Text</a>.</dd>
40385 <dd><a href=#global-attributes>Global attributes</a></dd>
40386 <dd><code title=attr-option-disabled><a href=#attr-option-disabled>disabled</a></code></dd>
40387 <dd><code title=attr-option-label><a href=#attr-option-label>label</a></code></dd>
40388 <dd><code title=attr-option-selected><a href=#attr-option-selected>selected</a></code></dd>
40389 <dd><code title=attr-option-value><a href=#attr-option-value>value</a></code></dd>
40392 <pre class=idl>[NamedConstructor=<a href=#dom-option title=dom-option>Option</a>(),
40393 NamedConstructor=<a href=#dom-option-t title=dom-option-t>Option</a>(in DOMString text),
40394 NamedConstructor=<a href=#dom-option-tv title=dom-option-tv>Option</a>(in DOMString text, in DOMString value),
40395 NamedConstructor=<a href=#dom-option-tvd title=dom-option-tvd>Option</a>(in DOMString text, in DOMString value, in boolean defaultSelected),
40396 NamedConstructor=<a href=#dom-option-tvds title=dom-option-tvds>Option</a>(in DOMString text, in DOMString value, in boolean defaultSelected, in boolean selected)]
40397 interface <dfn id=htmloptionelement>HTMLOptionElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
40398 attribute boolean <a href=#dom-option-disabled title=dom-option-disabled>disabled</a>;
40399 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-option-form title=dom-option-form>form</a>;
40400 attribute DOMString <a href=#dom-option-label title=dom-option-label>label</a>;
40401 attribute boolean <a href=#dom-option-defaultselected title=dom-option-defaultSelected>defaultSelected</a>;
40402 attribute boolean <a href=#dom-option-selected title=dom-option-selected>selected</a>;
40403 attribute DOMString <a href=#dom-option-value title=dom-option-value>value</a>;
40405 attribute DOMString <a href=#dom-option-text title=dom-option-text>text</a>;
40406 readonly attribute long <a href=#dom-option-index title=dom-option-index>index</a>;
40409 </dl><p>The <code><a href=#the-option-element>option</a></code> element <a href=#represents>represents</a> an option
40410 in a <code><a href=#the-select-element>select</a></code> element or as part of a list of suggestions
40411 in a <code><a href=#the-datalist-element>datalist</a></code> element.</p>
40414 attribute is a <a href=#boolean-attribute>boolean attribute</a>. An
40415 <code><a href=#the-option-element>option</a></code> element is <dfn id=concept-option-disabled title=concept-option-disabled>disabled</dfn> if its <code title=attr-option-disabled><a href
40416 if it is a child of an <code><a href=#the-optgroup-element>optgroup</a></code> element whose <code title=attr-optgroup-disabled><a href=#attr-optgroup-disabled>disabled</a></code> attribute is
40421 <p>An <code><a href=#the-option-element>option</a></code> element that is <a href=#attr-option-disabled title=attr-option-disabled>disabled</a> must prevent any <code title=event-click><a href=#event-click>click</a></code> events that are <a href=#queue-a-task title="queue
40422 a task">queued</a> on the <a href=#user-interaction-task-source>user interaction task
40428 attribute provides a label for element. The <dfn id=concept-option-label title=concept-option-label>label</dfn> of an <code><a href=#the-option-element>option</a></code>
40429 element is the value of the <code title=attr-option-label><a href=#attr-option-label>label</a></code> attribute, if there is one,
40430 or the <code><a href=#textcontent>textContent</a></code> of the element, if there isn't.</p>
40433 attribute provides a value for element. The <dfn id=concept-option-value title=concept-option-value>value</dfn> of an <code><a href=#the-option-element>option</a></code>
40434 element is the value of the <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute, if there is one,
40435 or the <code><a href=#textcontent>textContent</a></code> of the element, if there isn't.</p>
40438 attribute represents the default <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> of the
40444 of an <code><a href=#the-option-element>option</a></code> element is a boolean state, initially
40445 false. If the element is <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>, then the element's
40446 <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is
40448 specified, when the element is created, its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> must be set
40449 to true if the element has a <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute. Whenever an
40450 <code><a href=#the-option-element>option</a></code> element's <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute is added, its
40451 <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> must
40454 <p class=note>The <code title=dom-option-tvd><a href=#dom-option-tvd>Option()</a></code>
40456 state of the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> state to
40458 <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute is to
40460 initial <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> state when
40465 <p>A <code><a href=#the-select-element>select</a></code> element whose <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is not
40466 specified must not have more than one descendant <code><a href=#the-option-element>option</a></code>
40467 element with its <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code>
40472 <p>An <code><a href=#the-option-element>option</a></code> element's <dfn id=concept-option-index title=concept-option-index>index</dfn> is the number of
40473 <code><a href=#the-option-element>option</a></code> element that are in the same <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> but that
40474 come before it in <a href=#tree-order>tree order</a>. If the
40475 <code><a href=#the-option-element>option</a></code> element is not in a <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, then the
40476 <code><a href=#the-option-element>option</a></code> element's <a href=#concept-option-index title=concept-option-index>index</a> is zero.</p>
40480 <dl class=domintro><dt><var title="">option</var> . <code title=dom-option-selected><a href=#dom-option-selected>selected</a></code></dt>
40488 <dt><var title="">option</var> . <code title=dom-option-index><a href=#dom-option-index>index</a></code></dt>
40492 <p>Returns the index of the element in its <code><a href=#the-select-element>select</a></code>
40493 element's <code title=dom-select-options><a href=#dom-select-options>options</a></code>
40498 <dt><var title="">option</var> . <code title=dom-option-form><a href=#dom-option-form>form</a></code></dt>
40502 <p>Returns the element's <code><a href=#the-form-element>form</a></code> element, if any, or
40507 <dt><var title="">option</var> . <code title=dom-option-text><a href=#dom-option-text>text</a></code></dt>
40511 <p>Same as <code><a href=#textcontent>textContent</a></code>.</p>
40515 <dt><var title="">option</var> = new <code title=dom-option><a href=#dom-option>Option</a></code>( [ <var title="">text</var> [, <var title="">value</var> [, <var title="">defaultSelected</var> [, <var title="">selected</var> ] ] ] ] )</dt>
40519 <p>Returns a new <code><a href=#the-option-element>option</a></code> element.</p>
40522 <p>The <var title="">value</var> argument sets the <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute.</p>
40523 <p>The <var title="">defaultSelected</var> argument sets the <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute.</p>
40532 attributes must <a href=#reflect>reflect</a> the respective content
40534 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> content attribute.</p>
40537 attribute, on getting, must return the value of the element's <code title=attr-option-value><a href=#attr-option-value>value</a></code> content attribute, if it has
40538 one, or else the value of the element's <code><a href=#textcontent>textContent</a></code> IDL
40539 attribute. On setting, the element's <code title=attr-option-value><a href=#attr-option-value>value</a></code> content attribute must be set
40543 IDL attribute must return true if the element's <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is true, and
40547 attribute must return the element's <a href=#concept-option-index title=concept-option-index>index</a>.</p>
40551 <code><a href=#textcontent>textContent</a></code> IDL attribute on the element, and on
40552 setting, must act as if the <code><a href=#textcontent>textContent</a></code> IDL attribute
40556 attribute's behavior depends on whether the <code><a href=#the-option-element>option</a></code>
40557 element is in a <code><a href=#the-select-element>select</a></code> element or not. If the
40558 <code><a href=#the-option-element>option</a></code> has a <code><a href=#the-select-element>select</a></code> element as its parent,
40559 or has a <code><a href=#the-colgroup-element>colgroup</a></code> element as its parent and that
40560 <code><a href=#the-colgroup-element>colgroup</a></code> element has a <code><a href=#the-select-element>select</a></code> element as
40561 its parent, then the <code title=dom-option-form><a href=#dom-option-form>form</a></code> IDL
40562 attribute must return the same value as the <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute on that
40563 <code><a href=#the-select-element>select</a></code> element. Otherwise, it must return null.</p>
40566 <code><a href=#htmloptionelement>HTMLOptionElement</a></code> objects (in addition to the factory
40568 these must return a new <code><a href=#htmloptionelement>HTMLOptionElement</a></code> object (a new
40569 <code><a href=#the-option-element>option</a></code> element). If the <var title="">text</var>
40571 <code><a href=#node>Node</a></code> with node type <code title="">TEXT_NODE</code> (3)
40575 <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute set with the
40577 object must have a <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code> attribute set with no
40579 true, the new object must have its <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> set to true;
40580 otherwise the fourth argument is absent or false, and the <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> must be set
40582 is present and true. The element's document must be the <a href=#active-document>active
40583 document</a> of the <a href=#browsing-context>browsing context</a> of the
40584 <code><a href=#window>Window</a></code> object on which the interface object of the
40594 <dd><a href=#flow-content>Flow content</a>.</dd>
40595 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
40596 <dd><a href=#interactive-content>Interactive content</a>.</dd>
40597 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-label title=category-label>labelable</a>, <a href=#category-submit title=category-submit>submittable</a>, and <a href=#category-reset title=category-reset>resettable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
40599 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
40601 <dd><a href=#text-content title="text content">Text</a>.</dd>
40603 <dd><a href=#global-attributes>Global attributes</a></dd>
40604 <dd><code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code></dd>
40605 <dd><code title=attr-textarea-cols><a href=#attr-textarea-cols>cols</a></code></dd>
40606 <dd><code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code></dd>
40607 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
40608 <dd><code title=attr-textarea-maxlength><a href=#attr-textarea-maxlength>maxlength</a></code></dd>
40609 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
40610 <dd><code title=attr-textarea-placeholder><a href=#attr-textarea-placeholder>placeholder</a></code></dd>
40611 <dd><code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code></dd>
40612 <dd><code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code></dd>
40613 <dd><code title=attr-textarea-rows><a href=#attr-textarea-rows>rows</a></code></dd>
40614 <dd><code title=attr-textarea-wrap><a href=#attr-textarea-wrap>wrap</a></code></dd>
40617 <pre class=idl>interface <dfn id=htmltextareaelement>HTMLTextAreaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
40618 attribute boolean <a href=#dom-fe-autofocus title=dom-fe-autofocus>autofocus</a>;
40619 attribute unsigned long <a href=#dom-textarea-cols title=dom-textarea-cols>cols</a>;
40620 attribute boolean <a href=#dom-fe-disabled title=dom-fe-disabled>disabled</a>;
40621 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
40622 attribute long <a href=#dom-textarea-maxlength title=dom-textarea-maxLength>maxLength</a>;
40623 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
40624 attribute DOMString <a href=#dom-textarea-placeholder title=dom-textarea-placeholder>placeholder</a>;
40625 attribute boolean <a href=#dom-textarea-readonly title=dom-textarea-readOnly>readOnly</a>;
40626 attribute boolean <a href=#dom-textarea-required title=dom-textarea-required>required</a>;
40627 attribute unsigned long <a href=#dom-textarea-rows title=dom-textarea-rows>rows</a>;
40628 attribute DOMString <a href=#dom-textarea-wrap title=dom-textarea-wrap>wrap</a>;
40630 readonly attribute DOMString <a href=#dom-textarea-type title=dom-textarea-type>type</a>;
40631 attribute DOMString <a href=#dom-textarea-defaultvalue title=dom-textarea-defaultValue>defaultValue</a>;
40632 attribute DOMString <a href=#dom-textarea-value title=dom-textarea-value>value</a>;
40633 readonly attribute unsigned long <a href=#dom-textarea-textlength title=dom-textarea-textLength>textLength</a>;
40635 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
40636 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
40637 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
40638 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
40639 void <a href
40641 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
40643 void <a href=#dom-textarea/input-select title=dom-textarea/input-select>select</a>();
40644 attribute unsigned long <a href=#dom-textarea/input-selectionstart title=dom-textarea/input-selectionStart>selectionStart</a>;
40645 attribute unsigned long <a href=#dom-textarea/input-selectionend title=dom-textarea/input-selectionEnd>selectionEnd</a>;
40646 void <a href=#dom-textarea/input-setselectionrange title=dom-textarea/input-setSelectionRange>setSelectionRange</a>(in unsigned long start, in unsigned long end);
40649 </dl><p>The <code><a href=#the-textarea-element>textarea</a></code> element <a href=#represents>represents</a> a
40657 <p>The <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a> of
40658 a <code><a href=#the-textarea-element>textarea</a></code> control must be initially the empty
40664 is a <a href=#boolean-attribute>boolean attribute</a> used to control whether the text
40669 <p><strong>Constraint validation</strong>: If the <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> attribute is
40670 specified on a <code><a href=#the-textarea-element>textarea</a></code> element, the element is
40671 <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
40673 <p>A <code><a href=#the-textarea-element>textarea</a></code> element is <dfn id=concept-textarea-mutable title=concept-textarea-mutable>mutable</dfn> if it is neither
40674 <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a> nor has a <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> attribute
40677 <p>When a <code><a href=#the-textarea-element>textarea</a></code> is <a href=#concept-textarea-mutable title=concept-textarea-mutable>mutable</a>, its <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a> should be
40678 editable by the user. Any time the user causes the element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a> to change, the
40679 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
40680 event</a> that bubbles named <code title=event-input>input</code> at the <code><a href=#the-textarea-element>textarea</a></code>
40681 element, then <a href=#broadcast-forminput-events>broadcast <code title=event-forminput>forminput</code> events</a> at the
40682 <code><a href=#the-textarea-element>textarea</a></code> element's <a href=#form-owner>form owner</a>. User agents
40689 <p>A <code><a href=#the-textarea-element>textarea</a></code> element has a <dfn id=concept-textarea-dirty title=concept-textarea-dirty>dirty value flag</dfn>, which must be
40691 interacts with the control in a way that changes the <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a>.</p>
40693 <p>When the <code><a href=#the-textarea-element>textarea</a></code> element's <code><a href=#textcontent>textContent</a></code>
40694 IDL attribute changes value, if the element's <a href=#concept-textarea-dirty title=concept-textarea-dirty>dirty value flag</a> is false,
40695 then the element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw
40697 <code><a href=#textcontent>textContent</a></code> IDL attribute.</p>
40699 <p>The <a href=#concept-form-reset-control title=concept-form-reset-control>reset
40700 algorithm</a> for <code><a href=#the-textarea-element>textarea</a></code> elements is to set the
40701 element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>value</a> to
40702 the value of the element's <code><a href=#textcontent>textContent</a></code> IDL
40709 line. If the <code title=attr-textarea-cols><a href=#attr-textarea-cols>cols</a></code> attribute
40710 is specified, its value must be a <a href=#valid-non-negative-integer>valid non-negative
40712 <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a> to the
40719 <p>The user agent may use the <code><a href=#the-textarea-element>textarea</a></code> element's <a href=#attr-textarea-cols-value title=attr-textarea-cols-value>character width</a> as a hint to
40729 attribute specifies the number of lines to show. If the <code title=attr-textarea-rows><a href=#attr-textarea-rows>rows</a></code> attribute is specified, its
40730 value must be a <a href=#valid-non-negative-integer>valid non-negative integer</a> greater than
40731 zero. <span class=impl>If applying the <a href=#rules-for-parsing-non-negative-integers>rules for parsing
40739 number of lines given by <a href=#attr-textarea-rows-value title=attr-textarea-rows-value>character height</a>.</p>
40744 attribute is an <a href=#enumerated-attribute>enumerated attribute</a> with two keywords
40749 <i>missing value default</i> is the <a href=#attr-textarea-wrap-soft-state title=attr-textarea-wrap-soft-state>Soft</a> state.</p>
40751 <p>If the element's <code title=attr-textarea-wrap><a href=#attr-textarea-wrap>wrap</a></code>
40752 attribute is in the <a href=#attr-textarea-wrap-hard-state title=attr-textarea-wrap-hard-state>Hard</a> state, the <code title=attr-textarea-cols><a href=#attr-textarea-cols>cols</a></code> attribute must be
40761 <p>The element's <a href=#concept-fe-value title=concept-fe-value>value</a> is
40762 defined to be the element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a> with the
40772 <li><p>If the element's <code title=attr-textarea-wrap><a href=#attr-textarea-wrap>wrap</a></code> attribute is in the <a href=#attr-textarea-wrap-hard-state title=attr-textarea-wrap-hard-state>Hard</a> state, insert
40775 no more than <a href=#attr-textarea-cols-value title=attr-textarea-cols-value>character
40784 attribute is a <a href=#attr-fe-maxlength title=attr-fe-maxlength>form control <code title="">maxlength</code> attribute</a> controlled by the
40785 <code><a href=#the-textarea-element>textarea</a></code> element's <a href=#concept-textarea-dirty title=concept-textarea-dirty>dirty value flag</a>.</p>
40787 <p>If the <code><a href=#the-textarea-element>textarea</a></code> element has a <a href=#maximum-allowed-value-length>maximum allowed
40789 the <a href=#code-point-length>code-point length</a> of the value of the element's
40790 <code><a href=#textcontent>textContent</a></code> IDL attribute is equal to or less than the
40791 element's <a href=#maximum-allowed-value-length>maximum allowed value length</a>.</p>
40794 is a <a href=#boolean-attribute>boolean attribute</a>. When specified, the user will
40800 <code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code> attribute
40801 specified, and the element is <a href=#concept-textarea-mutable title=concept-textarea-mutable>mutable</a>, and the element's
40802 <a href=#concept-fe-value title=concept-fe-value>value</a> is the empty string,
40803 then the element is <a href=#suffering-from-being-missing>suffering from being missing</a>.</p>
40817 <p class=note>For a longer hint or other advisory text, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute is more appropriate.</p>
40819 <p>The <code title=attr-textarea-placeholder><a href=#attr-textarea-placeholder>placeholder</a></code>
40821 <code><a href=#the-label-element>label</a></code>.</p>
40826 <a href=#strip-line-breaks title="strip line breaks">stripped line breaks</a> from it,
40827 when the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is
40834 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
40835 explicitly associate the <code><a href=#the-textarea-element>textarea</a></code> element with its
40836 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
40837 attribute represents the element's name. The <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is used to make
40839 submitted. The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>
40864 <a href=#reflect>reflect</a> the respective content attributes of the same
40865 name. The <code title=dom-textarea-cols><a href=#dom-textarea-cols>cols</a></code> and <code title=dom-textarea-rows><a href=#dom-textarea-rows>rows</a></code> attributes are <a href=#limited-to-only-non-negative-numbers-greater-than-zero>limited
40867 attribute must <a href=#reflect>reflect</a> the <code title=attr-textarea-maxlength><a href=#attr-textarea-maxlength>maxlength</a></code> content attribute,
40868 <a href=#limited-to-only-non-negative-numbers>limited to only non-negative numbers</a>. The <dfn id=dom-textarea-readonly title=dom-textarea-readOnly><code>readOnly</code></dfn> IDL
40869 attribute must <a href=#reflect>reflect</a> the <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> content
40876 IDL attribute must act like the element's <code><a href=#textcontent>textContent</a></code>
40880 attribute must, on getting, return the element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw value</a>; on setting, it
40881 must set the element's <a href=#concept-textarea-raw-value title=concept-textarea-raw-value>raw
40885 attribute must return the <a href=#code-point-length>code-point length</a> of the
40886 element's <a href=#concept-fe-value title=concept-fe-value>value</a>.</p>
40888 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
40889 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
40890 methods, are part of the <a href
40891 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
40892 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select()</a></code>, <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>,
40893 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>,
40894 and <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
40896 <code title=dom-fe-autofocus><a href=#dom-fe-autofocus>autofocus</a></code>, <code title=dom-fe-disabled><a href=#dom-fe-disabled>disabled</a></code>, <code title=dom-fae-form><a href=#dom-fae-form>form</a></code>, and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
40903 <p>Here is an example of a <code><a href=#the-textarea-element>textarea</a></code> being used for
40915 <dd><a href=#flow-content>Flow content</a>.</dd>
40916 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
40917 <dd><a href=#interactive-content>Interactive content</a>.</dd>
40918 <dd><a href=#category-listed title=category-listed>Listed</a>, <a href=#category-label title=category-label>labelable</a>, <a href=#category-submit title=category-submit>submittable</a>, and <a href=#category-reset title=category-reset>resettable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
40920 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
40924 <dd><a href=#global-attributes>Global attributes</a></dd>
40925 <dd><code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code></dd>
40926 <dd><code title=attr-keygen-challenge><a href=#attr-keygen-challenge>challenge</a></code></dd>
40927 <dd><code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code></dd>
40928 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
40929 <dd><code title=attr-keygen-keytype><a href=#attr-keygen-keytype>keytype</a></code></dd>
40930 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
40933 <pre class=idl>interface <dfn id=htmlkeygenelement>HTMLKeygenElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
40934 attribute boolean <a href=#dom-fe-autofocus title=dom-fe-autofocus>autofocus</a>;
40935 attribute DOMString <a href=#dom-keygen-challenge title=dom-keygen-challenge>challenge</a>;
40936 attribute boolean <a href=#dom-fe-disabled title=dom-fe-disabled>disabled</a>;
40937 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
40938 attribute DOMString <a href=#dom-keygen-keytype title=dom-keygen-keytype>keytype</a>;
40939 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
40941 readonly attribute DOMString <a href=#dom-keygen-type title=dom-keygen-type>type</a>;
40943 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
40944 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
40945 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
40946 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
40947 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
40949 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
40952 </dl><p>The <code><a href=#the-keygen-element>keygen</a></code> element <a href=#represents>represents</a> a key
40962 attribute is an <a href=#enumerated-attribute>enumerated attribute</a>. The following
40987 <code><a href=#the-keygen-element>keygen</a></code> element to allow the user to configure settings
40990 <p>The <a href=#concept-form-reset-control title=concept-form-reset-control>reset
40991 algorithm</a> for <code><a href=#the-keygen-element>keygen</a></code> elements is to set these
40994 <p>The element's <a href=#concept-fe-value title=concept-fe-value>value</a> is the
41014 --><dt>If the <code title=attr-keygen-keytype><a href=#attr-keygen-keytype>keytype</a></code>
41023 Algorithm") of RFC 3279, and defined in RFC 2313. <a href=#refsRFC3279>[RFC3279]</a> <a href=#refsRFC2313>[RFC2313]</a></p>
41027 <dt>Otherwise, the <code title=attr-keygen-keytype><a href=#attr-keygen-keytype>keytype</a></code> attribute is in the <i title="">unknown</i> state</dt>
41047 <p>If the element has a <code title=attr-keygen-challenge><a href=#attr-keygen-challenge>challenge</a></code> attribute, then let
41062 algorithm. <a href=#refsX690>[X690]</a> <a href=#refsRFC5280>[RFC5280]</a> <a href=#refsRFC3279>[RFC3279]</a></p>
41072 BIT STRING value resulting from ASN.1 DER encoding the <var title="">public key</var>. <a href=#refsX690>[X690]</a> <a href=#refsRFC5280>[RFC5280]</a></p>
41079 <code><a href=#publickeyandchallenge>PublicKeyAndChallenge</a></code> structure as defined below,
41081 <code title="">challenge</code> field set to the string <var title="">challenge</var> obtained earlier. <a href=#refsX690>[X690]</a></p>
41090 string obtained by ASN.1 DER encoding the <var title="">publicKeyAndChallenge</var> structure, using <var title="">private key</var> as the signing key. <a href=#refsX690>[X690]</a></p>
41097 <code><a href=#signedpublickeyandchallenge>SignedPublicKeyAndChallenge</a></code> structure as defined
41100 the <code title="">signatureAlgorithm</code> field set to the <var title="">algorithm</var> structure, and the <code title="">signature</code> field set to the BIT STRING <var title="">signature</var> from the previous step. <a href=#refsX690>[X690]</a></p>
41108 structure. <a href=#refsRFC3548>[RFC3548]</a><!--base64--> <a href=#refsX690>[X690]</a></p>
41114 by RFC 5280. <a href=#refsRFC5280>[RFC5280]</a></p>
41122 publicKeyAndChallenge <a href=#publickeyandchallenge>PublicKeyAndChallenge</a>,
41127 <hr><p><strong>Constraint validation</strong>: The <code><a href=#the-keygen-element>keygen</a></code>
41128 element is <a href=#barred-from-constraint-validation>barred from constraint validation</a>.</p>
41132 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
41133 explicitly associate the <code><a href=#the-keygen-element>keygen</a></code> element with its
41134 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
41135 attribute represents the element's name. The <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is used to make
41137 submitted. The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>
41151 attribute must <a href=#reflect>reflect</a> the content attributes of the
41155 IDL attribute must <a href=#reflect>reflect</a> the content attributes of
41156 the same name, <a href=#limited-to-only-known-values>limited to only known values</a>.</p>
41161 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
41162 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
41163 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
41164 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
41165 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fe-autofocus><a href=#dom-fe-autofocus>autofocus</a></code>, <code title=dom-fe-disabled><a href=#dom-fe-disabled>disabled</a></code>, <code title=dom-fae-form><a href=#dom-fae-form>form</a></code>, and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
41172 <code><a href=#signedpublickeyandchallenge>SignedPublicKeyAndChallenge</a></code> (SPKAC) structure, the
41206 <dd><a href=#flow-content>Flow content</a>.</dd>
41207 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
41208 <dd><a hrefhref=#category-label title=category-label>labelable</a>, and <a href=#category-reset title=category-reset>resettable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
41210 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
41212 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
41214 <dd><a href=#global-attributes>Global attributes</a></dd>
41215 <dd><code title=attr-output-for><a href=#attr-output-for>for</a></code></dd>
41216 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
41217 <dd><code title=attr-fe-name><a href=#attr-fe-name>name</a></code></dd>
41220 <pre class=idl>interface <dfn id=htmloutputelement>HTMLOutputElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
41221 [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist>DOMSettableTokenList</a> <span title=dom-output-wrap>htmlFor</span>;
41222 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
41223 attribute DOMString <a href=#dom-fe-name title=dom-fe-name>name</a>;
41225 readonly attribute DOMString <a href=#dom-output-type title=dom-output-type>type</a>;
41226 attribute DOMString <a href=#dom-output-defaultvalue title=dom-output-defaultValue>defaultValue</a>;
41227 attribute DOMString <a href=#dom-output-value title=dom-output-value>value</a>;
41229 readonly attribute boolean <a href=#dom-cva-willvalidate title=dom-cva-willValidate>willValidate</a>;
41230 readonly attribute <a href=#validitystate>ValidityState</a> <a href=#dom-cva-validity title=dom-cva-validity>validity</a>;
41231 readonly attribute DOMString <a href=#dom-cva-validationmessage title=dom-cva-validationMessage>validationMessage</a>;
41232 boolean <a href=#dom-cva-checkvalidatity title=dom-cva-checkValidatity>checkValidity</a>();
41233 void <a href=#dom-cva-setcustomvalidity title=dom-cva-setCustomValidity>setCustomValidity</a>(in DOMString error);
41235 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
41238 </dl><p>The <code><a href=#the-output-element>output</a></code> element <a href=#represents>represents</a> the result of a
41245 calculation. The <code title=attr-output-for><a href=#attr-output-for>for</a></code> attribute,
41246 if specified, must contain a string consisting of an <a href=#unordered-set-of-unique-space-separated-tokens>unordered
41249 <code><a href=#document>Document</a></code>.</p>
41251 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
41252 explicitly associate the <code><a href=#the-output-element>output</a></code> element with its
41253 <a href=#form-owner>form owner</a>. The <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>
41260 <a href=#concept-output-mode title=concept-output-mode>value mode flag</a> must be set
41264 the <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a>
41267 <p>When the <a href=#concept-output-mode title=concept-output-mode>value mode flag</a>
41270 its <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default
41271 value</a>. When the <a href=#concept-output-mode title=concept-output-mode>value mode
41273 element represent the value of the element only, and the <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a> is only
41274 accessible using the <code title=dom-output-defaultValue><a href=#dom-output-defaultvalue>defaultValue</a></code> IDL
41278 <a href=#concept-output-mode title=concept-output-mode>value mode flag</a> is in mode
41280 <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a> must
41281 be set to the value of the element's <code><a href=#textcontent>textContent</a></code> IDL
41284 <p>The <a href=#concept-form-reset-control title=concept-form-reset-control>reset
41285 algorithm</a> for <code><a href=#the-output-element>output</a></code> elements is to set the
41286 element's <a href=#concept-output-mode title=concept-output-mode>value mode flag</a>
41288 set the element's <code><a href=#textcontent>textContent</a></code> IDL attribute to the
41289 value of the element's <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a> (thus
41294 <dl class=domintro><dt><var title="">output</var> . <code title=dom-output-value><a href=#dom-output-value>value</a></code> [ = <var title="">value</var> ]</dt>
41304 <dt><var title="">output</var> . <code title=dom-output-defaultValue><a href=#dom-output-defaultvalue>defaultValue</a></code> [ = <var title="">value</var> ]</dt>
41314 <dt><var title="">output</var> . <code title=dom-output-type><a href=#dom-output-type>type</a></code></dt>
41325 attribute must act like the element's <code><a href=#textcontent>textContent</a></code> IDL
41327 nodes are changed, the element's <a href=#concept-output-mode title=concept-output-mode>value mode flag</a> must be set to <i title=concept-output-mode-value>value</i>.</p>
41330 attribute, on getting, must return the element's <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a>. On
41331 setting, the attribute must set the element's <a href=#concept-output-defaultvalue title=concept-output-defaultValue>default value</a>, and, if
41332 the element's <a href=#concept-output-mode title=concept-output-mode>value mode
41334 <code><a href=#textcontent>textContent</a></code> IDL attribute as well.</p>
41340 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-output-for><a href=#attr-output-for>for</a></code> content attribute.</p>
41342 <p>The <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code>, <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code>, and <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code>
41343 attributes, and the <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity()</a></code> and <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
41344 methods, are part of the <a href=#the-constraint-validation-api>constraint validation API</a>. The
41345 <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides a list
41346 of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> and <code title=dom-fe-name><a href=#dom-fe-name>name</a></code> IDL attributes are part of the
41349 <p><strong>Constraint validation</strong>: <code><a href=#the-output-element>output</a></code>
41350 elements are always <a href=#barred-from-constraint-validation>barred from constraint
41357 <p>A simple calculator could use <code><a href=#the-output-element>output</a></code> for its
41373 <dd><a href=#flow-content>Flow content</a>.</dd>
41374 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
41375 <dd><a href=#category-label title=category-label>Labelable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
41377 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
41379 <dd><a href=#phrasing-content>Phrasing content</a>, but there must be no <code><a href=#the-progress-element>progress</a></code> element descendants.</dd>
41381 <dd><a href=#global-attributes>Global attributes</a></dd>
41382 <dd><code title=attr-progress-value><a href=#attr-progress-value>value</a></code></dd>
41383 <dd><code title=attr-progress-max><a href=#attr-progress-max>max</a></code></dd>
41384 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
41387 <pre class=idl>interface <dfn id=htmlprogresselement>HTMLProgressElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
41388 attribute float <a href=#dom-progress-value title=dom-progress-value>value</a>;
41389 attribute float <a href=#dom-progress-max title=dom-progress-max>max</a>;
41390 readonly attribute float <a href=#dom-progress-position title=dom-progress-position>position</a>;
41391 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
41392 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
41395 </dl><p>The <code><a href=#the-progress-element>progress</a></code> element <a href=#represents>represents</a> the
41435 <p>The <code title=attr-progress-value><a href=#attr-progress-value>value</a></code> and <code title=attr-progress-max><a href=#attr-progress-max>max</a></code> attributes, when present, must
41436 have values that are <a href=#valid-floating-point-number title="valid floating point number">valid
41437 floating point numbers</a>. The <code title=attr-progress-value><a href=#attr-progress-value>value</a></code> attribute, if present, must
41439 to the value of the <code title=attr-progress-max><a href=#attr-progress-max>max</a></code>
41440 attribute, if present, or 1.0, otherwise. The <code title=attr-progress-max><a href=#attr-progress-max>max</a></code> attribute, if present, must
41443 <p class=note>The <code><a href=#the-progress-element>progress</a></code> element is the wrong
41446 <code><a href=#the-progress-element>progress</a></code> would be inappropriate. Instead, the
41447 <code><a href=#the-meter-element>meter</a></code> element is available for such use cases.</p>
41451 <p><strong>User agent requirements</strong>: If the <code title=attr-progress-value><a href=#attr-progress-value>value</a></code> attribute is omitted, then
41456 has a <code title=attr-progress-max><a href=#attr-progress-max>max</a></code> attribute, the user
41457 agent must parse the <code title=attr-progress-max><a href=#attr-progress-max>max</a></code>
41458 attribute's value according to the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating
41462 <code title=attr-progress-max><a href=#attr-progress-max>max</a></code> attribute, or if it has
41468 must parse the <code title=attr-progress-value><a href=#attr-progress-value>value</a></code>
41469 attribute's value according to the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating
41475 href=#attr-progress-value>value</a></code> attribute's value resulted
41480 When representing a <code><a href=#the-progress-element>progress</a></code> element to the user, the
41486 must <a href=#reflect>reflect</a> the respective content attributes of the
41490 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
41491 explicitly associate the <code><a href=#the-progress-element>progress</a></code> element with its
41492 <a href=#form-owner>form owner</a>.</p>
41496 <dl class=domintro><dt><var title="">progress</var> . <code title=dom-progress-position><a href=#dom-progress-position>position</a></code></dt>
41513 <p>The <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides
41514 a list of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute is part of the
41525 <dd><a href=#flow-content>Flow content</a>.</dd>
41526 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
41527 <dd><a href=#category-label title=category-label>Labelable</a> <a href=#form-associated-element>form-associated element</a>.</dd>
41529 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
41531 <dd><a href=#phrasing-content>Phrasing content</a>, but there must be no <code><a href=#the-meter-element>meter</a></code> element descendants.</dd>
41533 <dd><a href=#global-attributes>Global attributes</a></dd>
41534 <dd><code title=attr-meter-value><a href=#attr-meter-value>value</a></code></dd>
41535 <dd><code title=attr-meter-min><a href=#attr-meter-min>min</a></code></dd>
41536 <dd><code title=attr-meter-max><a href=#attr-meter-max>max</a></code></dd>
41537 <dd><code title=attr-meter-low><a href=#attr-meter-low>low</a></code></dd>
41538 <dd><code title=attr-meter-high><a href=#attr-meter-high>high</a></code></dd>
41539 <dd><code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code></dd>
41540 <dd><code title=attr-fae-form><a href=#attr-fae-form>form</a></code></dd>
41543 <pre class=idl>interface <dfn id=htmlmeterelement>HTMLMeterElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
41544 attribute float <a href=#dom-meter-value title=dom-meter-value>value</a>;
41545 attribute float <a href=#dom-meter-min title=dom-meter-min>min</a>;
41546 attribute float <a href=#dom-meter-max title=dom-meter-max>max</a>;
41547 attribute float <a href=#dom-meter-low title=dom-meter-low>low</a>;
41548 attribute float <a href=#dom-meter-high title=dom-meter-high>high</a>;
41549 attribute float <a href=#dom-meter-optimum title=dom-meter-optimum>optimum</a>;
41550 readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
41551 readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
41554 </dl><p>The <code><a href=#the-meter-element>meter</a></code> element <a href=#represents>represents</a> a scalar
41561 <p class=note>The <code><a href=#the-meter-element>meter</a></code> element should not be used to
41563 provides a separate <code><a href=#the-progress-element>progress</a></code> element.</p>
41565 <p class=note>The <code><a href=#the-meter-element>meter</a></code> element also does not
41591 requirements</strong>:</span> The <code title=attr-meter-value><a href=#attr-meter-value>value</a></code> attribute must be
41592 specified. The <code title=attr-meter-value><a href=#attr-meter-value>value</a></code>, <code title=attr-meter-min><a href=#attr-meter-min>min</a></code>, <code title=attr-meter-low><a href=#attr-meter-low>low</a></code>, <code title=attr-meter-high><a href=#attr-meter-high>high</a></code>, <code title=attr-meter-max><a href=#attr-meter-max>max</a></code>, and <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code> attributes, when present,
41593 must have values that are <a href=#valid-floating-point-number title="valid floating point
41598 <p>Let <var title="">value</var> be the <code title=attr-meter-value><a href=#attr-meter-value>value</a></code> attribute's number.</p>
41600 <p>If the <code title=attr-meter-min><a href=#attr-meter-min>min</a></code> attribute
41604 <p>If the <code title=attr-meter-max><a href=#attr-meter-max>max</a></code> attribute
41611 <li><var title="">minimum</var> ≤ <code title=attr-meter-low><a href=#attr-meter-low>low</a></code> ≤ <var title="">maximum</var> (if <code title=attr-meter-low><a href=#attr-meter-low>low</a></code> is specified)</li>
41612 <li><var title="">minimum</var> ≤ <code title=attr-meter-high><a href=#attr-meter-high>high</a></code> ≤ <var title="">maximum</var> (if <code title=attr-meter-high><a href=#attr-meter-high>high</a></code> is specified)</li>
41613 <li><var title="">minimum</var> ≤ <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code> ≤ <var title="">maximum</var> (if <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code> is specified)</li>
41614 <li><code title=attr-meter-low><a href=#attr-meter-low>low</a></code> ≤ <code title=attr-meter-high><a href=#attr-meter-high>high</a></code> (if both <code title=attr-meter-low><a href=#attr-meter-low>low</a></code> and <code title=attr-meter-high><a href=#attr-meter-high>high</a></code> are specified)</li>
41621 that do not support the <code><a href=#the-meter-element>meter</a></code> element.</p>
41653 <code><a href=#the-meter-element>meter</a></code> element, but the units may be specified in the
41654 <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute in free-form text.</p>
41670 the <code title=attr-meter-min><a href=#attr-meter-min>min</a></code>, <code title=attr-meter-max><a href=#attr-meter-max>max</a></code>, <code title=attr-meter-value><a href=#attr-meter-value>value</a></code>, <code title=attr-meter-low><a href=#attr-meter-low>low</a></code>, <code title=attr-meter-high><a href=#attr-meter-high>high</a></code>, and <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code> attributes using the
41671 <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point number values</a>.</p>
41681 <p>If the <code title=attr-meter-min><a href=#attr-meter-min>min</a></code> attribute is
41690 <p>If the <code title=attr-meter-max><a href=#attr-meter-max>max</a></code> attribute is
41703 <p>If the <code title=attr-meter-value><a href=#attr-meter-value>value</a></code> attribute is
41719 <p>If the <code title=attr-meter-low><a href=#attr-meter-low>low</a></code> attribute is
41735 <p>If the <code title=attr-meter-high><a href=#attr-meter-high>high</a></code> attribute is
41751 <p>If the <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code>
41789 representing a <code><a href=#the-meter-element>meter</a></code> element to the user, the UA should
41800 <a href="?cmd=hsg" onclick="hideSuggestedGroups()">Hide suggested groups</a>
41804 <p><a href="/group/comp.infosystems.www.authoring.stylesheets/view">comp.infosystems.www.authoring.stylesheets</a> -
41805 <a href="/group/comp.infosystems.www.authoring.stylesheets/subscribe">join</a></p>
41810 <p><a href="/group/netscape.public.mozilla.xpinstall/view">netscape.public.mozilla.xpinstall</a> -
41811 <a href="/group/netscape.public.mozilla.xpinstall/subscribe">join</a></p>
41816 <p><a href="/group/mozilla.dev.general/view">mozilla.dev.general</a> -
41817 <a href="/group/mozilla.dev.general/subscribe">join</a></p>
41826 the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute and the other
41838 <p>The <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is used to
41839 explicitly associate the <code><a href=#the-meter-element>meter</a></code> element with its
41840 <a href=#form-owner>form owner</a>.</p>
41845 must <a href=#reflect>reflect</a> the respective content attributes of the
41849 <p>The <code title=dom-lfe-labels><a href=#dom-lfe-labels>labels</a></code> attribute provides
41850 a list of the element's <code><a href=#the-label-element>label</a></code>s. The <code title=dom-fae-form><a href=#dom-fae-form>form</a></code> IDL attribute is part of the
41870 <p>A <a href=#form-associated-element>form-associated element</a> can have a relationship
41871 with a <code><a href=#the-form-element>form</a></code> element, which is called the element's
41872 <dfn id=form-owner>form owner</dfn>. If a <a href=#form-associated-element>form-associated element</a> is
41873 not associated with a <code><a href=#the-form-element>form</a></code> element, its <a href=#form-owner>form
41876 <p>A <a href=#form-associated-element>form-associated element</a> is, by default, associated
41877 with its nearest ancestor <code><a href=#the-form-element>form</a></code> element<span class=impl> (as described below)</span>, but may have a <dfn id=attr-fae-form title=attr-fae-form><code>form</code></dfn> attribute specified to
41880 <p>If a <a href=#form-associated-element>form-associated element</a> has a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute specified, then its
41881 value must be the ID of a <code><a href=#the-form-element>form</a></code> element in the element's
41882 owner <code><a href=#document>Document</a></code>.</p>
41886 <p>When a <a href=#form-associated-element>form-associated element</a> is created, its
41887 <a href=#form-owner>form owner</a> must be initialized to null (no owner).</p>
41889 <p>When a <a href=#form-associated-element>form-associated element</a> is to be <dfn id=concept-form-association title=concept-form-association>associated</dfn> with a form, its
41890 <a href=#form-owner>form owner</a> must be set to that form.</p>
41892 <p>When a <a href=#form-associated-element>form-associated element</a>'s ancestor chain
41893 changes, e.g. because it or one of its ancestors was <a href=#insert-an-element-into-a-document title="insert an element into a document">inserted</a> or <a href=#remove-an-element-from-a-document title="remove an element from a document">removed</a> from a
41894 <code><a href=#document>Document</a></code>, then the user agent must <a href=#reset-the-form-owner>reset the form
41897 <p>When a <a href=#form-associated-element>form-associated element</a>'s <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute is added, removed, or
41898 has its value changed, then the user agent must <a href=#reset-the-form-owner>reset the form
41901 <p>When a <a href=#form-associated-element>form-associated element</a> has a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute and the ID of any of the
41902 elements in the <code><a href=#document>Document</a></code> changes, then the user agent
41903 must <a href=#reset-the-form-owner>reset the form owner</a> of that <a href=#form-associated-element>form-associated
41906 <p>When a <a href=#form-associated-element>form-associated element</a> has a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute and an element with an
41907 ID is <a href=#insert-an-element-into-a-document title="insert an element into a document">inserted
41908 into</a> or <a href=#remove-an-element-from-a-document title="remove an element from a
41909 document">removed from</a> the <code><a href=#document>Document</a></code>, then the
41910 user agent must <a href=#reset-the-form-owner>reset the form owner</a> of that
41911 <a href=#form-associated-element>form-associated element</a>.</p>
41914 <a href=#form-associated-element>form-associated element</a>, it must run the following
41917 <ol><li><p>If the element's <a href=#form-owner>form owner</a> is not null, and
41918 the element's <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> content
41919 attribute is not present, and the element's <a href=#form-owner>form owner</a>
41920 is its nearest <code><a href=#the-form-element>form</a></code> element ancestor after the change
41924 <li><p>Let the element's <a href=#form-owner>form owner</a> be null.</li>
41928 <p>If the element has a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>
41932 unaffected by quirks mode (it's always case sensitive) --><li><p>If the first element <a href=#in-a-document title="in a Document">in the
41933 <code>Document</code></a> to have an ID that is <a href=#case-sensitive title=case-sensitive>case-sensitively</a> equal to the
41934 element's <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> content
41935 attribute's value is a <code><a href=#the-form-element>form</a></code> element, then <a href=#concept-form-association title=concept-form-association>associate</a> the
41936 <a href=#form-associated-element>form-associated element</a> with that <code><a href=#the-form-element>form</a></code>
41943 <li><p>Otherwise, if the <a href=#form-associated-element>form-associated element</a> in
41944 question has an ancestor <code><a href=#the-form-element>form</a></code> element, then <a href=#concept-form-association title=concept-form-association>associate</a> the
41945 <a href=#form-associated-element>form-associated element</a> with the nearest such ancestor
41946 <code><a href=#the-form-element>form</a></code> element.</li>
41965 <p>The <a href=#form-owner>form owner</a> of "d" would be the inner nested
41966 form "c", while the <a href=#form-owner>form owner</a> of "e" would be the
41970 <a href=#html-parser>HTML parser</a>, when the <code title=dom-innerHTML><a href=#dom-innerhtml>innerHTML</a></code> algorithm moves the nodes
41976 violation of the content models to nest <code><a href=#the-form-element>form</a></code>
41983 <dl class=domintro><dt><var title="">element</var> . <code title=dom-fae-form><a href=#dom-fae-form>form</a></code></dt>
41987 <p>Returns the element's <a href=#form-owner>form owner</a>.</p>
41995 <p><a href=#form-associated-element title="form-associated element">Form-associated
41997 on getting, must return the element's <a href=#form-owner>form owner</a>, or
42009 attribute gives the name of the form control, as used in <a href=#form-submission>form
42010 submission</a> and in the <code><a href=#the-form-element>form</a></code> element's <code title=dom-form-elements><a href=#dom-form-elements>elements</a></code> object. If the attribute
42016 attribute must <a href=#reflect>reflect</a> the <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> content attribute.</p>
42024 content attribute is a <a href=#boolean-attribute>boolean attribute</a>.</p>
42027 if its <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is
42028 set, or if it is a descendant of a <code><a href=#the-fieldset-element>fieldset</a></code> element
42029 whose <code title=attr-fieldset-disabled><a href=#attr-fieldset-disabled>disabled</a></code> attribute
42031 <code><a href=#the-fieldset-element>fieldset</a></code> element's first <code><a href=#the-legend-element>legend</a></code> element
42036 <p>A form control that is <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a> must prevent any <code title=event-click><a href=#event-click>click</a></code> events that are <a href=#queue-a-task title="queue
42037 a task">queued</a> on the <a href=#user-interaction-task-source>user interaction task
42040 <p><strong>Constraint validation</strong>: If an element is <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, it is <a href=#barred-from-constraint-validation>barred from
42044 attribute must <a href=#reflect>reflect</a> the <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> content attribute.</p>
42056 is only used by <code><a href=#the-input-element>input</a></code> elements.) These are used to
42072 <p>The <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code> attribute is
42073 a <a href=#boolean-attribute>boolean attribute</a>.</p>
42076 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code> attribute
42081 href=#attr-fe-autofocus>autofocus</a></code> attribute specified is
42082 <a href=#insert-an-element-into-a-document title="insert an element into a document">inserted into a
42083 document</a> whose <a href=#browsing-context>browsing context</a> did not have the
42084 <a href=#sandboxed-automatic-features-browsing-context-flag>sandboxed automatic features browsing context flag</a> set
42085 when the <code><a href=#document>Document</a></code> was created, the user agent should
42086 <a href=#queue-a-task>queue a task</a> that checks to see if the element is
42087 <a href=#focusable>focusable</a>, and if so, runs the <a href=#focusing-steps>focusing
42090 that brings the element to the user's attention. The <a href=#task-source>task
42091 source</a> for this task is the <a href=#dom-manipulation-task-source>DOM manipulation task
42102 IDL attribute must <a href=#reflect>reflect</a> the content attribute of the
42120 <p>If an element has its <a href=#attr-fe-maxlength title=attr-fe-maxlength>form
42122 the attribute's value must be a <a href=#valid-non-negative-integer>valid non-negative
42124 <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a> to its value
42127 its value results in an error, then there is no <a href=#maximum-allowed-value-length>maximum
42133 <a href=#maximum-allowed-value-length>maximum allowed value length</a>, and its <var title="">dirty value flag</var> is true, and the <a href=#code-point-length>code-point
42134 length</a> of the element's <a href=#concept-fe-value title=concept-fe-value>value</a> is greater than the element's
42135 <a href=#maximum-allowed-value-length>maximum allowed value length</a>, then the element is
42136 <a href=#suffering-from-being-too-long>suffering from being too long</a>.</p>
42138 <p>User agents may prevent the user from causing the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to be set to a value whose
42139 <a href=#code-point-length>code-point length</a> is greater than the element's
42140 <a href=#maximum-allowed-value-length>maximum allowed value length</a>.</p>
42149 on <code><a href=#the-form-element>form</a></code> elements and on <a href=#concept-submit-button title=concept-submit-button>submit buttons</a> (elements that
42150 represent buttons that submit forms, e.g. an <code><a href=#the-input-element>input</a></code>
42151 element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is
42152 in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>
42155 <p>The <a href=#attributes-for-form-submission>attributes for form submission</a> that may be
42156 specified on <code><a href=#the-form-element>form</a></code> elements are <code title=attr-fs-action><a href=#attr-fs-action>action</a></code>, <code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code>, <code title=attr-fs-method><a href=#attr-fs-method>method</a></code>, <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code>, and <code title=attr-fs-target><a href=#attr-fs-target>target</a></code>.</p>
42158 <p>The corresponding <a href=#attributes-for-form-submission>attributes for form submission</a>
42159 that may be specified on <a href=#concept-submit-button title=concept-submit-button>submit
42160 buttons</a> are <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>, <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>, <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>, <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>, and <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>. When omitted, they
42162 <code><a href=#the-form-element>form</a></code> element.</p>
42167 <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially surrounded by spaces</a>.</p>
42170 the value of the element's <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code> attribute, if the
42171 element is a <a href=#concept-submit-button title=concept-submit-button>submit
42173 <a href=#form-owner>form owner</a>'s <code title=attr-fs-action><a href=#attr-fs-action>action</a></code>
42178 content attributes are <a href=#enumerated-attribute title="enumerated attribute">enumerated
42198 <a href=#attr-fs-method-get title=attr-fs-method-GET>GET</a> state.</p>
42201 one of those four states. If the element is a <a href=#concept-submit-button title=concept-submit-button>submit button</a> and has a <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code> attribute, then the
42202 element's <a href=#concept-fs-method title=concept-fs-method>method</a> is that
42203 attribute's state; otherwise, it is the <a href=#form-owner>form owner</a>'s
42204 <code title=attr-fs-method><a href=#attr-fs-method>method</a></code> attribute's state.</p>
42208 content attributes are <a href=#enumerated-attribute title="enumerated attribute">enumerated
42215 <code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code>
42219 is one of those three states. If the element is a <a href=#concept-submit-button title=concept-submit-button>submit button</a> and has a <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code> attribute, then the
42220 element's <a href=#concept-fs-enctype title=concept-fs-enctype>enctype</a> is that
42221 attribute's state; otherwise, it is the <a href=#form-owner>form owner</a>'s
42222 <code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code> attribute's state.</p>
42226 content attributes, if specified, must have values that are <a href=#valid-browsing-context-name-or-keyword title="valid browsing context name or keyword">valid browsing
42230 the value of the element's <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> attribute, if the
42231 element is a <a href=#concept-submit-button title=concept-submit-button>submit
42233 <a href=#form-owner>form owner</a>'s <code title=attr-fs-target><a href=#attr-fs-target>target</a></code>
42235 child nodes of <a href=#the-head-element>the <code>head</code> element</a> is a
42236 <code><a href=#the-base-element>base</a></code> element with a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, then the value of
42237 the <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute of the
42238 first such <code><a href=#the-base-element>base</a></code> element; or, if there is no such
42243 content attributes are <a href=#boolean-attribute title="boolean attribute">boolean
42248 an element is true if the element is a <a href=#concept-submit-button title=concept-submit-button>submit button</a> and the element's
42249 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code> attribute
42250 is present, or if the element's <a href=#form-owner>form owner</a>'s <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code> attribute is present,
42277 <a href=#reflect>reflect</a> the respective content attributes of the same
42279 attribute must reflect the <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code> content attribute. The
42281 attribute must reflect the <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code> content attribute. The
42283 attribute must reflect the <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code> content attribute.
42285 attribute must reflect the <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code> content attribute. The
42287 IDL attribute must reflect the <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code> content
42289 attribute must reflect the <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code> content attribute.
42301 <p>A <a href=#category-listed title=category-listed>listed form-associated
42305 validation</dfn>. (For example, an element is <a href=#barred-from-constraint-validation>barred from
42306 constraint validation</a> if it is an <code><a href=#the-output-element>output</a></code> or
42307 <code><a href=#the-fieldset-element>fieldset</a></code> element.)</p>
42310 defined. Initially, an element must have its <a href=#custom-validity-error-message>custom validity
42312 href=#suffering-from-a-custom-error>suffering from a custom
42313 error</a>. It can be set using the <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
42314 method. The user agent should use the <a href=#custom-validity-error-message>custom validity error
42327 <dd> <p>When a control has no <a href=#concept-fe-value title=concept-fe-value>value</a> but has a <code title="">required</code> attribute (<code><a href=#the-input-element>input</a></code> <code title=attr-input-required><a href=#attr-input-required>required</a></code>, <code><a href=#the-textarea-element>textarea</a></code>
42328 <code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code>). </dd>
42333 input has a <a href=#concept-fe-value title=concept-fe-value>value</a> that is not
42334 in the correct syntax (<a href=#e-mail-state title=attr-input-type-email>E-mail</a>, <a href=#url-state title=attr-input-type-url>URL</a>). </dd>
42338 <dd> <p>When a control has a <a href=#concept-fe-value title=concept-fe-value>value</a> that doesn't satisfy the
42339 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> attribute.</dd>
42343 <dd> <p>When a control has a <a href=#concept-fe-value title=concept-fe-value>value</a> that is too long for the
42344 <a href=#attr-fe-maxlength title=attr-fe-maxlength>form control <code title="">maxlength</code> attribute</a> (<code><a href=#the-input-element>input</a></code>
42345 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>,
42346 <code><a href=#the-textarea-element>textarea</a></code> <code title=attr-textarea-maxlength><a href=#attr-textarea-maxlength>maxlength</a></code>). </dd>
42350 <dd> <p>When a control has a <a href=#concept-fe-value title=concept-fe-value>value</a> that is too low for the <code title=attr-input-min><a href=#attr-input-min>min</a></code> attribute.</dd>
42354 <dd> <p>When a control has a <a href=#concept-fe-value title=concept-fe-value>value</a> that is too high for the
42355 <code title=attr-input-max><a href=#attr-input-max>max</a></code> attribute.</dd>
42359 <dd> <p>When a control has a <a href=#concept-fe-value title=concept-fe-value>value</a> that doesn't fit the rules
42360 given by the <code title=attr-input-step><a href=#attr-input-step>step</a></code>
42365 <dd> <p>When a control's <a href=#custom-validity-error-message>custom validity error
42366 message</a> (as set by the element's <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code>
42370 when the element is <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>; thus these states can
42376 <a href=#validity-states>validity states</a>.</p>
42387 constraints</dfn> of <code><a href=#the-form-element>form</a></code> element <var title="">form</var>, it must run the following steps, which return
42393 <ol><li><p>Let <var title="">controls</var> be a list of all the <a href=#category-submit title=category-submit>submittable elements</a> whose
42394 <a href=#form-owner>form owner</a> is <var title="">form</var>, in <a href=#tree-order>tree
42402 <p>For each element <var title="">field</var> in <var title="">controls</var>, in <a href=#tree-order>tree order</a>, run the
42405 <ol><li><p>If <var title="">field</var> is not a <a href=#candidate-for-constraint-validation>candidate for
42409 <li><p>Otherwise, if <var title="">field</var> <a href=#concept-fv-valid title=concept-fv-valid>satisfies its constraints</a>, then
42424 <p>For each element <var title="">field</var> in <var title="">invalid controls</var>, if any, in <a href=#tree-order>tree
42427 <ol><li><p><a href=#fire-a-simple-event>Fire a simple event</a> named <code title=event-invalid>invalid</code> that is cancelable at <var title="">field</var>.</li>
42438 constraints</dfn> of <code><a href=#the-form-element>form</a></code> element <var title="">form</var>, then the user agent must run the following
42441 <ol><li><p><a href=#statically-validate-the-constraints>Statically validate the constraints</a> of <var title="">form</var>, and let <var title="">unhandled invalid
42451 elements in the process, by running the <a href=#focusing-steps>focusing steps</a>
42457 a <a href=#radio-button-group title="radio button group">group</a> are marked as
42459 is not <a href=#being-rendered>being rendered</a> (e.g. it has the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute set) then user agents
42470 <dl class=domintro><dt><var title="">element</var> . <code title=dom-cva-willValidate><a href=#dom-cva-willvalidate>willValidate</a></code></dt>
42478 <dt><var title="">element</var> . <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity</a></code>(<var title="">message</var>)</dt>
42490 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-valueMissing><a href=#dom-validitystate-valuemissing>valueMissing</a></code></dt>
42498 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-typeMismatch><a href=#dom-validitystate-typemismatch>typeMismatch</a></code></dt>
42506 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-patternMismatch><a href=#dom-validitystate-patternmismatch>patternMismatch</a></code></dt>
42514 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-tooLong><a href=#dom-validitystate-toolong>tooLong</a></code></dt>
42522 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-rangeUnderflow><a href=#dom-validitystate-rangeunderflow>rangeUnderflow</a></code></dt>
42530 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-rangeOverflow><a href=#dom-validitystate-rangeoverflow>rangeOverflow</a></code></dt>
42538 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-stepMismatch><a href=#dom-validitystate-stepmismatch>stepMismatch</a></code></dt>
42542 <p>Returns true if the element's value doesn't fit the rules given by the <code title=attr-input-step><a href=#attr-input-step>step</a></code> attribute; false otherwise.</p>
42546 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-customError><a href=#dom-validitystate-customerror>customError</a></code></dt>
42554 <dt><var title="">element</var> . <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> . <code title=dom-validitystate-valid><a href=#dom-validitystate-valid>valid</a></code></dt>
42562 <dt><var title="">valid</var> = <var title="">element</var> . <code title=dom-cva-checkValidatity><a href=#dom-cva-checkvalidatity>checkValidity</a></code>()</dt>
42572 <dt><var title="">element</var> . <code title=dom-cva-validationMessage><a href=#dom-cva-validationmessage>validationMessage</a></code></dt>
42584 attribute must return true if an element is a <a href=#candidate-for-constraint-validation>candidate for
42586 conditions are <a href=#barred-from-constraint-validation title="barred from constraint
42590 <a href=#custom-validity-error-message>custom validity error message</a> to the value of the given
42599 value, uses the <code title=dom-cva-setCustomValidity><a href=#dom-cva-setcustomvalidity>setCustomValidity()</a></code> method
42623 attribute must return a <code><a href=#validitystate>ValidityState</a></code> object that
42624 represents the <a href=#validity-states>validity states</a> of the element. This
42625 object is <a href=#live>live</a>, and the same object must be returned
42626 each time the element's <code title=dom-cva-validity><a href=#dom-cva-validity>validity</a></code> attribute is retrieved.</p>
42629 readonly attribute boolean <a href=#dom-validitystate-valuemissing title=dom-ValidityState-valueMissing>valueMissing</a>;
42630 readonly attribute boolean <a href=#dom-validitystate-typemismatch title=dom-ValidityState-typeMismatch>typeMismatch</a>;
42631 readonly attribute boolean <a href=#dom-validitystate-patternmismatch title=dom-ValidityState-patternMismatch>patternMismatch</a>;
42632 readonly attribute boolean <a href=#dom-validitystate-toolong title=dom-ValidityState-tooLong>tooLong</a>;
42633 readonly attribute boolean <a href=#dom-validitystate-rangeunderflow title=dom-ValidityState-rangeUnderflow>rangeUnderflow</a>;
42634 readonly attribute boolean <a href=#dom-validitystate-rangeoverflow title=dom-ValidityState-rangeOverflow>rangeOverflow</a>;
42635 readonly attribute boolean <a href=#dom-validitystate-stepmismatch title=dom-ValidityState-stepMismatch>stepMismatch</a>;
42636 readonly attribute boolean <a href
42637 readonly attribute boolean <a href=#dom-validitystate-valid title=dom-ValidityState-valid>valid</a>;
42640 <p>A <code><a href=#validitystate>ValidityState</a></code> object has the following
42646 <dd> <p>The control is <a href=#suffering-from-being-missing>suffering from being missing</a>.</p> </dd>
42649 <dd> <p>The control is <a href=#suffering-from-a-type-mismatch>suffering from a type mismatch</a>.</p> </dd>
42652 <dd> <p>The control is <a href=#suffering-from-a-pattern-mismatch>suffering from a pattern mismatch</a>.</p> </dd>
42655 <dd> <p>The control is <a href=#suffering-from-being-too-long>suffering from being too long</a>.</p> </dd>
42658 <dd> <p>The control is <a href=#suffering-from-an-underflow>suffering from an underflow</a>.</p> </dd>
42661 <dd> <p>The control is <a href=#suffering-from-an-overflow>suffering from an overflow</a>.</p> </dd>
42664 <dd> <p>The control is <a href=#suffering-from-a-step-mismatch>suffering from a step mismatch</a>.</p> </dd>
42667 <dd> <p>The control is <a href=#suffering-from-a-custom-error>suffering from a custom error</a>.</p> </dd>
42673 method is invoked, if the element is a <a href=#candidate-for-constraint-validation>candidate for
42674 constraint validation</a> and does not <a href=#concept-fv-valid title=concept-fv-valid>satisfy its constraints</a>, the user
42675 agent must <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-invalid>invalid</code> that is cancelable (but in this
42682 <a href=#candidate-for-constraint-validation>candidate for constraint validation</a> or if it is one but
42683 it <a href=#concept-fv-valid title=concept-fv-valid>satisfies its constraints</a>;
42691 <a href=#candidate-for-constraint-validation>candidate for constraint validation</a> and is
42692 <a href=#suffering-from-a-custom-error>suffering from a custom error</a>, then the <a href=#custom-validity-error-message>custom
42722 the form specified by the <a href=#concept-fs-enctype title=concept-fs-enctype>enctype</a>, and then sent to the
42723 destination specified by the <a href=#concept-fs-action title=concept-fs-action>action</a> using the given <a href=#concept-fs-method title=concept-fs-method>method</a>.</p>
42765 <p>User agents may establish a <a href=#concept-button title=concept-button>button</a> in each form as being the
42766 form's <dfn id=default-button>default button</dfn>. This should be the first <a href=#concept-submit-button title=concept-submit-button>submit button</a> in <a href=#tree-order>tree
42767 order</a> whose <a href=#form-owner>form owner</a> is that <code><a href=#the-form-element>form</a></code>
42772 submits the form), then doing so must cause the form's <a href=#default-button>default
42773 button</a>'s <a href=#activation-behavior>activation behavior</a>, if any, to be
42776 <p class=note>Consequently, if the <a href=#default-button>default button</a> is
42777 <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>, the form is not
42779 button has no <a href=#activation-behavior>activation behavior</a> when disabled.)</p>
42781 <p>If the form has no <a href=#concept-submit-button title=concept-submit-button>submit
42783 <a href=#concept-form-submit title=concept-form-submit>submit</a> the
42784 <code><a href=#the-form-element>form</a></code> element from the <code><a href=#the-form-element>form</a></code> element
42799 a <code><a href=#document>Document</a></code> that has no associated <a href=#browsing-context>browsing
42800 context</a> or whose <a href=#browsing-context>browsing context</a> had its
42801 <a href=#sandboxed-forms-browsing-context-flag>sandboxed forms browsing context flag</a> set when the
42802 <code><a href=#document>Document</a></code> was created, then abort these steps without
42806 (i.e. the form was <a href=#concept-form-submit title=concept-form-submit>submitted</a> again while processing
42808 redundantly calling the <code title=dom-form-submit><a href=#dom-form-submit>submit()</a></code> method on <var title="">form</var>), then abort these steps. This doesn't affect
42814 and the <var title="">submitter</var> element's <a href=#concept-fs-novalidate title=concept-fs-novalidate>no-validate state</a> is false,
42815 then <a href=#interactively-validate-the-constraints>interactively validate the constraints</a> of <var title="">form</var> and examine the result: if the result is
42821 then <a href=#fire-a-simple-event>fire a simple event</a> that is cancelable named
42832 <li><p>Let <var title="">controls</var> be a list of all the <a href=#category-submit title=category-submit>submittable elements</a> whose
42833 <a href=#form-owner>form owner</a> is <var title="">form</var>, in <a href=#tree-order>tree
42843 in <a href=#tree-order>tree order</a>, run the following substeps:</p>
42851 <code><a href=#the-datalist-element>datalist</a></code> element ancestor.</li>
42853 <li>The <var title="">field</var> element is <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>.</li>
42855 <li>The <var title="">field</var> element is a <a href=#concept-button title=concept-button>button</a> but it is not <var title="">submitter</var>.</li>
42858 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state and
42859 whose <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> is
42863 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state and
42864 whose <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> is
42868 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, and
42870 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute specified, or
42871 its <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute's value is
42875 <code><a href=#the-object-element>object</a></code> element that is not using a
42876 <a href=#plugin>plugin</a>.</li>
42888 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state,
42891 <ol><li><p>If the <var title="">field</var> element has an <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute specified and value
42906 the user <a href=#concept-input-type-image-coordinate title=concept-input-type-image-coordinate>indicated a
42921 to the top of the <a href=#constructing-form-data-set>constructing the form data
42927 <li><p>Let <var title="">name</var> be the value of the <var title="">field</var> element's <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute.</li>
42930 <code><a href=#the-select-element>select</a></code> element, then for each <code><a href
42931 element in the <code><a href=#the-select-element>select</a></code> element whose <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is true,
42933 <var title="">name</var> as the name, the <a href=#concept-option-value title=concept-option-value>value</a> of the
42934 <code><a href=#the-option-element>option</a></code> element as the value, and <var title="">type</var> as the type.</li>
42939 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state or the
42940 <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state,
42943 <ol><li><p>If the <var title="">field</var> element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute specified, then
42955 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#file-upload-state title=attr-input-type-file>File Upload</a> state, then for
42956 each file <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected</a> in the
42957 <code><a href=#the-input-element>input</a></code> element, append an entry in the <var title="">form data set</var> with the <var title="">name</var> as
42960 there are no <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>,
42968 <code><a href=#the-object-element>object</a></code> element: try to obtain a form submission
42969 value from the <a href=#plugin>plugin</a><!-- using NPAPI's
42976 set</var> with <var title="">name</var> as the name, the <a href=#concept-fe-value title=concept-fe-value>value</a> of the <var title="">field</var> element as the value, and <var title="">type</var> as the type.</li>
42980 <li><p>Let <var title="">action</var> be the <var title="">submitter</var> element's <a href=#concept-fs-action title=concept-fs-action>action</a>.</li>
42984 <p>If <var title="">action</var> is the empty string, let <var title="">action</var> be <a href="#the-document's-address">the document's address</a>.</p>
42986 <p class=note>This step is a <a href=#willful-violation>willful violation</a> of
42989 content. <a href=#refsRFC3986>[RFC3986]</a></p>
43001 <li><p><a href=#resolve-a-url title="resolve a url">Resolve</a> the
43002 <a href=#url>URL</a> <var title="">action</var>, relative to the <var title="">submitter</var> element. If this fails, abort these
43004 <a href=#absolute-url>absolute URL</a>.</li>
43006 <li><p>Let <var title="">scheme</var> be the <a href=#url-scheme title=url-scheme><scheme></a> of the resulting
43007 <a href=#absolute-url>absolute URL</a>.</li>
43009 <li><p>Let <var title="">enctype</var> be the <var title="">submitter</var> element's <a href=#concept-fs-enctype title=concept-fs-enctype>enctype</a>.</li>
43011 <li><p>Let <var title="">method</var> be the <var title="">submitter</var> element's <a href=#concept-fs-method title=concept-fs-method>method</a>.</li>
43013 <li><p>Let <var title="">target</var> be the <var title="">submitter</var> element's <a href=#concept-fs-target title=concept-fs-target>target</a>.</li>
43025 <th> <a href=#attr-fs-method-get title=attr-fs-method-GET>GET</a>
43026 <th> <a href=#attr-fs-method-post title=attr-fs-method-POST>POST</a>
43027 <th> <a href=#attr-fs-method-put title=attr-fs-method-PUT>PUT</a>
43028 <th> <a href=#attr-fs-method-delete title=attr-fs-method-DELETE>DELETE</a>
43030 <td> <a href=#submit-mutate-action title=submit-mutate-action>Mutate action</a>
43031 <td> <a href=#submit-body title=submit-body>Submit as entity body</a>
43032 <td> <a href=#submit-body title=submit-body>Submit as entity body</a>
43033 <td> <a href=#submit-delete-action title=submit-delete-action>Delete action</a>
43035 <td> <a href=#submit-mutate-action title=submit-mutate-action>Mutate action</a>
43036 <td> <a href=#submit-body title=submit-body>Submit as entity body</a>
43037 <td> <a href=#submit-body title=submit-body>Submit as entity body</a>
43038 <td> <a href=#submit-delete-action title=submit-delete-action>Delete action</a>
43040 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43041 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43042 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43043 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43045 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43046 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43047 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43048 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43050 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43051 <td> <a href=#submit-data-post title=submit-data-post>Post to data:</a>
43052 <td> <a href=#submit-data-put title=submit-data-put>Put to data:</a>
43053 <td> <a href=#submit-get-action title=submit-get-action>Get action</a>
43055 <td> <a href=#submit-mailto-headers title=submit-mailto-headers>Mail with headers</a>
43056 <td> <a href=#submit-mailto-body title=submit-mailto-body>Mail as body</a>
43057 <td> <a href=#submit-mailto-headers title=submit-mailto-headers>Mail with headers</a>
43058 <td> <a href=#submit-mailto-headers title=submit-mailto-headers>Mail with headers</a>
43071 <var title="">form data set</var> using the <a href=#application/x-www-form-urlencoded-encoding-algorithm><code title="">application/x-www-form-urlencoded</code> encoding
43077 <p>Let <var title="">destination</var> be a new <a href=#url>URL</a>
43079 <a href=#url-query title=url-query><query></a> component is
43083 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43086 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43089 <a href=#replacement-enabled>replacement enabled</a>.</p>
43098 <a href=#appropriate-form-encoding-algorithm>appropriate form encoding algorithm</a>.</p>
43100 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43106 <dl><dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code></dt>
43110 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-formdata><a href=#attr-fs-enctype-formdata>multipart/form-data</a></code></dt>
43114 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-text><a href=#attr-fs-enctype-text>text/plain</a></code></dt>
43119 and the <a href=#origin>origin</a> of <var title="">action</var> is not
43120 the <a href=#same-origin>same origin</a> as that of the <code><a href=#the-form-element>form</a></code>
43121 element's <code><a href=#document>Document</a></code>, then abort these steps.</p>
43124 <p>Otherwise, <a href=#navigate>navigate</a> <var title="">target
43128 above, then it must be navigated with <a href=#replacement-enabled>replacement
43136 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43139 <p>If the <a href=#origin>origin</a> of <var title="">action</var> is
43140 not the <a href=#same-origin>same origin</a> as that of the
43141 <code><a href=#the-form-element>form</a></code> element's <code><a href=#document>Document</a></code>, then abort
43144 <p>Otherwise, <a href=#navigate>navigate</a> <var title="">target
43148 must be navigated with <a href=#replacement-enabled>replacement enabled</a>.</p>
43155 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43158 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43161 <a href=#replacement-enabled>replacement enabled</a>.</p>
43169 <var title="">form data set</var> using the <a href=#appropriate-form-encoding-algorithm>appropriate
43178 resulting double-escaped string. <a href=#refsRFC3986>[RFC3986]</a></p>
43186 resulting escaped string. <a href=#refsRFC3986>[RFC3986]</a></p>
43188 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43191 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43194 above, then it must be navigated with <a href=#replacement-enabled>replacement
43203 <var title="">form data set</var> using the <a href=#appropriate-form-encoding-algorithm>appropriate
43209 href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code></dt>
43213 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-formdata><a href=#attr-fs-enctype-formdata>multipart/form-data</a></code></dt>
43217 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-text><a href=#attr-fs-enctype-text>text/plain</a></code></dt>
43230 <li>A base-64 encoded representation of <var title="">data</var>. <a href=#refsRFC2045>[RFC2045]</a></li>
43232 </ol><p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43235 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43238 <a href=#replacement-enabled>replacement enabled</a>.</p>
43246 <var title="">form data set</var> using the <a href=#application/x-www-form-urlencoded-encoding-algorithm><code title="">application/x-www-form-urlencoded</code> encoding
43261 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43264 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43267 <a href=#replacement-enabled>replacement enabled</a>.</p>
43275 <var title="">form data set</var> using the <a href=#appropriate-form-encoding-algorithm>appropriate
43279 the URI Generic Syntax. <a href=#refsRFC3986>[RFC3986]</a></p>
43294 <p>Let <var title="">target browsing context</var> be <a href=#the-form-submission-target-browsing-context>the
43297 <p><a href=#navigate>Navigate</a> <var title="">target browsing
43300 <a href=#replacement-enabled>replacement enabled</a>.</p>
43306 follows: If the user indicated a specific <a href=#browsing-context>browsing
43308 target browsing context. Otherwise, apply <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for
43311 <a href=#browsing-context>browsing context</a> of <var title="">form</var> as the
43313 <a href=#browsing-context>browsing context</a> is the target browsing context.</p>
43318 <dl><dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code></dt>
43320 <dd>Use the <a href=#application/x-www-form-urlencoded-encoding-algorithm><code title="">application/x-www-form-urlencoded</code> encoding
43323 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-formdata><a href=#attr-fs-enctype-formdata>multipart/form-data</a></code></dt>
43325 <dd>Use the <a href=#multipart/form-data-encoding-algorithm><code title="">multipart/form-data</code> encoding
43328 <dt>If <var title="">enctype</var> is <code title=attr-fs-enctype-text><a href=#attr-fs-enctype-text>text/plain</a></code></dt>
43330 <dd>Use the <a href=#text/plain-encoding-algorithm><code title="">text/plain</code> encoding
43349 <p>If the <code><a href=#the-form-element>form</a></code> element has an <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code> attribute,
43352 from the list given in the <code><a href=#the-form-element>form</a></code>'s <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code> attribute
43353 that is an <a href=#ascii-compatible-character-encoding>ASCII-compatible character encoding</a>. If
43357 <p>Otherwise, if the <a href="#document's-character-encoding">document's character encoding</a> is
43358 an <a href=#ascii-compatible-character-encoding>ASCII-compatible character encoding</a>, then that is
43365 <li><p>Let <var title="">charset</var> be the <a href=#preferred-mime-name>preferred MIME
43478 the resulting byte stream. <a href=#refsRFC2388>[RFC2388]</a></p>
43509 <p>If the <code><a href=#the-form-element>form</a></code> element has an <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code> attribute,
43512 from the list given in the <code><a href=#the-form-element>form</a></code>'s <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code>
43517 <a href="#document's-character-encoding">document's character encoding</a>.</p>
43521 <li><p>Let <var title="">charset</var> be the <a href=#preferred-mime-name>preferred MIME
43559 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-reset>reset</code>, that is cancelable, at <var title="">form</var>, and then, if that event is not canceled, must
43560 invoke the <a href=#concept-form-reset-control title=concept-form-reset-control>reset
43561 algorithm</a> of each <a href=#category-reset title=category-reset>resettable elements</a> whose <a href=#form-owner>form
43562 owner</a> is <var title="">form</var>, and <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a> from <var title="">form</var>.</p>
43564 href=#category-reset title=category-reset>resettable element</a>
43581 events</dfn> from a <code><a href=#the-form-element>form</a></code> element <var title="">form</var>, it must run the following steps:</p>
43583 <ol><li><p>Let <var title="">controls</var> be a list of all the <a href=#category-reset title=category-reset>resettable elements</a> whose <a href=#form-owner>form
43586 <li>If the user agent was to <a href=#broadcast-forminput-events>broadcast <code title=event-forminput>forminput</code> events</a>, let <var title="">event name</var> be <code title=event-forminput>forminput</code>. Otherwise the user agent
43587 was to <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code> events</a>; let <var title="">event name</var> be <code title=event-formchange>formchange</code>.</li>
43590 <a href=#tree-order>tree order</a>, <a href=#fire-a-simple-event>fire a simple event</a> named
43601 <dd><a href=#flow-content>Flow content</a>.</dd>
43602 <dd><a href=#sectioning-root>Sectioning root</a>.</dd>
43603 <dd><a href=#interactive-content>Interactive content</a>.</dd>
43605 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
43607 <dd>One <code><a href=#the-summary-element>summary</a></code> element followed by <a href=#flow-content>flow content</a>.</dd>
43609 <dd><a href=#global-attributes>Global attributes</a></dd>
43610 <dd><code title=attr-details-open><a href=#attr-details-open>open</a></code></dd>
43613 <pre class=idl>interface <dfn id=htmldetailselement>HTMLDetailsElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
43614 attribute boolean <a href=#dom-details-open title=dom-details-open>open</a>;
43617 </dl><p>The <code><a href=#the-details-element>details</a></code> element <a href=#represents>represents</a> a
43621 <p class=note>The <code><a href=#the-details-element>details</a></code> element is not appropriate
43622 for footnotes. Please see <a href=#footnotes>the section on
43625 <p>The <span class=impl>first</span> <code><a href=#the-summary-element>summary</a></code> element
43626 child of the element, if any, <a href=#represents>represents</a> the summary or
43628 <code><a href=#the-summary-element>summary</a></code> element, the user agent should provide its own
43632 content attribute is a <a href=#boolean-attribute>boolean attribute</a>. If present,
43643 the user agent must set the <code title=attr-details-open><a href=#attr-details-open>open</a></code> attribute on the element to
43645 details to be hidden, the user agent must remove the <code title=attr-details-open><a href=#attr-details-open>open</a></code> attribute from the
43649 attribute must <a href=#reflect>reflect</a> the <code title=attr-details-open><a href=#attr-details-open>open</a></code> content attribute.</p>
43655 <p>The following example shows the <code><a href=#the-details-element>details</a></code> element
43677 <p>The following shows how a <code><a href=#the-details-element>details</a></code> element can be
43686 <p>One could use this in conjuction with other <code><a href=#the-details-element>details</a></code>
43704 <dd>As the first child of a <code><a href=#the-details-element>details</a></code> element.</dd>
43706 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
43708 <dd><a href=#global-attributes>Global attributes</a></dd>
43710 <dd>Uses <code><a href=#htmlelement>HTMLElement</a></code>.</dd>
43711 </dl><p>The <code><a href=#the-summary-element>summary</a></code> element <a href=#represents>represents</a> a
43713 <code><a href=#the-summary-element>summary</a></code> element's parent <code><a href=#the-details-element>details</a></code>
43785 * datagrid: cells that are links (<a href=""></a>)
45104 passed to the method. <a href="#refsECMA262">[ECMA262]</a></p>
45112 the method. <a href="#refsECMA262">[ECMA262]</a></p>
45119 method. <a href="#refsECMA262">[ECMA262]</a></p>
45125 value passed to the method. <a href="#refsECMA262">[ECMA262]</a></p>
45216 href="#refsECMA262">[ECMA262]</a></p>
46250 exception. <a href="#refsDOMCORE">[DOMCORE]</a></p>
46316 <dd><a href=#metadata-content>Metadata content</a>.</dd>
46317 <dd><a href=#flow-content>Flow content</a>.</dd>
46318 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
46320 <dd>Where <a href=#metadata-content>metadata content</a> is expected.</dd>
46321 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
46325 <dd><a href=#global-attributes>Global attributes</a></dd>
46326 <dd><code title=attr-command-type><a href=#attr-command-type>type</a></code></dd>
46327 <dd><code title=attr-command-label><a href=#attr-command-label>label</a></code></dd>
46328 <dd><code title=attr-command-icon><a href=#attr-command-icon>icon</a></code></dd>
46329 <dd><code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code></dd>
46330 <dd><code title=attr-command-checked><a href=#attr-command-checked>checked</a></code></dd>
46331 <dd><code title=attr-command-radiogroup><a href=#attr-command-radiogroup>radiogroup</a></code></dd>
46333 <dd>Also, the <code title=attr-command-title><a href=#attr-command-title>title</a></code> attribute has special semantics on this element.</dd>
46336 <pre class=idl>interface <dfn id=htmlcommandelement>HTMLCommandElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
46337 attribute DOMString <a href=#dom-command-type title=dom-command-type>type</a>;
46338 attribute DOMString <a href=#dom-command-label title=dom-command-label>label</a>;
46339 attribute DOMString <a href=#dom-command-icon title=dom-command-icon>icon</a>;
46340 attribute boolean <a href=#dom-command-disabled title=dom-command-disabled>disabled</a>;
46341 attribute boolean <a href=#dom-command-checked title=dom-command-checked>checked</a>;
46342 attribute DOMString <a href=#dom-command-radiogroup title=dom-command-radiogroup>radiogroup</a>;<!--
46346 </dl><p>The <code><a href=#the-command>command</a></code> element represents a command that the user
46354 <p>The attribute is an <a href=#enumerated-attribute>enumerated attribute</a> with three
46356 keyword maps to the <a href=#attr-command-type-state-command title=attr-command-type-state-command>Command</a> state, the
46358 keyword maps to the <a href=#attr-command-type-state-checkbox title=attr-command-type-state-checkbox>Checkbox</a> state, and
46360 keyword maps to the <a href=#attr-command-type-state-radio title=attr-command-type-state-radio>Radio</a> state. The
46361 <i>missing value default</i> is the <a href=#attr-command-type-state-command title=attr-command-type-state-command>Command</a> state.</p>
46365 <dd><p>The element <a href=#represents>represents</a> a normal command with an associated action.</dd>
46369 <dd><p>The element <a href=#represents>represents</a> a state or option that can be toggled.</dd>
46373 <dd><p>The element <a href=#represents>represents</a> a selection of one item from a list of items.</dd>
46377 <code title=attr-command-label><a href=#attr-command-label>label</a></code> attribute must be
46387 <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>valid non-empty URL potentially surrounded by
46388 spaces</a>. <span class=impl>To obtain the <a href=#absolute-url>absolute
46390 string, the attribute's value must be <a href=#resolve-a-url title="resolve a
46392 absent, or its value is the empty string, or <a href=#resolve-a-url title="resolve a
46399 is a <a href=#boolean-attribute>boolean attribute</a> that, if present, indicates that
46402 <p class=note>The distinction between <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> and <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> is subtle. A command would be
46412 attribute is a <a href=#boolean-attribute>boolean attribute</a> that, if present,
46414 omitted unless the <code title=attr-command-type><a href=#attr-command-type>type</a></code>
46415 attribute is in either the <a href=#attr-command-type-state-checkbox title=attr-command-type-state-checkbox>Checkbox</a> state or
46416 the <a href=#attr-command-type-state-radio title=attr-command-type-state-radio>Radio</a>
46421 toggled when the command itself is toggled, for commands whose <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute has the value "<code title="">radio</code>". The scope of the name is the child list of
46422 the parent element. The attribute must be omitted unless the <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is in the <a href=#attr-command-type-state-radio title=attr-command-type-state-radio>Radio</a> state.</p>
46452 IDL attributes must <a href=#reflect>reflect</a> the respective content
46455 <p>The element's <a href=#activation-behavior>activation behavior</a> depends on the
46456 value of the <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute
46459 <dl class=switch><dt>If the <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is
46460 in the <a href=#attr-command-type-state-checkbox title=attr-command-type-state-checkbox>Checkbox</a> state</dt>
46462 <dd><p>If the element has a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code> attribute, the UA must
46463 remove that attribute. Otherwise, the UA must add a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code> attribute, with the
46465 <a href=#fire-a-click-event>fire a <code title=event-click>click</code> event</a> at the
46469 <dt>If the <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is
46470 in the <a href=#attr-command-type-state-radio title=attr-command-type-state-radio>Radio</a> state</dt>
46474 <code><a href=#the-command>command</a></code> element, if that element has a <code title=attr-command-radiogroup><a href=#attr-command-radiogroup>radiogroup</a></code> attribute whose
46475 value exactly matches the current element's (treating missing <code title=attr-command-radiogroup><a href=#attr-command-radiogroup>radiogroup</a></code> attributes as if
46476 they were the empty string), and has a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code> attribute, must remove
46479 <p>Then, the element's <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code> attribute attribute
46481 the user agent must <a href=#fire-a-click-event>fire a <code title=event-click>click</code>
46487 <dd><p>The element has no <a href=#activation-behavior>activation behavior</a>.</dd>
46489 </dl><p class=note>Firing a synthetic <code title=event-click><a href=#event-click>click</a></code> event at the element does not cause
46500 <p class=note><code><a href=#the-command>command</a></code> elements are not rendered
46501 unless they <a href=#menus title=menu>form part of a menu</a>.</p>
46530 <dd><a href=#flow-content>Flow content</a>.</dd>
46531 <dd>If the element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#toolbar-state title="toolbar state">toolbar</a> state: <a href=#interactive-content>Interactive content</a>.</dd>
46533 <dd>Where <a href=#flow-content>flow content</a> is expected.</dd>
46535 <dd>Either: Zero or more <code><a href=#the-li-element>li</a></code> elements.</dd>
46536 <dd>Or: <a href=#flow-content>Flow content</a>.</dd>
46538 <dd><a href=#global-attributes>Global attributes</a></dd>
46539 <dd><code title=attr-menu-type><a href=#attr-menu-type>type</a></code></dd>
46540 <dd><code title=attr-menu-label><a href=#attr-menu-label>label</a></code></dd>
46543 <pre class=idl>interface <dfn id=htmlmenuelement>HTMLMenuElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
46544 attribute DOMString <a href=#dom-menu-type title=dom-menu-type>type</a>;
46545 attribute DOMString <a href=#dom-menu-label title=dom-menu-label>label</a>;
46547 </dl><p>The <code><a href=#menus>menu</a></code> element represents a list of commands.</p>
46552 is an <a href=#enumerated-attribute>enumerated attribute</a> indicating the kind of menu
46563 <p>If a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#context-menu-state title="context menu state">context menu</a> state, then the
46564 element <a href=#represents>represents</a> the commands of a context menu, and
46568 <p>If a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#toolbar-state title="toolbar state">toolbar</a> state, then the element
46569 <a href=#represents>represents</a> a list of active commands that the user can
46572 <p>If a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#list-state title="list state">list</a> state, then the element either
46573 <a href=#represents>represents</a> an unordered list of items (each represented
46574 by an <code><a href=#the-li-element>li</a></code> element), each of which represents a command
46576 <code><a href=#the-li-element>li</a></code> element children, <a href=#flow-content>flow content</a>
46582 containing another menu would use the nested menu's <code title=attr-menu-label><a href=#attr-menu-label>label</a></code> attribute for the submenu's
46588 <a href=#reflect>reflect</a> the respective content attributes of the same
46599 <p>The <code><a href=#menus>menu</a></code> element is used to define context menus and
46624 <li><a href="help.html">Help</a></li>
46625 <li><a href="about.html">About</a></li>
46661 <code><a href=#the-select-element>select</a></code> element with a submit button. The submit button
46663 the <code><a href=#menus>menu</a></code> element or of its <code><a href=#the-li-element>li</a></code>
46675 <ul class=brief><li><a href=#concept-command title=concept-command>Commands</a>, which can be marked as default commands</li>
46678 href=#menus>menu</a></code> element
46680 <a href=#tree-order>tree order</a>, the required behavior depends on what the
46683 <dl class=switch><dt>An element that <a href=#concept-command title=concept-command>defines a command</a></dt>
46685 <dd>Append the command to the menu, respecting its <a href=#concept-facet title=concept-facet>facets</a><!-- we might need to be
46699 <dt>An <code><a href=#the-hr-element>hr</a></code> element</dt>
46700 <dt>An <code><a href=#the-option-element>option</a></code> element that has a <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute set to the empty
46701 string, and has a <code title=attr-option-disabled><a href=#attr-option-disabled>disabled</a></code> attribute, and whose
46702 <code><a href=#textcontent>textContent</a></code> consists of a string of one or more
46708 <dt>An <code><a href=#the-li-element>li</a></code> element</dt>
46709 <dt>A <code><a href=#the-label-element>label</a></code> element</dt>
46714 <dt>A <code><a href=#menus>menu</a></code> element with no <code title=attr-menu-label><a href=#attr-menu-label>label</a></code> attribute</dt>
46715 <dt>A <code><a href=#the-select-element>select</a></code> element</dt>
46718 of the <code><a href=#menus>menu</a></code> or <code><a href=#the-select-element>select</a></code> element, then
46724 <dt>A <code><a href=#menus>menu</a></code> element with a <code title=attr-menu-label><a href=#attr-menu-label>label</a></code> attribute</dt>
46725 <dt>An <code><a href=#the-optgroup-element>optgroup</a></code> element with a <code title=attr-menu-label><a href=#attr-menu-label>label</a></code> attribute</dt>
46736 <dd><a href=#ignore>Ignore</a> the node.</dd>
46758 attribute gives the element's <a href=#context-menus title="context menus">context
46759 menu</a>. The value must be the ID of a <code><a href=#menus>menu</a></code> element
46761 the invoking the <code title=dom-Document-getElementById><a href=#dom-document-getelementbyid>getElementById()</a></code> method
46763 <code><a href=#menus>menu</a></code> element, then the element has no assigned context
46771 must <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-contextmenu>contextmenu</code> that bubbles and is
46780 assigned (using the <code title=attr-contextmenu><a href=#attr-contextmenu>contextmenu</a></code> attribute) or not. If
46785 context menu assigned, then the user agent must <a href=#fire-a-simple-event>fire a simple
46787 <code><a href=#menus>menu</a></code> element of the context menu of the nearest
46792 must show a context menu <a href=#building-menus-and-toolbars title="building menus and
46793 toolbars">built</a> from the <code><a href=#menus>menu</a></code> element.</p>
46803 <p>If the user selects a menu item that represents a <a href=#concept-command title=concept-command>command</a>, then the UA must invoke
46804 that command's <a href=#command-facet-action title=command-facet-Action>Action</a>.</p>
46818 attribute must <a href=#reflect>reflect</a> the <code title=attr-contextmenu><a href=#attr-contextmenu>contextmenu</a></code> content attribute.</p>
46847 <p>When a <code><a href=#menus>menu</a></code> element has a <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute in the <a href=#toolbar-state title="toolbar state">toolbar</a> state, then the user agent
46848 must <a href=#building-menus-and-toolbars title="building menus and toolbars">build</a> the
46849 menu for that <code><a href=#menus>menu</a></code> element, and use the result in the
46853 <code><a href=#menus>menu</a></code>'s DOM, by immediately <a href=#building-menus-and-toolbars title="building menus
46875 things, set the <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked
46878 things, toggle the value of the <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>.</dd>
46897 <dd>An <a href=#absolute-url>absolute URL</a> identifying a graphical image that
46922 could be a scripted event handler, a <a href=#url>URL</a> to which to
46923 <a href=#navigate>navigate</a>, or a form submission.</dd>
46938 <dl class=domintro><dt><var title="">element</var> . <code title=dom-command-ro-commandType><a href=#dom-command-ro-commandtype>commandType</a></code></dt>
46942 <p>Exposes the <a href=#command-facet-type title=command-facet-Type>Type</a> facet of the command.</p>
46946 <dt><var title="">element</var> . <code title=dom-id><a href=#dom-id>id</a></code></dt>
46950 <p>Exposes the <a href=#command-facet-id title=command-facet-ID>ID</a> facet of the command.</p>
46954 <dt><var title="">element</var> . <code title=dom-command-ro-label><a href=#dom-command-ro-label>label</a></code></dt>
46958 <p>Exposes the <a href=#command-facet-label title=command-facet-Label>Label</a> facet of the command.</p>
46962 <dt><var title="">element</var> . <code title=dom-title><a href=#dom-title>title</a></code></dt>
46966 <p>Exposes the <a href=#command-facet-hint title=command-facet-Hint>Hint</a> facet of the command.</p>
46970 <dt><var title="">element</var> . <code title=dom-command-ro-icon><a href=#dom-command-ro-icon>icon</a></code></dt>
46974 <p>Exposes the <a href=#command-facet-icon title=command-facet-Icon>Icon</a> facet of the command.</p>
46978 <dt><var title="">element</var> . <code title=dom-accessKeyLabel><a href=#dom-accesskeylabel>accessKeyLabel</a></code></dt>
46982 <p>Exposes the <a href=#command-facet-accesskey title=command-facet-AccessKey>Access Key</a> facet of the command.</p>
46986 <dt><var title="">element</var> . <code title=dom-hidden><a href=#dom-hidden>hidden</a></code></dt>
46990 <p>Exposes the <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a> facet of the command.</p>
46994 <dt><var title="">element</var> . <code title=dom-command-ro-disabled><a href=#dom-command-ro-disabled>disabled</a></code></dt>
46998 <p>Exposes the <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled State</a> facet of the command.</p>
47002 <dt><var title="">element</var> . <code title=dom-command-ro-checked><a href=#dom-command-ro-checked>checked</a></code></dt>
47006 <p>Exposes the <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a> facet of the command.</p>
47010 <dt><var title="">element</var> . <code title=dom-click><a href=#dom-click>click</a></code>()</dt>
47014 <p>Triggers the <a href=#command-facet-action title=command-facet-Action>Action</a> of the command.</p>
47031 attribute must return a string whose value is either "<code title="">command</code>", "<code title="">radio</code>", or "<code title="">checkbox</code>", depending on whether the <a href=#command-facet-type title=command-facet-Type>Type</a> of the command defined by the
47036 attribute must return the command's <a href=#command-facet-label title=command-facet-Label>Label</a>, or null if the element
47037 does not define a command or does not specify a <a href=#command-facet-label title=command-facet-Label>Label</a>. This attribute will be
47042 attribute must return the <a href=#absolute-url>absolute URL</a> of the command's
47043 <a href=#command-facet-icon title=command-facet-Icon>Icon</a>. If the element does
47046 by the <code title=dom-command-icon><a href=#dom-command-icon>icon</a></code> IDL attribute on
47047 <code><a href=#the-command>command</a></code> elements.</p>
47050 attribute must return true if the command's <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled State</a> is that
47052 disabled. This attribute is not affected by the command's <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>. If the
47057 must return true if the command's <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a> is that the
47060 must return false. This attribute will be shadowed by the <code title="">checked</code> IDL attribute on <code><a href=#the-input-element>input</a></code> and
47061 <code><a href=#the-command>command</a></code> elements.</p>
47073 <p class=note>The <a href=#command-facet-id title=command-facet-ID>ID</a> facet
47074 is exposed by the <code title=dom-id><a href=#dom-id>id</a></code> IDL attribute,
47075 the <a href=#command-facet-hint title=command-facet-Hint>Hint</a> facet is exposed by
47076 the <code title=dom-title><a href=#dom-title>title</a></code> IDL attribute, the <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> facet is exposed by
47077 the <code title=dom-accessKeyLabel><a href=#dom-accesskeylabel>accessKeyLabel</a></code> IDL
47078 attribute, and the <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden
47079 State</a> facet is exposed by the <code title=dom-hidden><a href=#dom-hidden>hidden</a></code> IDL attribute.</p>
47083 <hr><dl class=domintro><dt><var title="">document</var> . <code title=dom-document-commands><a href=#dom-document-commands>commands</a></code></dt>
47085 <p>Returns an <code><a href=#htmlcollection>HTMLCollection</a></code> of the elements in the
47086 <code><a href=#document>Document</a></code> that define commands and have IDs.</p>
47092 of the document's <code><a href=#htmldocument>HTMLDocument</a></code> interface must return an
47093 <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the <code><a href=#document>Document</a></code>
47094 node, whose filter matches only elements that <a href=#concept-command title=concept-command>define commands</a> and have <a href=#command-facet-id title=command-facet-ID>IDs</a>.</p>
47098 <hr><p>User agents may expose the <a href=#concept-command title=concept-command>commands</a> whose <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a> facet is false
47100 encouraged to do this especially for commands that have <a href=#command-facet-accesskey title=command-facet-AccessKey>Access Keys</a>, as a way to
47108 <p>An <code><a href=#the-a-element>a</a></code> element with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute <a href=#concept-command title=concept-command>defines a command</a>.</p>
47110 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47113 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47114 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47116 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47118 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47119 is the string given by the element's <code><a href=#textcontent>textContent</a></code> IDL
47122 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47123 is the value of the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
47124 of the element. If the attribute is not present, the <a href=#command-facet-hint title=command-facet-Hint>Hint</a> is the empty string.</p>
47126 <p>The <a href=#command-facet-icon title=command-facet-Icon>Icon</a> of the command
47127 is the <a href=#absolute-url>absolute URL</a> obtained from <a href=#resolve-a-url title="resolve
47128 a url">resolving</a> the value of the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute of the first
47129 <code><a href=#the-img-element>img</a></code> element descendant of the element, relative to that
47131 successful. Otherwise, there is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the command.</p>
47133 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47134 command is the element's <a href=#assigned-access-key>assigned access key</a>, if
47137 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>
47138 of the command is true (hidden) if the element has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute, and false
47141 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47145 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47148 <p>The <a href=#command-facet-action title=command-facet-Action>Action</a> of the
47149 command is to <a href=#fire-a-click-event title="fire a click event">fire a <code title=event-click>click</code> event</a> at the element.</p>
47154 <p>A <code><a href=#the-button-element>button</a></code> element always <a href=#concept-command title=concept-command>defines a command</a>.</p>
47156 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a>, <a href=#command-facet-id title=command-facet-ID>ID</a>, <a href=#command-facet-label title=command-facet-Label>Label</a>, <a href=#command-facet-hint title=command-facet-Hint>Hint</a>, <a href=#command-facet-icon title=command-facet-Icon>Icon</a>, <a href=#command-facet-accesskey title=command-facet-AccessKey>Access Key</a>, <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>, <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>, and <a href=#command-facet-action title=command-facet-Action>Action</a> facets of the command are
47157 determined <a href=#using-the-a-element-to-define-a-command title=a-command>as for <code>a</code>
47160 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47161 State</a> of the command mirrors the <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a> state of the button.</p>
47166 <p>An <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in one of the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>, <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>, <a href=#image-button-state title=attr-input-type-image>Image Button</a>, <a href=#button-state title=attr-input-type-button>Button</a>, <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a>, or <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> states <a href=#concept-command title=concept-command>defines a command</a>.</p>
47168 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47169 is "radio" if the <code title=attr-input-type><a href=#attr-input-type>type</a></code>
47170 attribute is in the <code title=attr-input-type-radio><a href=#radio-button-state>Radio
47171 Button</a></code> state, "checkbox" if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <code title=attr-input-type-checkbox><a href=#checkbox-state>Checkbox</a></code> state, and
47174 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47175 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47177 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47179 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47182 <p>If the <a href=#command-facet-type title=command-facet-Type>Type</a> is "command",
47183 then it is the string given by the <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if any, and a
47187 <p>Otherwise, the <a href=#command-facet-type title=command-facet-Type>Type</a> is
47188 "radio" or "checkbox". If the element is a <a href=#labeled-control>labeled
47189 control</a>, the <code><a href=#textcontent>textContent</a></code> of the first
47190 <code><a href=#the-label-element>label</a></code> element in <a href=#tree-order>tree order</a> whose
47191 <a href=#labeled-control>labeled control</a> is the element in question is the <a href=#command-facet-label title=command-facet-Label>Label</a> (in DOM terms, this is the
47193 the value of the <code title=attr-input-value><a href=#attr-input-value>value</a></code>
47194 attribute, if present, is the <a href=#command-facet-label title=command-facet-Label>Label</a>. Otherwise, the <a href=#command-facet-label title=command-facet-Label>Label</a> is the empty string.</p>
47196 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47197 is the value of the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
47198 of the <code><a href=#the-input-element>input</a></code> element. If the attribute is not present, the
47199 <a href=#command-facet-hint title=command-facet-Hint>Hint</a> is the empty
47202 <p>If the element's <code title=attr-input-type><a href=#attr-input-type>type</a></code>
47203 attribute is in the <a href=#image-button-state title=attr-input-type-image>Image
47204 Button</a> state, and the element has a <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute, and that attribute's
47205 value can be successfully <a href=#resolve-a-url title="resolve a
47206 url">resolved</a> relative to the element, then the <a href=#command-facet-icon title=command-facet-Icon>Icon</a> of the command is the
47207 <a href=#absolute-url>absolute URL</a> obtained from resolving that attribute
47208 that way. Otherwise, there is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the command.</p>
47210 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47211 command is the element's <a href=#assigned-access-key>assigned access key</a>, if
47214 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>
47215 of the command is true (hidden) if the element has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute, and false
47218 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47219 State</a> of the command mirrors the <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a> state of the
47222 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47223 of the command is true if the command is of <a href=#command-facet-type title=command-facet-Type>Type</a> "radio" or "checkbox" and the
47224 element is <a href=#concept-fe-checked title=concept-fe-checked>checked</a>
47227 <p>The <a href=#command-facet-action title=command-facet-Action>Action</a> of the
47228 command, if the element has a defined <a href=#activation-behavior>activation
47229 behavior</a>, is to <a href=#run-synthetic-click-activation-steps>run synthetic click activation
47230 steps</a> on the element. Otherwise, it is just to <a href=#fire-a-click-event>fire a
47237 <p>An <code><a href=#the-option-element>option</a></code> element with an ancestor
47238 <code><a href=#the-select-element>select</a></code> element and either no <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute or a <code title=attr-option-value><a href=#attr-option-value>value</a></code> attribute that is not the
47239 empty string <a href=#concept-command title=concept-command>defines a
47242 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47243 is "radio" if the <code><a href=#the-option-element>option</a></code>'s nearest ancestor
47244 <code><a href=#the-select-element>select</a></code> element has no <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute, and
47247 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47248 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47250 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47252 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47253 is the value of the <code><a href=#the-option-element>option</a></code> element's <code title=attr-option-label><a href=#attr-option-label>label</a></code> attribute, if there is one,
47254 or the value of the <code><a href=#the-option-element>option</a></code> element's
47255 <code><a href=#textcontent>textContent</a></code> IDL attribute if there isn't.</p>
47257 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47258 is the string given by the element's <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute, if any, and the empty
47261 href=#command-facet-icon title=command-facet-Icon>Icon</a> for the
47264 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47265 command is the element's <a href=#assigned-access-key>assigned access key</a>, if
47268 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>
47269 of the command is true (hidden) if the element has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute, and false
47272 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47274 <a href=#concept-option-disabled title=concept-option-disabled>disabled</a> or if its
47275 nearest ancestor <code><a href=#the-select-element>select</a></code> element is <a href=#concept-option-disabled title=concept-option-disabled>disabled</a>, and false
47278 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47279 of the command is true (checked) if the element's <a href=#concept-option-selectedness title=concept-option-selectedness>selectedness</a> is true, and
47282 <p>The <a href=#command-facet-action title=command-facet-Action>Action</a> of the
47283 command depends on its <a href=#command-facet-type title=command-facet-Type>Type</a>. If the command is of <a href=#command-facet-type title=command-facet-Type>Type</a> "radio" then it must <a href=#concept-select-pick title=concept-select-pick>pick</a> the <code><a href=#the-option-element>option</a></code>
47284 element. Otherwise, it must <a href=#concept-select-toggle title=concept-select-toggle>toggle</a> the <code><a href=#the-option-element>option</a></code>
47291 <p>A <code><a href=#the-command>command</a></code> element <a href=#concept-command title=concept-command>defines a command</a>.</p>
47293 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47294 is "radio" if the <code><a href=#the-command>command</a></code>'s <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is
47298 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47299 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47301 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47303 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47304 is the value of the element's <code title=attr-command-label><a href=#attr-command-label>label</a></code> attribute, if there is one,
47307 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47308 is the string given by the element's <code title=attr-command-title><a href=#attr-command-title>title</a></code> attribute, if any, and the
47311 <p>The <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the command
47312 is the <a href=#absolute-url>absolute URL</a> obtained from <a href=#resolve-a-url title="resolve
47313 a url">resolving</a> the value of the element's <code title=attr-command-icon><a href=#attr-command-icon>icon</a></code> attribute, relative to the
47315 successful. Otherwise, there is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the command.</p>
47317 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47318 command is the element's <a href=#assigned-access-key>assigned access key</a>, if
47321 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>
47322 of the command is true (hidden) if the element has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute, and false
47325 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47327 <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> attribute, and
47330 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47331 of the command is true (checked) if the element has a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code> attribute, and false
47334 <p>The <a href=#command-facet-action title=command-facet-Action>Action</a> of the
47335 command, if the element has a defined <a href=#activation-behavior>activation
47336 behavior</a>, is to <a href=#run-synthetic-click-activation-steps>run synthetic click activation
47337 steps</a> on the element. Otherwise, it is just to <a href=#fire-a-click-event>fire a
47347 <p>A <code><a href=#the-label-element>label</a></code> element that has an <a href=#assigned-access-key>assigned access
47348 key</a> and a <a href=#labeled-control>labeled control</a> and whose
47349 <a href=#labeled-control>labeled control</a> <a href=#concept-command title=concept-command>defines a
47350 command</a>, itself <a href=#concept-command title=concept-command>defines a
47353 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47356 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47357 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47359 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47361 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47362 is the string given by the element's <code><a href=#textcontent>textContent</a></code> IDL
47365 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47366 is the value of the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
47369 <p>There is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the
47372 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47373 command is the element's <a href=#assigned-access-key>assigned access key</a>.</p>
47375 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>,
47376 <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled State</a>, and
47377 <a href=#command-facet-action title=command-facet-Action>Action</a> facets of the
47379 <a href=#labeled-control>labeled control</a>.</p>
47381 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47388 <p>A <code><a href=#the-legend-element>legend</a></code> element that has an <a href=#assigned-access-key>assigned access
47389 key</a> and is a child of a <code><a href=#the-fieldset-element>fieldset</a></code> element that
47390 has a descendant that is not a descendant of the <code><a href=#the-legend-element>legend</a></code>
47391 element and is neither a <code><a href=#the-label-element>label</a></code> element nor a
47392 <code><a href=#the-legend-element>legend</a></code> element but that <a href=#concept-command title=concept-command>defines a command</a>, itself <a href=#concept-command title=concept-command>defines a command</a>.</p>
47394 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47397 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47398 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47400 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47402 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47403 is the string given by the element's <code><a href=#textcontent>textContent</a></code> IDL
47406 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47407 is the value of the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
47410 <p>There is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the
47413 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47414 command is the element's <a href=#assigned-access-key>assigned access key</a>.</p>
47416 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>,
47417 <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled State</a>, and
47418 <a href=#command-facet-action title=command-facet-Action>Action</a> facets of the
47420 in <a href=#tree-order>tree order</a> that is a descendant of the parent of the
47421 <code><a href=#the-legend-element>legend</a></code> element that <a href=#concept-command title=concept-command>defines a command</a> but is not a
47422 descendant of the <code><a href=#the-legend-element>legend</a></code> element and is neither a
47423 <code><a href=#the-label-element>label</a></code> nor a <code><a href=#the-legend-element>legend</a></code> element.</p>
47425 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47432 <p>An element that has an <a href=#assigned-access-key>assigned access key</a> <a href=#concept-command title=concept-command>defines a command</a>.</p>
47434 <p>If one of the other sections that define elements that <a href=#concept-command title=concept-command>define commands</a> define that this
47435 element <a href=#concept-command title=concept-command>defines a command</a>, then
47439 <p>The <a href=#command-facet-type title=command-facet-Type>Type</a> of the command
47442 <p>The <a href=#command-facet-id title=command-facet-ID>ID</a> of the command is
47443 the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute of the
47445 command is an <a href=#anonymous-command>anonymous command</a>.</p>
47447 <p>The <a href=#command-facet-label title=command-facet-Label>Label</a> of the command
47448 depends on the element. If the element is a <a href=#labeled-control>labeled
47449 control</a>, the <code><a href=#textcontent>textContent</a></code> of the first
47450 <code><a href=#the-label-element>label</a></code> element in <a href=#tree-order>tree order</a> whose
47451 <a href=#labeled-control>labeled control</a> is the element in question is the <a href=#command-facet-label title=command-facet-Label>Label</a> (in DOM terms, this is the
47453 <a href=#command-facet-label title=command-facet-Label>Label</a> is the
47454 <code><a href=#textcontent>textContent</a></code> of the element itself.</p>
47456 <p>The <a href=#command-facet-hint title=command-facet-Hint>Hint</a> of the command
47457 is the value of the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute
47458 of the element. If the attribute is not present, the <a href=#command-facet-hint title=command-facet-Hint>Hint</a> is the empty string.</p>
47460 <p>There is no <a href=#command-facet-icon title=command-facet-Icon>Icon</a> for the
47463 <p>The <a href=#command-facet-accesskey title=command-facet-AccessKey>AccessKey</a> of the
47464 command is the element's <a href=#assigned-access-key>assigned access key</a>.</p>
47466 <p>The <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden State</a>
47467 of the command is true (hidden) if the element has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute, and false
47470 <p>The <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled
47474 <p>The <a href=#command-facet-checkedstate title=command-facet-CheckedState>Checked State</a>
47477 <p>The <a href=#command-facet-action title=command-facet-Action>Action</a> of the
47480 <ol><li>If the element is <a href=#focusable>focusable</a>, run the
47481 <a href=#focusing-steps>focusing steps</a> for the element.</li>
47483 <li>If the element has a defined <a href=#activation-behavior>activation behavior</a>,
47484 <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> on the
47488 <a href=#activation-behavior>activation behavior</a>, <a href=#fire-a-click-event>fire a <code title=event-click>click</code> event</a> at the element.</li>
47498 <dd><a href=#flow-content>Flow content</a>.</dd>
47499 <dd><a href=#phrasing-content>Phrasing content</a>.</dd>
47500 <dd><a href=#interactive-content>Interactive content</a>.</dd>
47502 <dd>Where <a href=#phrasing-content>phrasing content</a> is expected.</dd>
47506 <dd><a href=#global-attributes>Global attributes</a></dd>
47507 <dd><code title=attr-device-type><a href=#attr-device-type>type</a></code></dd>
47510 <pre class=idl>interface <dfn id=htmldeviceelement>HTMLDeviceElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
47514 </dl><p>The <code><a href=#devices>device</a></code> element represents a device selector, to
47520 would like access to. The attribute is an <a href=#enumerated-attribute>enumerated
47566 <p>The <code><a href=#stream>Stream</a></code> interface is used to represent
47570 readonly attribute DOMString <a href=#dom-stream-url title=dom-stream-url>url</a>;
47571 <a href=#streamrecorder>StreamRecorder</a> <a href=#dom-stream-record title=dom-stream-record>record</a>();
47576 stream. <a href=#refsFILEAPI>[FILEAPI]</a></p>
47579 supported by the user agent for use in <code><a href=#audio>audio</a></code> and
47580 <code><a href=#video>video</a></code> elements.</p>
47586 <code><a href=#streamrecorder>StreamRecorder</a></code> object associated with the stream.</p>
47589 <span>File</span> <a href=#dom-streamrecorder-stop title=dom-StreamRecorder-stop>stop</a>();
47595 <code><a href=#streamrecorder>StreamRecorder</a></code> object and the invocation of the <code title=dom-StreamRecorder-stop><a href=#dom-streamrecorder-stop>stop()</a></code> method. <a href=#refsFILEAPI>[FILEAPI]</a></p>
47598 supported by the user agent for use in <code><a href=#audio>audio</a></code> and
47599 <code><a href=#video>video</a></code> elements.</p>
47608 <code><a href=#devices>device</a></code> element to allow reviewers to look at it.</p>
47613 attribute <a href=#function>Function</a> ontext; // receiving
47616 attribute <a href=#function>Function</a> onbitmap; // receiving
47619 attribute <a href=#function>Function</a> onfile; // receiving
47625 attribute <a href=#function>Function</a> onstream; // receiving
47627 void <span title=dom-ConnectionPeer-getLocalConfiguration>getLocalConfiguration</span>(in <a href=#connectionpeerconfigurationcallback>ConnectionPeerConfigurationCallback</a> callback); // maybe this should be in the constructor
47631 attribute <a href=#function>Function</a> onconnect;
47632 attribute <a href=#function>Function</a> onerror;
47633 attribute <a href=#function>Function</a> ondisconnect;
47638 void <span title=dom-ConnectionPeerConfigurationCallback-handleEvent>handleEvent</span>(in <a href=#connectionpeer>ConnectionPeer</a> server, in DOMString configuration);
47713 <p>The <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and <code><a href=#the-link-element>link</a></code>
47717 <p>The <dfn id=attr-hyperlink-href title=attr-hyperlink-href><code>href</code></dfn>
47718 attribute on <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements must have
47719 a value that is a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially surrounded by
47720 spaces</a>. This <a href=#url>URL</a> is the <i>destination
47723 <p class=note>The <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
47724 attribute on <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements is not
47725 required; when those elements do not have <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes they do not
47728 <p class=note>The <code title=attr-link-href><a href=#attr-link-href>href</a></code>
47729 attribute on the <code><a href=#the-link-element>link</a></code> element <em>is</em> required (and
47730 has to be a <a href=#valid-non-empty-url>valid <em>non-empty</em> URL</a>), but whether
47731 a <code><a href=#the-link-element>link</a></code> element represents a hyperlink or not depends on
47732 the value of the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute of
47736 attribute, if present, must be a <a href=#valid-browsing-context-name-or-keyword>valid browsing context name
47737 or keyword</a>. It gives the name of the <a href=#browsing-context>browsing
47739 this name when <a href=#following-hyperlinks>following hyperlinks</a>.</span></p>
47745 a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a>, each of which must be
47746 a <a href=#valid-non-empty-url>valid non-empty URL</a>. <span class=impl>The value is
47747 used by the user agent for <a href=#hyperlink-auditing>hyperlink
47751 <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements that represent
47755 must be a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a>. The <a href=#linkTypes>allowed values and their meanings</a> are defined
47756 below. The <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute has
47764 designed. It is purely advisory. The value must be a <a href=#valid-media-query>valid
47765 media query</a>. The default, if the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code> attribute is omitted, is
47771 valid BCP 47 language tag. <a href=#refsBCP47>[BCP47]</a>
47779 attribute, if present, gives the <a href=#mime-type>MIME type</a> of the
47781 <a href=#valid-mime-type>valid MIME type</a>. <span class=impl>User agents must
47782 not consider the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
47793 <a href=#resolve-a-url title="resolve a url">resolve</a> the <a href=#url>URL</a>
47794 given by the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute
47796 successful, must <a href=#navigate>navigate</a> a <a href=#browsing-context>browsing
47797 context</a> to the resulting <a href=#absolute-url>absolute URL</a>. In the
47799 further have its <var><a href=#hyperlink-suffix>hyperlink suffix</a></var> appended to it.</p>
47801 <p>If <a href=#resolve-a-url title="resolve a url">resolving</a> the
47802 <a href=#url>URL</a> fails, the user agent may report the error to the
47806 <p>If the user indicated a specific <a href=#browsing-context>browsing context</a>
47809 that must be the <a href=#browsing-context>browsing context</a> that is
47812 <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
47813 <code><a href=#the-area-element>area</a></code> element that has a <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, then the
47814 <a href=#browsing-context>browsing context</a> that is navigated must be chosen by
47815 applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a
47816 browsing context name</a>, using the value of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute as the
47818 new <a href=#browsing-context>browsing context</a>, it must be navigated with
47819 <a href=#replacement-enabled>replacement enabled</a>.</p>
47821 <p>Otherwise, if the hyperlink element is a <a href=#rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</a> and the user
47826 <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
47827 <code><a href=#the-area-element>area</a></code> element with no <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, but one of
47828 the child nodes of <a href=#the-head-element>the <code>head</code> element</a> is a
47829 <code><a href=#the-base-element>base</a></code> element with a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, then the browsing
47830 context that is navigated must be chosen by applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules
47832 using the value of the <code title=attr-base-target><a href=#attr-base-target>target</a></code>
47833 attribute of the first such <code><a href=#the-base-element>base</a></code> element as the
47835 new <a href=#browsing-context>browsing context</a>, it must be navigated with
47836 <a href=#replacement-enabled>replacement enabled</a>.</p>
47842 <p>The navigation must be done with the <a href=#browsing-context>browsing
47843 context</a> that contains the <code><a href=#document>Document</a></code> object with
47845 <a href=#source-browsing-context>source browsing context</a>.</p>
47855 <p>If an <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code> hyperlink element has a
47856 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute, and the
47857 user follows the hyperlink, and the hyperlink's <a href=#url>URL</a> can
47858 be <a href=#resolve-a-url title="resolve a url">resolved</a>, relative to the
47860 the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute's value,
47861 <a href=#split-a-string-on-spaces title="split a string on spaces">split that string on
47862 spaces</a>, <a href=#resolve-a-url title="resolve a url">resolve</a> each
47864 send a request (as described below) to each of the resulting <a href=#absolute-url title="absolute URL">absolute URLs</a>. (Tokens that fail to
47871 on the user's preferences, UAs may either <a href=#ignore>ignore</a> the
47872 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute altogether,
47877 <a href=#fetch title=fetch>fetching</a> the specified URLs using the
47878 POST method, with an entity body with the <a href=#mime-type>MIME type</a>
47879 <code><a href=#text/ping>text/ping</a></code> consisting of the four-character string
47880 "<code title="">PING</code>", from the <a href=#origin>origin</a> of the
47881 <code><a href=#document>Document</a></code> containing the <a href=#hyperlink>hyperlink</a>. <!--
47886 <dl class=switch><dt>If both the <a href="#the-document's-address" title="the document's address">address</a>
47887 of the <code><a href=#document>Document</a></code> object containing the hyperlink being
47888 audited and the ping URL have the <a href=#same-origin>same origin</a></dt>
47890 <dd>The request must include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with, as its
47891 value, the <a href="#the-document's-address" title="the document's address">address</a> of
47892 the document containing the hyperlink, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
47893 the address of the <a href=#absolute-url>absolute URL</a> of the target of the
47902 value, the <a href="#the-document's-current-address" title="the document's current address">current
47903 address</a> of the document containing the hyperlink, a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with the same
47904 value, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header
47912 <dd>The request must include a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
47915 HTTP header nor include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header.</dd>
47925 they start receiving an entity body. <a href=#refsCOOKIES>[COOKIES]</a></p>
47928 by <a href=#fetch title=fetch>fetching</a> the specified URL normally,
47931 <p>When the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is
47945 <p>The <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is redundant
47950 <p>However, the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute
47966 authors are encouraged to use the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute so that the user
47991 <p>To determine which link types apply to a <code><a href=#the-link-element>link</a></code>,
47992 <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code> element, the element's <code title="">rel</code> attribute must be <a href=#split-a-string-on-spaces title="split a string on
48003 including all those defined in this specification, are <a href=#ascii-case-insensitive>ASCII
48013 <tr><th><code><a href=#the-link-element>link</a></code></th>
48014 <th><code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></th>
48015 <tbody><tr><td><code title=rel-alternate><a href=#link-type-alternate>alternate</a></code></td> <!-- second most used <link rel> value -->
48016 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48017 <td><a href=#hyperlink>Hyperlink</a></td>
48019 <tr><td><code title=rel-archives><a href=#link-type-archives>archives</a></code></td>
48020 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48021 <td><a href=#hyperlink>Hyperlink</a></td>
48023 <tr><td><code title=rel-author><a href=#link-type-author>author</a></code></td>
48024 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48025 <td><a href=#hyperlink>Hyperlink</a></td>
48027 <tr><td><code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code></td> <!-- fourth most used <a rel> value -->
48029 <td><a href=#hyperlink>Hyperlink</a></td>
48038 --><tr><td><code title=rel-external><a href=#link-type-external>external</a></code></td> <!-- fifth and sixth most used <a rel> value (sixth is "external nofollow") -->
48040 <td><a href=#hyperlink>Hyperlink</a></td>
48042 <tr><td><code title=rel-first><a href=#link-type-first>first</a></code></td>
48043 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48044 <td><a href=#hyperlink>Hyperlink</a></td>
48046 <tr><td><code title=rel-help><a href=#link-type-help>help</a></code></td>
48047 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48048 <td><a href=#hyperlink>Hyperlink</a></td>
48050 <tr><td><code title=rel-icon><a href=#rel-icon>icon</a></code></td> <!-- link rel="shortcut icon" and its ilk are the fourth, sixth, and ninth most used values -->
48051 <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
48054 <tr><td><code title=rel-index><a href=#link-type-index>index</a></code></td> <!-- used more than "top" and "contents" on <link> (though on <a>, "contents" wins) -->
48055 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48056 <td><a href=#hyperlink>Hyperlink</a></td>
48058 <tr><td><code title=rel-last><a href=#link-type-last>last</a></code></td>
48059 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48060 <td><a href=#hyperlink>Hyperlink</a></td>
48062 <tr><td><code title=rel-license><a href=#link-type-license>license</a></code></td> <!-- seventh most used <a rel> value -->
48063 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48064 <td><a href=#hyperlink>Hyperlink</a></td>
48066 <tr><td><code title=rel-next><a href=#link-type-next>next</a></code></td>
48067 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48068 <td><a href=#hyperlink>Hyperlink</a></td>
48070 <tr><td><code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code></td> <!-- most used <a rel> value (and sixth most used is "external nofollow") -->
48072 <td><a href=#hyperlink>Hyperlink</a></td>
48074 <tr><td><code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code></td>
48076 <td><a href=#hyperlink>Hyperlink</a></td>
48078 <tr><td><code title=rel-pingback><a href=#link-type-pingback>pingback</a></code></td>
48079 <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
48082 <tr><td><code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code></td>
48083 <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
48086 <tr><td><code title=rel-prev><a href=#link-type-prev>prev</a></code></td> <!-- prev is used more than previous -->
48087 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48088 <td><a href=#hyperlink>Hyperlink</a></td>
48090 <tr><td><code title=rel-search><a href=#link-type-search>search</a></code></td> <!-- used quite a bit -->
48091 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48092 <td><a href=#hyperlink>Hyperlink</a></td>
48094 <tr><td><code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code></td> <!-- most commonly used <link rel> value, variants came in 7th, 8th, 12th, 17th... -->
48095 <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
48098 <tr><td><code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code></td> <!-- used quite a bit -->
48099 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48100 <td><a href=#hyperlink>Hyperlink</a></td>
48102 <tr><td><code title=rel-tag><a href
48103 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48104 <td><a href=#hyperlink>Hyperlink</a></td>
48106 <tr><td><code title=rel-up><a href=#link-type-up>up</a></code></td>
48107 <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
48108 <td><a href=#hyperlink>Hyperlink</a></td>
48128 <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword may be
48129 used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48135 <dl class=switch><dt>If the element is a <code><a href=#the-link-element>link</a></code> element and the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute also contains the
48136 keyword <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code></dt>
48140 <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword
48141 modifies the meaning of the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword in the way
48142 described for that keyword. The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword does not create a
48148 <dt>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
48149 used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
48154 <p>The link is a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>
48160 <p>The first <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code>
48161 element in the document (in tree order) with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attribute set to the value
48166 <p>The following <code><a href=#the-link-element>link</a></code> element gives the syndication
48168 <pre><link rel="alternate" type="application/atom+xml" href="data.xml"></pre>
48173 <li><a href="recently-visited-planets.xml" rel="alternate" type="application/atom+xml">Recently Visited Planets</a></li>
48174 <li><a href="known-bad-planets.xml" rel="alternate" type="application/atom+xml">Known Bad Planets</a></li>
48175 <li><a href="unexplored-planets.xml" rel="alternate" type="application/atom+xml">Unexplored Planets</a></li>
48188 <p>The link is a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>
48192 <p>The nature of the referenced document is given by the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes.</p>
48194 <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
48195 used with the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>
48199 <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
48200 used with the <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>
48201 attribute, and that attribute's value differs from the <a href=#root-element>root
48202 element</a>'s <a href=#language>language</a>, it indicates that the
48205 <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
48206 used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
48210 <p>The <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes can be combined
48211 when specified with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>
48219 <pre><link rel=alternate type=application/pdf hreflang=fr href=manual-fr></pre>
48224 links to two other documents with the link type "<code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>", then, in addition to
48233 <p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword may be
48234 used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48235 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48237 <p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword indicates
48248 <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword.</p>
48255 <p>The <code title=rel-author><a href=#link-type-author>author</a></code> keyword may be
48256 used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48257 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48259 <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
48261 the nearest <code><a href=#the-article-element>article</a></code> element ancestor of the element
48265 <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
48271 author. <a href=#refsMAILTO>[MAILTO]</a></p>
48276 must also treat <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and
48277 <code><a href=#the-area-element>area</a></code> elements that have a <code title="">rev</code>
48278 attribute with the value "<code>made</code>" as having the <code title=rel-author><a href=#link-type-author>author</a></code> keyword specified as a link
48286 <p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword may be
48287 used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
48289 <p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword gives a
48290 permalink for the nearest ancestor <code><a href=#the-article-element>article</a></code> element of
48291 the linking element in question, or of <a href=#associatedSection>the section the linking element is most
48293 <code><a href=#the-article-element>article</a></code> elements.</p>
48304 <p><a href="a.html" rel="bookmark">This</a> permalink applies to
48310 <p><a href="b.html" rel="bookmark">This</a> permalink applies to
48313 <p><a href="c.html" rel="bookmark">This</a> permalink applies to
48353 <p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword may be
48354 used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
48356 <p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword indicates
48363 <p>The <code title=rel-help><a href=#link-type-help>help</a></code> keyword may be used with
48364 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48365 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48367 <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
48378 <pre> <p><label> Topic: <input name=topic> <a href="help/topic.html" rel="help">(Help)</a></label></p></pre>
48382 <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
48388 <p>The <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword may be used with
48389 <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
48401 agent must select the most appropriate icon according to the <code title=attr-link-type><a href=#attr-link-type>type</a></code>, <code title=attr-link-media><a href=#attr-link-media>media</a></code>, and <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attributes. If there are
48403 one declared in <a href=#tree-order>tree order</a>. If the user agent tries to
48411 <p>There is no default type for resources given by the <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword. However, for the purposes of
48412 <a href=#concept-link-type-sniffing>determining the type of the
48421 <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>. The
48422 values must all be either <code title=attr-link-sizes-any><a href=#attr-link-sizes-any>any</a></code> or a value that consists of
48423 two <a href=#valid-non-negative-integer title="valid non-negative integer">valid non-negative
48433 first <a href=#split-a-string-on-spaces title="split a string on spaces">split the attribute's
48464 <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
48467 <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
48476 <p>The keywords specified on the <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attribute must not represent
48497 <link rel=icon href=favicon.png sizes="16x16" type="image/png">
48498 <link rel=icon href=windows.ico sizes="32x32 48x48" type="image/vnd.microsoft.icon">
48499 <link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
48500 <link rel=icon href=iphone.png sizes="59x60" type="image/png">
48501 <link rel=icon href=gnome.svg sizes="any" type="image/svg+xml">
48502 <link rel=stylesheet href=lsforums.css>
48514 <p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword may be used
48515 with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48516 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48518 <p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword indicates
48538 <link rel="stylesheet" href="/style/default">
48543 <a href="../">Return to photo index</a>
48550 <p><small><a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT Licensed</a></small></p>
48552 <a href="/">Home</a> | <a href="../">Photo index</a>
48558 <p>In this case the <code title=rel-license><a href=#link-type-license>license</a></code>
48573 the <code title=rel-license><a href=#link-type-license>license</a></code> keyword.</p>
48580 <p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword may be
48581 used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
48583 <p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword indicates
48592 <p>The <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword may be
48593 used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
48600 <p>If a user agent follows a link defined by an <code><a href=#the-a-element>a</a></code> or
48601 <code><a href=#the-area-element>area</a></code> element that has the <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword, the user agent
48603 HTTP header (<a href=#concept-http-equivalent-headers title=concept-http-equivalent-headers>or
48606 <p>This keyword also <a href=#noopener>causes the <code title=dom-opener>opener</code> attribute to remain null</a> if the
48607 hyperlink creates a new <a href=#browsing-context>browsing context</a>.</p>
48617 <p>The <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword may be
48618 used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
48620 <p>For the semantics of the <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword, see the Pingback 1.0
48621 specification. <a href=#refsPINGBACK>[PINGBACK]</a></p>
48626 <p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword may be
48627 used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
48629 <p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword indicates
48634 <p>There is no default type for resources given by the <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword.</p>
48639 <p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword may be used
48640 with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48641 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48643 <p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword indicates that
48648 <code><a href=#the-link-element>link</a></code> elements and the <code title=rel-search><a href=#link-type-search>search</a></code> link type to enable user agents to
48649 autodiscover search interfaces. <a href=#refsOPENSEARCH>[OPENSEARCH]</a></p>
48654 <p>The <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword may be
48655 used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a> that
48656 contributes to the <a href=#styling>styling processing model</a>.</p>
48662 <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
48663 also specified on the <code><a href=#the-link-element>link</a></code> element, then <dfn id=the-link-is-an-alternative-stylesheet>the link
48664 is an alternative stylesheet</dfn>; in this case, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute must be specified on the
48665 <code><a href=#the-link-element>link</a></code> element, with a non-empty value.</p>
48667 <p>The default type for resources given by the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword is <code title="">text/css</code>.</p>
48672 <a href=#quirks-mode>quirks mode</a> and the <a href=#content-type title=Content-Type>Content-Type metadata</a> of the external
48681 <p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword may be used
48682 with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48683 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48685 <p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword indicates
48687 in a <a href=#secondary-browsing-context>secondary browsing context</a> (if possible), instead
48688 of in the current <a href=#browsing-context>browsing context</a>.</p>
48690 <p>A <a href=#hyperlink title=hyperlink>hyperlink element</a> with the <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword specified is a <dfn id=rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</dfn>.</p>
48695 <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword may be used
48696 with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48697 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48699 <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword indicates that the
48705 in the markup of a <a href=#tag-cloud>tag cloud</a>, which lists
48724 <p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword may be used with
48725 <code><a href=#the-link-element>link</a></code>, <code><a hrefhref=#the-area-element>area</a></code>
48726 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48728 <p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword indicates that
48731 conveys more information when used with the <code title=rel-up><a href=#link-type-up>up</a></code> keyword (q.v.).</p>
48737 <code title=rel-index><a href=#link-type-index>index</a></code> keyword.</p>
48744 <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be used with
48745 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48746 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48748 <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword indicates that the
48753 <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be repeated within
48754 a <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute to indicate
48758 of the keyword represents one further level. If the <code title=rel-index><a href=#link-type-index>index</a></code> keyword is also present, then the
48759 number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords is the depth of
48761 is created for the set of one or more <code title=rel-up><a href=#link-type-up>up</a></code>
48762 keywords and, if present, the <code title=rel-index><a href=#link-type-index>index</a></code>
48766 described in different <a href=#paragraph title=paragraph>paragraphs</a>. <span class=impl>User agents
48767 must scope any interpretation of the <code title=rel-up><a href=#link-type-up>up</a></code>
48768 and <code title=rel-index><a href=#link-type-index>index</a></code> keywords together
48769 indicating the depth of the hierarchy to the <a href=#paragraph>paragraph</a>
48775 <p>When two links have both the <code title=rel-up><a href=#link-type-up>up</a></code> and
48776 <code title=rel-index><a href=#link-type-index>index</a></code> keywords specified together in
48778 number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords, the link with the
48779 greater number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords must be
48792 <a href="/" rel="index up up up">Main</a> >
48793 <a href="/products/" rel="up up">Products</a> >
48794 <a href="/products/dishwashers/" rel="up">Dishwashers</a> >
48798 <a href="/" rel="index up up">Main</a> >
48799 <a href="/second-hand/" rel="up">Second hand</a> >
48806 <p class=note>The <code title=dom-a-relList><a href=#dom-a-rellist>relList</a></code> IDL
48807 attribute (e.g. on the <code><a href=#the-a-element>a</a></code> element) does not currently
48808 represent multiple <code title=rel-up><a href=#link-type-up>up</a></code> keywords (the
48826 <p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword may be used with
48827 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48828 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48830 <p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword indicates that
48838 "<code title="">start</code>" like the <code title=rel-first><a href=#link-type-first>first</a></code> keyword.</p>
48845 <p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword may be used with
48846 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48847 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48849 <p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword indicates that the
48857 <code title=rel-last><a href=#link-type-last>last</a></code> keyword.</p>
48864 <p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword may be used with
48865 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48866 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48868 <p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword indicates that the
48875 <p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword may be used with
48876 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
48877 elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
48879 <p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword indicates that the
48887 the <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword.</p>
48895 set of link types</dfn> may be registered in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
48896 RelExtensions page</a>. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
48911 also be an <a href=#absolute-url>absolute URL</a>.</p>
48916 <dt>Effect on... <code><a href=#the-link-element>link</a></code></dt>
48925 <code><a href=#the-link-element>link</a></code> elements.</dd>
48929 <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
48930 it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink
48935 <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
48936 it creates a <a href=#external-resource-link title="external resource link">external
48942 <dt>Effect on... <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></dt>
48950 <dd>The keyword is not allowed to be specified on <code><a href=#the-a-element>a</a></code>
48951 and <code><a href=#the-area-element>area</a></code> elements.</dd>
48955 <dd>The keyword may be specified on <code><a href=#the-a-element>a</a></code> and
48956 <code><a href=#the-area-element>area</a></code> elements.</dd>
49051 <p>Types defined as extensions in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
49054 <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code> elements in
49055 accordance to the "Effect on..." field. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
49065 encouraged to either mark up such lists using <code><a href=#the-ul-element>ul</a></code>
49087 <li class="tag-cloud-4"><a title="28 instances" href="/t/apple">apple</a> <span>(popular)</span>
49088 <li class="tag-cloud-2"><a title="6 instances" href="/t/kiwi">kiwi</a> <span>(rare)</span>
49089 <li class="tag-cloud-5"><a title="41 instances" href="/t/pear">pear</a> <span>(very popular)</span>
49092 href=#the-title-attribute>title</a></code> attribute. A CSS style sheet is
49099 <p>The <code><a href=#the-ul-element>ul</a></code> element is used (rather than
49100 <code><a href=#the-ol-element>ol</a></code>) because the order is not particularly important:
49104 <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>-keyword is <em>not</em> used
49105 on these <code><a href=#the-a-element>a</a></code> elements because they do not represent tags
49122 <code><a href=#the-p-element>p</a></code> elements and punctuation. Authors who need to mark
49124 <code><a href=#the-span-element>span</a></code> or <code><a href=#the-b-element>b</a></code>. Paragraphs with their text
49125 wrapped in the <code><a href=#the-i-element>i</a></code> element can be used for marking up
49163 <hr><p>For short inline annotations, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute should be used.</p>
49168 footnote-like content using the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute.</p>
49179 <hr><p>For longer annotations, the <code><a href=#the-a-element>a</a></code> element should be
49195 <p> Norman: I don't. <sup><a href="#fn1" id="r1">[1]</a></sup>
49199 <p id="fn1"><a href="#r1">[1]</a> This is, naturally, a lie,
49208 <code><a href=#the-aside-element>aside</a></code> element should be used.</p>
49229 <code><a href=#the-figcaption-element>figcaption</a></code> or <code><a href=#the-caption-element>caption</a></code> element, or in
49235 that are given in prose. A <code><a href=#the-figure-element>figure</a></code> element is used to
49249 <td> £0<sup><a href="#fn1">1</a></sup>
49251 <td> Routines, chorus scenes<sup><a href="#fn2">2</a></sup>
49255 <td> Dining<sup><a href="#fn3">3</a></sup>
49257 <td> Cost of ham, jam, and spam<sup><a href="#fn4">4</a></sup>
49275 <p>Attribute and element <em>names</em> of <a href=#html-elements>HTML
49276 elements</a> in <a href=#html-documents>HTML documents</a> must be treated as
49277 <a href=#ascii-case-insensitive>ASCII case-insensitive</a>.</p>
49279 <p>Classes from the <code title=attr-class><a href=#classes>class</a></code> attribute
49280 of <a href=#html-elements>HTML elements</a> in documents that are in <a href=#quirks-mode>quirks
49281 mode</a> must be treated as <a href=#ascii-case-insensitive>ASCII
49284 <p>Attribute selectors on an <a href=#html-elements title="HTML elements">HTML
49285 element</a> in an <a href=#html-documents title="HTML documents">HTML
49287 the following names as <a href=#ascii-case-insensitive>ASCII case-insensitive</a>:</p>
49337 </ul><p>All other attribute values on <a href=#html-elements>HTML elements</a> must be
49338 treated as <a href=#case-sensitive>case-sensitive</a>.</p>
49352 <p>All <code><a href=#the-a-element>a</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, all
49353 <code><a href=#the-area-element>area</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute, and all
49354 <code><a href=#the-link-element>link</a></code> elements that have an <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute, must match one of
49355 <code title=selector-link><a href=#selector-link>:link</a></code> and <code title=selector-visited><a href=#selector-visited>:visited</a></code>.</p>
49364 <p>The <code title=selector-active><a href=#selector-active>:active</a></code> pseudo-class
49369 <ul><li><code><a href=#the-a-element>a</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute</li>
49371 <li><code><a href=#the-area-element>area</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute</li>
49373 <li><code><a href=#the-link-element>link</a></code> elements that have an <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute</li>
49375 <li><code><a href=#the-button-element>button</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49377 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>, <a href=#image-button-state title=attr-input-type-image>Image Button</a>, <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>, or <a href=#button-state title=attr-input-type-button>Button</a> state</li>
49379 <li><code><a href=#the-command>command</a></code> elements that do not have a <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> attribute</li>
49381 <li>any other element, if it is <a href=#specially-focusable>specially
49385 push a <code><a href=#the-button-element>button</a></code> element by pressing the space bar, the
49397 <p>The <code title=selector-enabled><a href=#selector-enabled>:enabled</a></code> pseudo-class
49400 <ul><li><code><a href=#the-a-element>a</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute</li>
49402 <li><code><a href=#the-area-element>area</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute</li>
49404 <li><code><a href=#the-link-element>link</a></code> elements that have an <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute</li>
49406 <li><code><a href=#the-button-element>button</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49408 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute are not in the
49409 <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state and that
49410 are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49412 <li><code><a href=#the-select-element>select</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49414 <li><code><a href=#the-textarea-element>textarea</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49416 <li><code><a href=#the-option-element>option</a></code> elements that do not have a <code title=attr-option-disabled><a href=#attr-option-disabled>disabled</a></code> attribute</li>
49418 <li><code><a href=#the-command>command</a></code> elements that do not have a <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> attribute</li>
49420 <li><code><a href=#the-li-element>li</a></code> elements that are children of
49421 <code><a href=#menus>menu</a></code> elements, and that have a child element that
49422 defines a <a href
49423 first such element's <a href=#command-facet-disabledstate title=command-facet-disabledstate>Disabled State</a> facet
49433 <p>The <code title=selector-disabled><a href=#selector-disabled>:disabled</a></code>
49436 <ul><li><code><a href=#the-button-element>button</a></code> elements that are <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49438 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute are not in the
49439 <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state and that
49440 are <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49442 <li><code><a href=#the-select-element>select</a></code> elements that are <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49444 <li><code><a href=#the-textarea-element>textarea</a></code> elements that are <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49446 <li><code><a href=#the-option-element>option</a></code> elements that have a <code title=attr-option-disabled><a href=#attr-option-disabled>disabled</a></code> attribute</li>
49448 <li><code><a href=#the-command>command</a></code> elements that have a <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> attribute</li>
49450 <li><code><a href=#the-li-element>li</a></code> elements that are children of
49451 <code><a href=#menus>menu</a></code> elements, and that have a child element that
49452 defines a <a href=#concept-command title=concept-command>command</a>, if the
49453 first such element's <a href=#command-facet-disabledstate title=command-facet-disabledstate>Disabled State</a> facet
49463 <p>The <code title=selector-checked><a href=#selector-checked>:checked</a></code> pseudo-class
49466 <ul><li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state and whose
49467 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state is
49470 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state and whose
49471 <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> state is
49474 <li><code><a href=#the-command>command</a></code> elements whose <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is in the <a href=#attr-command-type-state-checkbox title=attr-command-type-state-checkbox>Checkbox</a> state
49475 and that have a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code>
49478 <li><code><a href=#the-command>command</a></code> elements whose <code title=attr-command-type><a href=#attr-command-type>type</a></code> attribute is in the <a href=#attr-command-type-state-radio title=attr-command-type-state-radio>Radio</a> state and that
49479 have a <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code>
49489 <p>The <code title=selector-indeterminate><a href=#selector-indeterminate>:indeterminate</a></code>
49490 pseudo-class must match <code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state and whose
49491 <code title=dom-input-indeterminate><a href=#dom-input-indeterminate>indeterminate</a></code> IDL
49501 <p>The <code title=selector-default><a href=#selector-default>:default</a></code> pseudo-class
49504 <ul><li><code><a href=#the-button-element>button</a></code> elements that are their form's
49505 <a href=#default-button>default button</a></li>
49507 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a> or <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, and that
49508 are their form's <a href=#default-button>default button</a></li>
49520 <p>The <code title=selector-valid><a href=#selector-valid>:valid</a></code> pseudo-class
49521 must match all elements that are <a href=#candidate-for-constraint-validation title="candidate for
49523 and that <a href=#concept-fv-valid title=concept-fv-valid>satisfy their
49533 <p>The <code title=selector-invalid><a href=#selector-invalid>:invalid</a></code> pseudo-class
49534 must match all elements that are <a href=#candidate-for-constraint-validation title="candidate for
49536 but that do not <a href=#concept-fv-valid title=concept-fv-valid>satisfy their
49546 <p>The <code title=selector-in-range><a href=#selector-in-range>:in-range</a></code>
49547 pseudo-class must match all elements that are <a href=#candidate-for-constraint-validation title="candidate for constraint validation">candidates for
49548 constraint validation</a> and that are neither <a href=#suffering-from-an-underflow>suffering
49549 from an underflow</a> nor <a href=#suffering-from-an-overflow>suffering from an
49559 <p>The <code title=selector-out-of-range><a href=#selector-out-of-range>:out-of-range</a></code>
49560 pseudo-class must match all elements that are <a href=#candidate-for-constraint-validation title="candidate for constraint validation">candidates for
49561 constraint validation</a> and that are <a href=#suffering-from-an-underflow>suffering from an
49562 underflow</a> or <a href=#suffering-from-an-overflow>suffering from an overflow</a>.</p>
49571 <p>The <code title=selector-required><a href=#selector-required>:required</a></code>
49574 <ul><li><code><a href=#the-input-element>input</a></code> elements that are <i title=concept-input-required><a href=#concept-input-required>required</a></i></li>
49576 <li><code><a href=#the-textarea-element>textarea</a></code> elements that have a <code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code>
49586 <p>The <code title=selector-optional><a href=#selector-optional>:optional</a></code>
49589 <ul><li><code><a href=#the-button-element>button</a></code> elements</li>
49591 <li><code><a href=#the-input-element>input</a></code> elements that are not <i title=concept-input-required><a href=#concept-input-required>required</a></i></li>
49593 <li><code><a href=#the-select-element>select</a></code> elements</li>
49595 <li><code><a href=#the-textarea-element>textarea</a></code> elements that do not have a <code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code>
49606 <p>The <code title=selector-read-write><a href=#selector-read-write>:read-write</a></code>
49609 <ul><li><code><a href=#the-input-element>input</a></code> elements to which the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute applies,
49610 but that are not <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i>
49611 (i.e. that do not have the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute specified
49612 and that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>)</li>
49614 <li><code><a href=#the-textarea-element>textarea</a></code> elements that do not have a <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> attribute, and
49615 that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
49617 <li>any element that is <a href=#editable>editable</a></li>
49619 </ul><p>The <code title=selector-read-only><a href=#selector-read-only>:read-only</a></code>
49620 pseudo-class must match all other <a href=#html-elements>HTML elements</a>.</p>
49625 <i><a href=#target-element>target element</a></i> used with the <code title=selector-target>:target</code> pseudo-class.</p>
49630 fashion in the Selectors specification. <a href=#refsSELECTORS>[SELECTORS]</a></p>
49690 pairs. The groups are called <a href=#concept-item title=concept-item>items</a>, and each name-value pair is a
49694 <p>To create an item, the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute is used.</p>
49696 <p>To add a property to an item, the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is used on one of
49697 the <a href=#concept-item title=concept-item>item's</a> descendants.</p>
49727 <p>Properties can also have values that are <a href=#url title=URL>URLs</a>. This is achieved using the <code><a href=#the-a-element>a</a></code>
49728 element and its <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
49729 attribute, the <code><a href=#the-img-element>img</a></code> element and its <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute, or other elements that
49744 and times. This is achieved using the <code><a href=#the-time-element>time</a></code> element and
49745 its <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute.</p>
49759 putting the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute
49762 <p>Items that are not part of others are called <a href=#top-level-microdata-items>top-level
49787 <p>Properties that are not descendants of the element with the <code title=attr-itemscope><a href
49788 with the <a href=#concept-item title=concept-item>item</a> using the <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> attribute. This attribute takes
49790 children of the element with the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute.</p>
49795 properties are separated from their <a href=#concept-item title=concept-item>items</a>:</p>
49812 <p>An <a href=#concept-item title=concept-item>item</a> can have multiple
49890 <p>For this purpose, it is necessary to give each <a href=#concept-item title=concept-item>item</a> a type, such as
49892 "http://band.example.net/". Types are identified as <a href=#url title=URL>URLs</a>.</p>
49894 <p>The type for an <a href=#concept-item title=concept-item>item</a> is given
49895 as the value of an <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code>
49896 attribute on the same element as the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute.</p>
49927 <p>Sometimes, an <a href=#concept-item title=concept-item>item</a> gives
49931 <p>Vocabularies (as identified by the <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute) can be designed
49932 such that <a href=#concept-item title=concept-item>items</a> get associated
49934 global identifiers as <a href=#url title=URL>URLs</a> given in an
49935 <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute.</p>
49937 <p>The exact meaning of the <a href=#url title=URL>URLs</a> given in
49938 <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attributes depends on the
49957 vocabulary in this example would define that the <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute takes a <code title="">urn:</code> <a href=#url>URL</a> pointing to the ISBN of the
49988 either using <a href=#url title=URL>URLs</a>, or, for properties, as
50057 <p>The <code title=dom-document-getItems><a href=#dom-document-getitems>document.getItems(<var title="">typeNames</var>)</a></code> method provides access to the
50058 <a href=#top-level-microdata-items>top-level microdata items</a>. It returns a
50059 <code><a href=#nodelist>NodeList</a></code> containing the items with the specified types,
50062 <p>Each <a href=#concept-item title=concept-item>item</a> is represented in the
50063 DOM by the element on which the relevant <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute is found. These
50064 elements have their <code title=dom-itemScope><a href=#dom-itemscope>element.itemScope</a></code> IDL attribute set to
50067 <p>The type of <a href=#concept-item title=concept-item>items</a> can be
50068 obtained using the <code title=dom-itemType><a href=#dom-itemtype>element.itemType</a></code> IDL attribute on the
50069 element with the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50074 <p>This sample shows how the <code title=dom-document-getItems><a href=#dom-document-getitems>getItems()</a></code> method can be used
50082 <p>Once an element representing an <a href=#concept-item title=concept-item>item</a> has been obtained, its properties
50083 can be extracted using the <code title=dom-properties><a href=#dom-properties>properties</a></code> IDL attribute. This
50084 attribute returns an <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code>, which can
50090 <p>Each element that adds a property also has a <code title=dom-itemValue><a href=#dom-itemvalue>itemValue</a></code> IDL attribute that returns
50104 <p>The <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> object, when indexed by
50105 name in this way, actually returns a <code><a href=#propertynodelist>PropertyNodeList</a></code>
50107 <code><a href=#propertynodelist>PropertyNodeList</a></code> object can be used to obtain all the
50108 values at once using <em>its</em> <code title=dom-PropertyNodeList-values><a href=#dom-propertynodelist-values>values</a></code> attribute, which
50132 <p>It's also possible to get a list of all the <a href=#property-names>property
50133 names</a> using the object's <code title=dom-HTMLPropertiesCollection-names><a href=#dom-htmlpropertiescollection-names>names</a></code> IDL
50190 as <a href=#concept-item title=concept-item>items</a>.</p>
50192 <p>Each group is known as an <a href=#concept-item title=concept-item>item</a>. Each <a href=#concept-item title=concept-item>item</a> can have an <a href=#item-type>item type</a>,
50193 a <a href=#global-identifier>global identifier</a> (if the <a href=#item-type>item type</a>
50194 <a href=#support-global-identifiers-for-items title="support global identifiers for items">supports global
50196 pairs. Each name in the name-value pair is known as a <a href=#the-properties-of-an-item title="the properties of an item">property</a>, and each <a href=#the-properties-of-an-item title="the properties of an item">property</a> has one or more
50197 <a href=#concept-property-value title=concept-property-value>values</a>. Each <a href=#concept-property-value title=concept-property-value>value</a> is either a string or itself a group of
50198 name-value pairs (an <a href=#concept-item title=concept-item>item</a>).</p>
50200 <p>An <a href=#concept-item title=concept-item>item</a> is said to be a
50201 <dfn id=typed-item>typed item</dfn> when either it has an <a href=#item-type>item type</a>,
50202 or it is the <a href=#concept-property-value title=concept-property-value>value</a> of a <a href=#the-properties-of-an-item title="the properties of an
50203 item">property</a> of a <a href=#typed-item>typed item</a>. The
50204 <dfn id=relevant-type>relevant type</dfn> for a <a href=#typed-item>typed item</a> is the <a href=#concept-item title=concept-item>item</a>'s <a href=#item-type>item type</a>, if it has
50205 one, or else is the <a href=#relevant-type>relevant type</a> of the <a href=#concept-item title=concept-item>item</a> for which it is a <a href=#the-properties-of-an-item title="the
50206 properties of an item">property</a>'s <a href=#concept-property-value title=concept-property-value>value</a>.</p>
50212 <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have an
50214 specified. The <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50215 attribute is a <a href=#boolean-attribute>boolean attribute</a>.</p>
50217 <p>An element with the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50220 <hr><p>Elements with an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50222 specified, to give the <a href=#item-type>item type</a> of the <a href=#concept-item title=concept-item>item</a>.</p>
50224 <p>The <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute, if
50225 specified, must have a value that is a <a href=#valid-url>valid URL</a> that
50226 is an <a href=#absolute-url>absolute URL</a> for which the string "<code title="">http://www.w3.org/1999/xhtml/microdata#</code>" is not a
50227 <a href=#prefix-match>prefix match</a>.</p> <!-- we disallow that prefix so that
50231 <p>The <dfn id=item-type>item type</dfn> of an <a href=#concept-item title=concept-item>item</a> is the value of its element's <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute, if it has one and
50232 its value is not the empty string. If the <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute is missing or its
50233 value is the empty string, the <a href=#concept-item title=concept-item>item</a> is said to have no <a href=#item-type>item
50236 <p>The <a href=#item-type>item type</a> must be a type defined in an <a href=#other-applicable-specifications title="other applicable specifications">applicable
50242 <a href=#url>URL</a> given as the <a href=#item-type>item type</a> should not be
50245 <p class=note>A specification could define that its <a href=#item-type>item
50249 <a href=#url>URL</a>.</p>
50251 <p><a href=#item-type title="item type">Item types</a> are opaque
50252 identifiers, and user agents must not dereference unknown <a href=#item-type title="item type">item types</a>, or otherwise deconstruct them,
50253 in order to determine how to process <a href=#concept-item title=concept-item>items</a> that use them.</p>
50257 <p>The <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute must
50258 not be specified on elements that do not have an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute specified.</p>
50260 <hr><p>Elements with an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50261 attribute and an <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code>
50265 specified, to give a global identifier for the <a href=#concept-item title=concept-item>item</a>, so that it can be related to other
50266 <a href=#concept-item title=concept-item>items</a> on pages elsewhere on the
50269 <p>The <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute, if
50270 specified, must have a value that is a <a href=#valid-url-potentially-surrounded-by-spaces>valid URL potentially
50273 <p>The <dfn id=global-identifier>global identifier</dfn> of an <a href=#concept-item title=concept-item>item</a> is the value of its element's <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute, if it has one, <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the element on
50274 which the attribute is specified. If the <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute is missing or if
50275 resolving it fails, it is said to have no <a href=#global-identifier>global
50278 <p>The <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> attribute must not be
50279 specified on elements that do not have both an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute and an <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute specified, and must
50280 not be specified on elements with an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute whose <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> attribute specifies a
50281 vocabulary that does not <a href=#support-global-identifiers-for-items>support global identifiers for
50284 <hr><p>Elements with an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code>
50287 name-value pairs of the <a href=#concept-item title=concept-item>item</a>.</p>
50289 <p>The <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> attribute, if
50290 specified, must have a value that is an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of
50291 unique space-separated tokens</a> consisting of <a href=#concept-id title=concept-ID>IDs</a> of elements in the same <a href=#home-subtree>home
50294 <p>The <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> attribute must not
50295 be specified on elements that do not have an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute specified.</p>
50300 <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have an
50301 <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute specified, if
50302 doing so <a href=#the-properties-of-an-item title="the properties of an item">adds a
50303 property</a> to one or more <a href=#concept-item title=concept-item>items</a> (as defined below).</p>
50305 <p>The <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute, if
50306 specified, must have a value that is an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of
50313 <ul><li>A <a href=#valid-url>valid URL</a> that is an <a href=#absolute-url>absolute URL</a>
50315 <a href=#prefix-match>prefix match</a>, or</li>
50317 <li>If the item is a <a href=#typed-item>typed item</a>: a <dfn id=defined-property-name>defined
50319 specification that defines the <a href=#relevant-type>relevant type</a> for the
50322 <li>If the item is not a <a href=#typed-item>typed item</a>: a string that
50326 </ul><p>When an element with an <code title=concept-itemprop>itemprop</code> attribute <a href=#the-properties-of-an-item title="the
50327 properties of an item">adds a property</a> to multiple <a href=#concept-item title=concept-item>items</a>, the requirement above regarding
50328 the tokens applies for each <a href=#concept-item title=concept-item>item</a>
50344 the element's <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute
50345 is found to contain when its value is <a href=#split-a-string-on-spaces title="split a string on
50350 <p>Within an <a href=#concept-item title=concept-item>item</a>, the properties
50353 algorithm that defines <a href=#the-properties-of-an-item>the properties of an item</a>.</p>
50401 name-value pair added by an element with an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute depends on the
50404 <dl><dt>If the element also has an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute</dt>
50406 <dd><p>The value is the <a href=#concept-item title=concept-item>item</a>
50410 <dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
50416 <dt>If the element is an <code><a href=#audio>audio</a></code>, <code><a href=#the-embed-element>embed</a></code>,
50417 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href=#the-source-element>source</a></code>, or
50418 <code><a href=#video>video</a></code> element</dt>
50420 <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
50421 <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
50424 there is no such attribute or if <a href=#resolve-a-url title="resolve a
50428 <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
50429 <code><a href=#the-link-element>link</a></code> element</dt>
50431 <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
50432 <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
50433 element's <code title="">href</code> attribute relative to the
50435 there is no such attribute or if <a href=#resolve-a-url title="resolve a
50439 <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
50441 <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
50442 <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
50445 there is no such attribute or if <a href=#resolve-a-url title="resolve a
50449 <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute</dt>
50451 <dd><p>The value is the value of the element's <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute.</dd>
50457 <code><a href=#textcontent>textContent</a></code>.</dd>
50459 </dl><p>The <dfn id=url-property-elements>URL property elements</dfn> are the <code><a href
50460 <code><a href=#the-area-element>area</a></code>, <code><a href=#audio>audio</a></code>, <code><a href=#the-embed-element>embed</a></code>,
50461 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href=#the-link-element>link</a></code>,
50462 <code><a href=#the-object-element>object</a></code>, <code><a href=#the-source-element>source</a></code>, and <code><a href=#video>video</a></code>
50465 <p>If a property's <a href=#concept-property-value title=concept-property-value>value</a>
50466 is an <a href=#absolute-url>absolute URL</a>, the property must be specified
50467 using a <a href=#url-property-elements title="URL property elements">URL property
50470 <p>If a property's <a href=#concept-property-value title=concept-property-value>value</a>
50471 represents a <a href=#concept-date title=concept-date>date</a>, <a href=#concept-time title=concept-time>time</a>, or <a href=#concept-datetime title=concept-datetime>global date and time</a>, the property
50472 must be specified using the <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute of a
50473 <code><a href=#the-time-element>time</a></code> element.</p>
50480 <a href=#crawl-the-properties>crawl the properties</a> of the element <var title="">root</var>, with an empty list as the value of <var title="">memory</var>: if this fails, then <a href=#the-properties-of-an-item title="the
50493 <li><p><a href=#collect-all-the-elements-in-the-item>Collect all the elements in the item</a> <var title="">root</var>; let <var title="">results</var> be the
50498 not have an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute
50506 <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute specified,
50507 <a href=#crawl-the-properties>crawl the properties</a> of the element, with <var title="">new memory</var> as the memory. If this fails, then remove
50511 <li><p>Sort <var title="">results</var> in <a href=#tree-order>tree
50526 <li><p>If <var title="">root</var> has an <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> attribute, <a href=#split-a-string-on-spaces title="split a
50529 in the <a href=#home-subtree>home subtree</a> of <var title="">root</var> with
50530 the <a href=#concept-id title=concept-ID>ID</a> <var title="">ID</var>, then
50539 have an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute,
50551 </ol><p>An <a href=#concept-item title=concept-item>item</a> is a <dfn id=top-level-microdata-items title="top-level microdata items">top-level microdata item</dfn> if
50552 its element does not have an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute.</p>
50554 <p>An <a href=#concept-item title=concept-item>item</a> is a <dfn id=used-microdata-items title="used
50555 microdata items">used microdata item</dfn> if it is a <a href=#top-level-microdata-items title="top-level microdata items">top-level microdata item</a>,
50556 or if it has an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code>
50557 attribute and would be <a href=#the-properties-of-an-item title="the properties of an item">found
50558 to be the property</a> of an <a href=#concept-item title=concept-item>item</a> that is itself a <a href=#used-microdata-items title="used
50561 <p>A document must not contain any <a href=#concept-item title=concept-item>items</a> that are not <a href=#used-microdata-items>used microdata
50564 <p>A document must not contain any elements that have an <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute that would not be
50565 found to be a property of any of the <a href=#concept-item title=concept-item>items</a> in that document were their <a href=#the-properties-of-an-item title="the properties of an item">properties</a> all to be
50568 <p>A document must not contain any <a href=#concept-item title=concept-item>items</a> for which <a href=#crawl-the-properties title="crawl the
50581 works, using <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> from the
50601 href="http://www.opensource.org/licenses/mit-license.php">MIT
50630 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-getItems><a href=#dom-document-getitems>getItems</a></code>( [ <var title="">types</var> ] )</dt>
50634 <p>Returns a <code><a href=#nodelist>NodeList</a></code> of the elements in the <code><a href=#document>Document</a></code> that create <a href=#concept-item title=concept-item>items</a>, that are not part of other <a href=#concept-item title=concept-item>items</a>, and that are of one of the types given in the argument, if any are listed.</p>
50640 <dt><var title="">element</var> . <code title=dom-properties><a href=#dom-properties>properties</a></code></dt>
50644 <p>If the element has an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute, returns an
50645 <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> object with all the element's
50647 <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> object.</p>
50651 <dt><var title="">element</var> . <code title=dom-itemValue><a href=#dom-itemvalue>itemValue</a></code> [ = <var title="">value</var> ]</dt>
50655 <p>Returns the element's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
50657 <p>Can be set, to change the element's <a href=#concept-property-value title=concept-property-value>value</a>. Setting the <a href=#concept-property-value title=concept-property-value>value</a> when the element has
50658 no <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute or when
50659 the element's value is an <a href=#concept-item title=concept-item>item</a>
50660 throws an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception.</p>
50667 string that contains an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique
50669 method must return a <a href=#live>live</a> <code><a href=#nodelist>NodeList</a></code> object
50670 containing all the elements in the document, in <a href=#tree-order>tree
50671 order</a>, that are each <a href=#top-level-microdata-items>top-level microdata items</a>
50672 with a <a href=#item-type title="item type">type</a> equal to one of the types
50673 specified in that argument, having obtained the types by <a href=#split-a-string-on-spaces title="split a string on spaces">splitting the string on
50676 <code><a href=#nodelist>NodeList</a></code> containing all the <a href=#top-level-microdata-items>top-level microdata
50678 When the method is invoked on a <code><a href=#document>Document</a></code> object again
50681 <code><a href=#nodelist>NodeList</a></code> object must be returned.</p>
50684 attribute on <a href=#html-elements>HTML elements</a> must <a href=#reflect>reflect</a>
50685 the <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> content attribute.
50687 attribute on <a href=#html-elements>HTML elements</a> must <a href=#reflect>reflect</a>
50688 the <code title=attr-itemtype><a href=#attr-itemtype>itemtype</a></code> content attribute,
50689 as if it was a regular string attribute, not a <a href=#url>URL</a>
50691 <a href=#html-elements>HTML elements</a> must <a href=#reflect>reflect</a> the <code title=attr-itemid><a href=#attr-itemid>itemid</a></code> content attribute. The <dfn id=dom-itemprop title=dom-itemProp><code>itemProp</code></dfn> IDL attribute on
50692 <a href=#html-elements>HTML elements</a> must <a href=#reflect>reflect</a> the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> content attribute. The <dfn id=dom-itemref title=dom-itemRef><code>itemRef</code></dfn> IDL attribute on
50693 <a href=#html-elements>HTML elements</a> must <a href=#reflect>reflect</a> the <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> content attribute.</p>
50696 attribute on <a href=#html-elements>HTML elements</a> must return an
50697 <code><a href=#htmlpropertiescollection>HTMLPropertiesCollection</a></code> rooted at the
50698 <code><a href=#document>Document</a></code> node, whose filter matches only elements that
50699 have <a href=#property-names>property names</a> and are <a href=#the-properties-of-an-item title="the properties
50701 on which the attribute was invoked, while that element is an <a href=#concept-item title=concept-item>item</a>, and matches nothing the rest of
50707 <dl><dt>If the element has no <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute</dt>
50710 <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception on setting.</p>
50713 <dt>If the element has an <code title=attr-itemscope><a href=#attr-itemscope>itemscope</a></code> attribute</dt>
50716 must throw an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception on
50720 <dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
50722 <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> content
50726 <dt>If the element is an <code><a href=#audio>audio</a></code>, <code><a href=#the-embed-element>embed</a></code>,
50727 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href
50728 <code><a href=#video>video</a></code> element</dt>
50730 <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">src</code> content attribute.</dd>
50733 <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
50734 <code><a href=#the-link-element>link</a></code> element</dt>
50736 <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">href</code> content attribute.</dd>
50739 <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
50741 <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">data</code> content attribute.</dd>
50744 <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> attribute</dt>
50746 <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code> content
50753 <code><a href=#textcontent>textContent</a></code> attribute.</dd>
50755 </dl><p>When the <code title=dom-itemValue><a href=#dom-itemvalue>itemValue</a></code> IDL
50756 attribute is <a href=#reflect title=reflect>reflecting</a> a content
50757 attribute or acting like the element's <code><a href=#textcontent>textContent</a></code>
50778 <code title=attr-itemref><a href=#attr-itemref>itemref</a></code> attribute, calling a
50797 <p>An item with the <a href=#item-type>item type</a> <dfn id=md-vcard title=md-vcard><code>http://microformats.org/profile/hcard</code></dfn>
50800 <p>This vocabulary <a href=#support-global-identifiers-for-items title="support global identifiers for
50803 <p>The following are the type's <a href=#defined-property-name title="defined property
50807 found. <a href=#refsRFC2426>[RFC2426]</a> <a href=#refsRFC4770>[RFC4770]</a></p>
50816 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50819 <p>Exactly one property with the name <code title=md-vcard-fn><a href=#md-vcard-fn>fn</a></code> must be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50830 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50831 an <a href=#concept-item title=concept-item>item</a> with zero or more of
50832 each of the <code title=md-vcard-n-family-name><a href=#md-vcard-n-family-name>family-name</a></code>, <code title=md-vcard-n-given-name><a href=#md-vcard-n-given-name>given-name</a></code>, <code title=md-vcard-n-additional-name><a href=#md-vcard-n-additional-name>additional-name</a></code>, <code title=md-vcard-n-honorific-prefix><a href=#md-vcard-n-honorific-prefix>honorific-prefix</a></code>, and
50833 <code title=md-vcard-n-honorific-suffix><a href=#md-vcard-n-honorific-suffix>honorific-suffix</a></code>
50836 <p>Exactly one property with the name <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> must be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50840 <dt><dfn id=md-vcard-n-family-name title=md-vcard-n-family-name><code>family-name</code></dfn> (inside <code title=md-vcard-n><a href=#md-vcard-n>n</a></code>)</dt>
50847 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50850 <p>Any number of properties with the name <code title=md-vcard-n-family-name><a href=#md-vcard-n-family-name>family-name</a></code> may be present
50851 within the <a href=#concept-item title=concept-item>item</a> that forms the
50852 <a href=#concept-property-value title=concept-property-value>value</a> of the <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50856 <dt><dfn id=md-vcard-n-given-name title=md-vcard-n-given-name><code>given-name</code></dfn> (inside <code title=md-vcard-n><a href=#md-vcard-n>n</a></code>)</dt>
50862 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50865 <p>Any number of properties with the name <code title=md-vcard-n-given-name><a href=#md-vcard-n-given-name>given-name</a></code> may be present
50866 within the <a href=#concept-item title=concept-item>item</a> that forms the
50867 <a href=#concept-property-value title=concept-property-value>value</a> of the <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50871 <dt><dfn id=md-vcard-n-additional-name title=md-vcard-n-additional-name><code>additional-name</code></dfn> (inside <code title=md-vcard-n><a href=#md-vcard-n>n</a></code>)</dt>
50877 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50880 <p>Any number of properties with the name <code title=md-vcard-n-additional-name><a href=#md-vcard-n-additional-name>additional-name</a></code> may be
50881 present within the <a href=#concept-item title=concept-item>item</a> that
50882 forms the <a href=#concept-property-value title=concept-property-value>value</a> of the
50883 <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50887 <dt><dfn id=md-vcard-n-honorific-prefix title=md-vcard-n-honorific-prefix><code>honorific-prefix</code></dfn> (inside <code title=md-vcard-n><a href=#md-vcard-n>n</a></code>)</dt>
50893 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50896 <p>Any number of properties with the name <code title=md-vcard-n-honorific-prefix><a href=#md-vcard-n-honorific-prefix>honorific-prefix</a></code> may be
50897 present within the <a href=#concept-item title=concept-item>item</a> that
50898 forms the <a href=#concept-property-value title=concept-property-value>value</a> of the
50899 <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50903 <dt><dfn id=md-vcard-n-honorific-suffix title=md-vcard-n-honorific-suffix><code>honorific-suffix</code></dfn> (inside <code title=md-vcard-n><a href=#md-vcard-n>n</a></code>)</dt>
50909 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50912 <p>Any number of properties with the name <code title=md-vcard-n-honorific-suffix><a href=#md-vcard-n-honorific-suffix>honorific-suffix</a></code> may be
50913 present within the <a href=#concept-item title=concept-item>item</a> that
50914 forms the <a href=#concept-property-value title=concept-property-value>value</a> of the
50915 <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50930 name specified by the <code title=md-vcard-fn><a href=#md-vcard-fn>fn</a></code> or <code title=md-vcard-n><a href=#md-vcard-n>n</a></code> properties.</p>
50932 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50935 <p>Any number of properties with the name <code title=md-vcard-nickname><a href=#md-vcard-nickname>nickname</a></code> may be present within
50936 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50947 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50948 an <a href=#absolute-url>absolute URL</a>.</p>
50950 <p>Any number of properties with the name <code title=md-vcard-photo><a href=#md-vcard-photo>photo</a></code> may be present within each
50951 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50962 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be a
50963 <a href=#valid-date-string>valid date string</a>.</p>
50965 <p>A single property with the name <code title=md-vcard-bday><a href=#md-vcard-bday>bday</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50976 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
50977 an <a href=#concept-item title=concept-item>item</a> with zero or more <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code>, <code title=md-vcard-adr-post-office-box><a href=#md-vcard-adr-post-office-box>post-office-box</a></code>, <code title=md-vcard-adr-extended-address><a href=#md-vcard-adr-extended-address>extended-address</a></code>, and
50978 <code title=md-vcard-adr-street-address><a href=#md-vcard-adr-street-address>street-address</a></code>
50979 properties, and optionally a <code title=md-vcard-adr-locality><a href=#md-vcard-adr-locality>locality</a></code> property, optionally
50980 a <code title=md-vcard-adr-region><a href=#md-vcard-adr-region>region</a></code> property,
50981 optionally a <code title=md-vcard-adr-postal-code><a href=#md-vcard-adr-postal-code>postal-code</a></code> property, and
50982 optionally a <code title=md-vcard-adr-country-name><a href=#md-vcard-adr-country-name>country-name</a></code>
50985 <p>If no <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code> properties
50986 are present within an <a href=#concept-item title=concept-item>item</a> that
50987 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
50988 <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, then the <a href=#address-type-strings>address type
50992 <p>Any number of properties with the name <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
50996 <dt><dfn id=md-vcard-adr-type title=md-vcard-adr-type><code>type</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51002 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51003 text that, when compared in a <a href=#case-sensitive>case-sensitive</a> manner,
51004 is equal to one of the <a href=#address-type-strings>address type strings</a>.</p>
51006 <p>Within each <a href=#concept-item title=concept-item>item</a> with the
51007 type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, there must be no more
51008 than one <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property <a href=#concept-item title=concept-item>item</a> with a <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code> property whose value is
51009 <code title=md-vcard-type-adr-pref><a href=#md-vcard-type-adr-pref>pref</a></code>.</p>
51011 <p>Any number of properties with the name <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code> may be present within the
51012 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, but within each such <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property <a href=#concept-item title=concept-item>item</a> there must only be one <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code> property per distinct
51017 <dt><dfn id=md-vcard-adr-post-office-box title=md-vcard-adr-post-office-box><code>post-office-box</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51024 href=#concept-property-value title=concept-property-value>value</a> must be
51027 <p>Any number of properties with the name <code title=md-vcard-adr-post-office-box><a href=#md-vcard-adr-post-office-box>post-office-box</a></code> may be
51028 present within the <a href=#concept-item title=concept-item>item</a> that
51029 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51030 <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51034 <dt><dfn id=md-vcard-adr-extended-address title=md-vcard-adr-extended-address><code>extended-address</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51041 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51044 <p>Any number of properties with the name <code title=md-vcard-adr-extended-address><a href=#md-vcard-adr-extended-address>extended-address</a></code> may
51045 be present within the <a href=#concept-item title=concept-item>item</a> that
51046 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51047 <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51051 <dt><dfn id=md-vcard-adr-street-address title=md-vcard-adr-street-address><code>street-address</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51058 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51061 <p>Any number of properties with the name <code title=md-vcard-adr-street-address><a href=#md-vcard-adr-street-address>street-address</a></code> may be
51062 present within the <a href=#concept-item title=concept-item>item</a> that
51063 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51064 <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51068 <dt><dfn id=md-vcard-adr-locality title=md-vcard-adr-locality><code>locality</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51075 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51078 <p>A single property with the name <code title=md-vcard-adr-locality><a href=#md-vcard-adr-locality>locality</a></code> may be present
51079 within the <a href=#concept-item title=concept-item>item</a> that forms the
51080 <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51084 <dt><dfn id=md-vcard-adr-region title=md-vcard-adr-region><code>region</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51091 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51094 <p>A single property with the name <code title=md-vcard-adr-region><a href=#md-vcard-adr-region>region</a></code> may be present within
51095 the <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51099 <dt><dfn id=md-vcard-adr-postal-code title=md-vcard-adr-postal-code><code>postal-code</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51106 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51109 <p>A single property with the name <code title=md-vcard-adr-postal-code><a href=#md-vcard-adr-postal-code>postal-code</a></code> may be present
51110 within the <a href=#concept-item title=concept-item>item</a> that forms the
51111 <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51115 <dt><dfn id=md-vcard-adr-country-name title=md-vcard-adr-country-name><code>country-name</code></dfn> (inside <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code>)</dt>
51122 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51125 <p>A single property with the name <code title=md-vcard-adr-country-name><a href=#md-vcard-adr-country-name>country-name</a></code> may be
51126 present within the <a href=#concept-item title=concept-item>item</a> that
51127 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51128 <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51140 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51141 either text or an <a href=#concept-item title=concept-item>item</a> with zero
51142 or more <code title=md-vcard-label-type><a href=#md-vcard-label-type>type</a></code> properties
51143 and exactly one <code title=md-vcard-label-value><a href=#md-vcard-label-value>value</a></code>
51146 <p>If no <code title=md-vcard-label-type><a href=#md-vcard-label-type>type</a></code> properties
51147 are present within an <a href=#concept-item title=concept-item>item</a> that
51148 forms the <a href=#concept-property-value title=concept-property-value>value</a> of a
51149 <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or if the <a href=#concept-property-value title=concept-property-value>value</a> of such a <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property is text, then the
51150 <a href=#address-type-strings>address type strings</a> <code title=mv-vcard-type-adr-intl>intl</code>, <code title=mv-vcard-type-adr-postal>postal</code>, <code title=mv-vcard-type-adr-parcel>parcel</code>, and <code title=mv-vcard-type-adr-work>work</code> are implied.</p>
51152 <p>Any number of properties with the name <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> may be present within each
51153 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51157 <dt><dfn id=md-vcard-label-type title=md-vcard-label-type><code>type</code></dfn> (inside <code title=md-vcard-label><a href=#md-vcard-label>label</a></code>)</dt>
51163 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51164 text that, when compared in a <a href=#case-sensitive>case-sensitive</a> manner,
51165 is equal to one of the <a href=#address-type-strings>address type strings</a>.</p>
51167 <p>Within each <a href=#concept-item title=concept-item>item</a> with the
51168 type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, there must be no more
51169 than one <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property <a href=#concept-item title=concept-item>item</a> with a <code title=md-vcard-label-type><a href=#md-vcard-label-type>type</a></code> property whose value is
51170 <code title=md-vcard-type-adr-pref><a href=#md-vcard-type-adr-pref>pref</a></code>.</p>
51172 <p>Any number of properties with the name <code title=md-vcard-label-type><a href=#md-vcard-label-type>type</a></code> may be present within the
51173 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of a <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, but within each such <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property <a href=#concept-item title=concept-item>item</a> there must only be one <code title=md-vcard-label-type><a href=#md-vcard-label-type>type</a></code> property per distinct
51178 <dt><dfn id=md-vcard-label-value title=md-vcard-label-value><code>value</code></dfn> (inside <code title=md-vcard-label><a href=#md-vcard-label>label</a></code>)</dt>
51185 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51188 <p>Exactly one property with the name <code title=md-vcard-label-value><a href=#md-vcard-label-value>value</a></code> must be present within
51189 the <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of a <code title=md-vcard-label><a href=#md-vcard-label>label</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51200 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51202 defined in the CCITT specifications E.163 and X.121, or an <a href=#concept-item title=concept-item>item</a> with zero or more <code title=md-vcard-tel-type><a href=#md-vcard-tel-type>type</a></code> properties and exactly one
51203 <code title=md-vcard-tel-value><a href=#md-vcard-tel-value>value</a></code> property. <a href=#refsE163>[E163]</a> <a href=#refsX121>[X121]</a></p>
51205 <p>If no <code title=md-vcard-tel-type><a href=#md-vcard-tel-type>type</a></code> properties
51206 are present within an <a href=#concept-item title=concept-item>item</a> that
51207 forms the <a href=#concept-property-value title=concept-property-value>value</a> of a
51208 <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or if the <a href=#concept-property-value title=concept-property-value>value</a> of such a <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property is text, then the <a href=#telephone-type-strings title="telephone type strings">telephone type string</a> <code title=mv-vcard-type-tel-voice>voice</code> is implied.</p>
51210 <p>Any number of properties with the name <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> may be present within each
51211 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51215 <dt><dfn id=md-vcard-tel-type title=md-vcard-tel-type><code>type</code></dfn> (inside <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code>)</dt>
51221 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51222 text that, when compared in a <a href=#case-sensitive>case-sensitive</a> manner,
51223 is equal to one of the <a href=#telephone-type-strings>telephone type strings</a>.</p>
51225 <p>Within each <a href=#concept-item title=concept-item>item</a> with the
51226 type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, there must be no more
51227 than one <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property <a href=#concept-item title=concept-item>item</a> with a <code title=md-vcard-tel-type><a href=#md-vcard-tel-type>type</a></code> property whose value is
51228 <code title=md-vcard-type-tel-pref><a href=#md-vcard-type-tel-pref>pref</a></code>.</p>
51230 <p>Any number of properties with the name <code title=md-vcard-tel-type><a href=#md-vcard-tel-type>type</a></code> may be present within the
51231 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of a <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, but within each such <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property <a href=#concept-item title=concept-item>item</a> there must only be one <code title=md-vcard-tel-type><a href=#md-vcard-tel-type>type</a></code> property per distinct
51236 <dt><dfn id=md-vcard-tel-value title=md-vcard-tel-value><code>value</code></dfn> (inside <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code>)</dt>
51243 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51245 the CCITT specifications E.163 and X.121. <a href=#refsE163>[E163]</a> <a href=#refsX121>[X121]</a></p>
51247 <p>Exactly one property with the name <code title=md-vcard-tel-value><a href=#md-vcard-tel-value>value</a></code> must be present within the
51248 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of a <code title=md-vcard-tel><a href=#md-vcard-tel>tel</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51259 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51260 either text or an <a href=#concept-item title=concept-item>item</a> with zero
51261 or more <code title=md-vcard-email-type><a href=#md-vcard-email-type>type</a></code> properties
51262 and exactly one <code title=md-vcard-email-value><a href=#md-vcard-email-value>value</a></code>
51265 href=#md-vcard-email-type>type</a></code> properties
51266 are present within an <a href=#concept-item title=concept-item>item</a> that
51267 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51268 <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or if the <a href=#concept-property-value title=concept-property-value>value</a> of such an <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property is text, then the
51269 <a href=#e-mail-type-strings title="e-mail type strings">e-mail type string</a> <code title=mv-vcard-type-email-internet>internet</code> is
51272 <p>Any number of properties with the name <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> may be present within each
51273 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51277 <dt><dfn id=md-vcard-email-type title=md-vcard-email-type><code>type</code></dfn> (inside <code title=md-vcard-email><a href=#md-vcard-email>email</a></code>)</dt>
51283 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51284 text that, when compared in a <a href=#case-sensitive>case-sensitive</a> manner,
51285 is equal to one of the <a href=#e-mail-type-strings>e-mail type strings</a>.</p>
51287 <p>Within each <a href=#concept-item title=concept-item>item</a> with the
51288 type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, there must be no more
51289 than one <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property <a href=#concept-item title=concept-item>item</a> with a <code title=md-vcard-email-type><a href=#md-vcard-email-type>type</a></code> property whose value is
51290 <code title=md-vcard-type-email-pref><a href=#md-vcard-type-email-pref>pref</a></code>.</p>
51292 <p>Any number of properties with the name <code title=md-vcard-email-type><a href=#md-vcard-email-type>type</a></code> may be present within the
51293 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, but within each such <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property <a href=#concept-item title=concept-item>item</a> there must only be one <code title=md-vcard-email-type><a href=#md-vcard-email-type>type</a></code> property per distinct
51298 <dt><dfn id=md-vcard-email-value title=md-vcard-email-value><code>value</code></dfn> (inside <code title=md-vcard-email><a href=#md-vcard-email>email</a></code>)</dt>
51305 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51308 <p>Exactly one property with the name <code title=md-vcard-email-value><a href=#md-vcard-email-value>value</a></code> must be present within
51309 the <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-email><a href=#md-vcard-email>email</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51321 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51324 <p>Any number of properties with the name <code title=md-vcard-mailer><a href=#md-vcard-mailer>mailer</a></code> may be present within each
51325 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51336 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51342 <li>A <a href=#valid-non-negative-integer>valid non-negative integer</a> that is exactly two
51348 <li>A <a href=#valid-non-negative-integer>valid non-negative integer</a> that is exactly two
51352 </ol><p>Any number of properties with the name <code title=md-vcard-tz><a href=#md-vcard-tz>tz</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51364 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51400 <p>Any number of properties with the name <code title=md-vcard-geo><a href=#md-vcard-geo>geo</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51412 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51415 <p>Any number of properties with the name <code title=md-vcard-title><a href=#md-vcard-title>title</a></code> may be present within each
51416 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51428 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51431 <p>Any number of properties with the name <code title=md-vcard-role><a href=#md-vcard-role>role</a></code> may be present within each
51432 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51443 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51444 an <a href=#absolute-url>absolute URL</a>.</p>
51446 <p>Any number of properties with the name <code title=md-vcard-logo><a href=#md-vcard-logo>logo</a></code> may be present within each
51447 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51459 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51460 either an <a href=#concept-item title=concept-item>item</a> with the type
51461 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or an <a href=#absolute-url>absolute
51464 <p>Any number of properties with the name <code title=md-vcard-agent><a href=#md-vcard-agent>agent</a></code> may be present within each
51465 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51476 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51477 either text or an <a href=#concept-item title=concept-item>item</a> with one
51478 <code title=md-vcard-org-organization-name><a href=#md-vcard-org-organization-name>organization-name</a></code>
51482 <p>Any number of properties with the name <code title=md-vcard-org><a href=#md-vcard-org>org</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51486 <dt><dfn id=md-vcard-org-organization-name title=md-vcard-org-organization-name><code>organization-name</code></dfn> (inside <code title=md-vcard-org><a href=#md-vcard-org>org</a></code>)</dt>
51492 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51495 <p>Exactly one property with the name <code title=md-vcard-org-organization-name><a href=#md-vcard-org-organization-name>organization-name</a></code>
51496 must be present within the <a href=#concept-item title=concept-item>item</a>
51497 that forms the <a href=#concept-property-value title=concept-property-value>value</a>
51498 of an <code title=md-vcard-org><a href=#md-vcard-org>org</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51502 <dt><dfn id=md-vcard-org-organization-unit title=md-vcard-org-organization-unit><code>organization-unit</code></dfn> (inside <code title=md-vcard-org><a href=#md-vcard-org>org</a></code>)</dt>
51508 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51511 <p>Any number of properties with the name <code title=md-vcard-org-organization-unit><a href=#md-vcard-org-organization-unit>organization-unit</a></code>
51512 may be present within the <a href=#concept-item title=concept-item>item</a>
51513 that forms the <a href=#concept-property-value title=concept-property-value>value</a>
51514 of the <code title=md-vcard-org><a href=#md-vcard-org>org</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51526 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51529 <p>Any number of properties with the name <code title=md-vcard-categories><a href=#md-vcard-categories>categories</a></code> may be present
51530 within each <a href=#concept-item title=concept-item>item</a> with the type
51531 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51543 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51546 <p>Any number of properties with the name <code title=md-vcard-note><a href=#md-vcard-note>note</a></code> may be present
51547 within each <a href=#concept-item title=concept-item>item</a> with the type
51548 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51563 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51564 text that is a <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</p>
51570 <p>Any number of properties with the name <code title=md-vcard-rev><a href=#md-vcard-rev>rev</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51582 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51585 <p>Any number of properties with the name <code title=md-vcard-sort-string><a href=#md-vcard-sort-string>sort-string</a></code> may be present
51586 within each <a href=#concept-item title=concept-item>item</a> with the type
51587 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51598 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51599 an <a href=#absolute-url>absolute URL</a>.</p>
51601 <p>Any number of properties with the name <code title=md-vcard-sound><a href=#md-vcard-sound>sound</a></code> may be present within each
51602 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51614 <p>Gives a <a href=#url>URL</a> relating to the person or
51617 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51618 an <a href=#absolute-url>absolute URL</a>.</p>
51620 <p>Any number of properties with the name <code title=md-vcard-url><a href=#md-vcard-url>url</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51635 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51644 <p>Any number of properties with the name <code title=md-vcard-class><a href=#md-vcard-class>class</a></code> may be present
51645 within each <a href=#concept-item title=concept-item>item</a> with the type
51646 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51660 <p>Gives a <a href=#url>URL</a> for instant messaging and presence
51663 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51664 either an <a href=#absolute-url>absolute URL</a> or an <a href=#concept-item title=concept-item>item</a> with zero or more <code title=md-vcard-impp-type><a href=#md-vcard-impp-type>type</a></code> properties and exactly one
51665 <code title=md-vcard-impp-value><a href=#md-vcard-impp-value>value</a></code> property.</p>
51667 <p>If no <code title=md-vcard-impp-type><a href=#md-vcard-impp-type>type</a></code> properties
51668 are present within an <a href=#concept-item title=concept-item>item</a> that
51669 forms the <a href=#concept-property-value title=concept-property-value>value</a> of an
51670 <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or if the <a href=#concept-property-value title=concept-property-value>value</a> of such an <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property is an <a href=#absolute-url>absolute
51671 URL</a>, then no <a href=#impp-type-strings>IMPP type strings</a> are
51674 <p>Any number of properties with the name <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> may be present within each
51675 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51679 <dt><dfn id=md-vcard-impp-type title=md-vcard-impp-type><code>type</code></dfn> (inside <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code>)</dt>
51683 <p>Gives the intended use of the IMPP <a href=#url>URL</a>.</p>
51685 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51686 text that, when compared in a <a href=#case-sensitive>case-sensitive</a> manner,
51687 is equal to one of the <a href=#impp-type-strings>IMPP type strings</a>.</p>
51689 <p>Within each <a href=#concept-item title=concept-item>item</a> with the
51690 type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, there must be no more
51691 than one <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property <a href=#concept-item title=concept-item>item</a> with a <code title=md-vcard-impp-type><a href=#md-vcard-impp-type>type</a></code> property whose value is
51692 <code title=md-vcard-type-impp-pref><a href=#md-vcard-type-impp-pref>pref</a></code>.</p>
51694 <p>Any number of properties with the name <code title=md-vcard-impp-type><a href=#md-vcard-impp-type>type</a></code> may be present within the
51695 <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, but within each such <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property <a href=#concept-item title=concept-item>item</a> there must only be one <code title=md-vcard-impp-type><a href=#md-vcard-impp-type>type</a></code> property per distinct
51700 <dt><dfn id=md-vcard-impp-value title=md-vcard-impp-value><code>value</code></dfn> (inside <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code>)</dt>
51704 <p>Gives the actual <a href=#url>URL</a> for instant messaging and
51708 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
51709 an <a href=#absolute-url>absolute URL</a>.</p>
51711 <p>Exactly one property with the name <code title=md-vcard-impp-value><a href=#md-vcard-impp-value>value</a></code> must be present within
51712 the <a href=#concept-item title=concept-item>item</a> that forms the <a href=#concept-property-value title=concept-property-value>value</a> of an <code title=md-vcard-impp><a href=#md-vcard-impp>impp</a></code> property of an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</p>
51858 <a href=#url>URL</a> is appropriate.</p>
51866 <a href=#url>URL</a>.</p>
51872 <a href=#url>URL</a>s are specified.</p>
51878 <code><a href=#document>Document</a></code>, a user agent must run the following algorithm
51883 <ol><li><p>If none of the nodes in <var title="">nodes</var> are <a href=#concept-item title=concept-item>items</a> with the <a href=#item-type>item type</a>
51884 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, then
51887 <li><p>Let <var title="">node</var> be the first node in <var title="">nodes</var> that is an <a href=#concept-item title=concept-item>item</a> with the <a href=#item-type>item type</a>
51888 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>.</li>
51892 <li><p><a href=#add-a-vcard-line>Add a vCard line</a> with the type "<code title="">BEGIN</code>" and the value "<code title="">VCARD</code>"
51895 <li><p><a href=#add-a-vcard-line>Add a vCard line</a> with the type "<code title="">PROFILE</code>" and the value "<code title="">VCARD</code>" to <var title="">output</var>.</li>
51897 <li><p><a href=#add-a-vcard-line>Add a vCard line</a> with the type "<code title="">VERSION</code>" and the value "<code title="">3.0</code>"
51900 <li><p><a href=#add-a-vcard-line>Add a vCard line</a> with the type "<code title="">SOURCE</code>" and the result of <a href=#escaping-the-vcard-text-string>escaping the vCard
51901 text string</a> that is <a href="#the-document's-current-address">the document's current
51904 <li><p>If <a href=#the-title-element>the <code>title</code> element</a> is not null,
51905 <a href=#add-a-vcard-line>add a vCard line</a> with the type "<code title="">NAME</code>" and with the result of <a href=#escaping-the-vcard-text-string>escaping the
51906 vCard text string</a> obtained from the <code><a href=#textcontent>textContent</a></code>
51907 of <a href=#the-title-element>the <code>title</code> element</a> as the value to <var title="">output</var>.</li>
51909 <li><p>If <var title="">node</var> has a <a href=#global-identifier>global
51910 identifier</a>, <a href=#add-a-vcard-line>add a vCard line</a> with the type
51911 "<code title="">UID</code>" and with the result of <a href=#escaping-the-vcard-text-string>escaping
51912 the vCard text string</a> of that <a href=#global-identifier>global identifier</a>
51917 <p>For each element <var title="">element</var> that is <a href=#the-properties-of-an-item title="the properties of an item">a property of the item</a>
51919 in <var title="">element</var>'s <a href=#property-names>property names</a>, run
51931 <dl><dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a> <var title="">subitem</var>
51932 and <var title="">name</var> is <code title=md-vcard-n><a href=#md-vcard-n>n</a></code></dt>
51940 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
51941 <code title=md-vcard-n-family-name><a href=#md-vcard-n-family-name>family-name</a></code> in
51947 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
51948 <code title=md-vcard-n-given-name><a href
51953 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
51954 <code title=md-vcard-n-additional-name><a href=#md-vcard-n-additional-name>additional-name</a></code> in
51960 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
51961 <code title=md-vcard-n-honorific-prefix><a href=#md-vcard-n-honorific-prefix>honorific-prefix</a></code>
51967 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
51968 <code title=md-vcard-n-honorific-suffix><a href=#md-vcard-n-honorific-suffix>honorific-suffix</a></code>
51973 <dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a> <var title="">subitem</var>
51974 and <var title="">name</var> is <code title=md-vcard-adr><a href=#md-vcard-adr>adr</a></code></dt>
51982 <a href=#collecting-vcard-subproperties>collecting vCard subproperties</a> named <code title=md-vcard-adr-post-office-box><a href=#md-vcard-adr-post-office-box>post-office-box</a></code>
51988 <a href=#collecting-vcard-subproperties>collecting vCard subproperties</a> named <code title=md-vcard-adr-extended-address><a href=#md-vcard-adr-extended-address>extended-address</a></code>
51994 <a href=#collecting-vcard-subproperties>collecting vCard subproperties</a> named <code title=md-vcard-adr-street-address><a href=#md-vcard-adr-street-address>street-address</a></code> in
52000 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52001 <code title=md-vcard-adr-locality><a href=#md-vcard-adr-locality>locality</a></code> in <var title="">subitem</var>.</p>
52006 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52007 <code title=md-vcard-adr-region><a href=#md-vcard-adr-region>region</a></code> in <var title="">subitem</var>.</p>
52012 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52013 <code title=md-vcard-adr-postal-code><a href=#md-vcard-adr-postal-code>postal-code</a></code> in
52019 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52020 <code title=md-vcard-adr-country-name><a href=#md-vcard-adr-country-name>country-name</a></code>
52023 <li><p>If there is a property named <code title=md-vcard-adr-type><a href=#md-vcard-adr-type>type</a></code> in <var title="">subitem</var>, and the first such property has a
52024 <a href=#concept-property-value title=concept-property-value>value</a> that is not
52025 an <a href=#concept-item title=concept-item>item</a> and whose value
52026 consists only of <a href=#alphanumeric-ascii-characters>alphanumeric ASCII characters</a>,
52028 value is the <a href=#concept-property-value title=concept-property-value>value</a> of that property
52033 <dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a> <var title="">subitem</var>
52034 and <var title="">name</var> is <code title=md-vcard-org><a href=#md-vcard-org>org</a></code></dt>
52042 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52043 <code title=md-vcard-org-organization-name><a href=#md-vcard-org-organization-name>organization-name</a></code>
52048 <p>For each property named <code title=md-vcard-org-organization-unit><a href=#md-vcard-org-organization-unit>organization-unit</a></code>
52051 <ol><li><p>If the <a href=#concept-property-value title=concept-property-value>value</a> of the property
52052 is an <a href=#concept-item title=concept-item>item</a>, then skip
52057 <li><p>Append the result of <a href=#escaping-the-vcard-text-string>escaping the vCard text
52058 string</a> given by the <a href=#concept-property-value title=concept-property-value>value</a> of the property
52065 <dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a> <var title="">subitem</var>
52066 with the <a href=#item-type>item type</a> <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>
52067 and <var title="">name</var> is <code title=md-vcard-agent><a href=#md-vcard-agent>agent</a></code></dt>
52072 <a href=#escaping-the-vcard-text-string>escaping the vCard text string</a> obtained from
52073 <a href=#extracting-a-vcard>extracting a vCard</a> from the element that
52081 <dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a> and <var title="">name</var>
52087 <a href=#collecting-the-first-vcard-subproperty>collecting the first vCard subproperty</a> named
52091 first such property has a <a href=#concept-property-value title=concept-property-value>value</a> that is not an
52092 <a href=#concept-item title=concept-item>item</a> and whose value
52093 consists only of <a href=#alphanumeric-ascii-characters>alphanumeric ASCII characters</a>,
52095 value is the <a href=#concept-property-value title=concept-property-value>value</a> of that property
52100 <dt>Otherwise (the property's <a href=#concept-property-value title=concept-property-value>value</a> is not an <a href=#concept-item title=concept-item>item</a>)</dt>
52104 <ol><li><p>Let <var title="">value</var> be the property's <a href=#concept-property-value title=concept-property-value>value</a>.</li>
52106 <li><p>If <var title="">element</var> is one of the <a href=#url-property-elements>URL
52110 <code><a href=#the-time-element>time</a></code> element and the <var title="">value</var> is
52111 a <a href=#valid-date-string>valid date string</a>, add a parameter with the name
52115 <code><a href=#the-time-element>time</a></code> element and the <var title="">value</var> is
52116 a <a href=#valid-global-date-and-time-string>valid global date and time string</a>, add a
52127 <li><p>Unless <var title="">name</var> is <code title=md-vcard-geo><a href=#md-vcard-geo>geo</a></code>, prefix every U+003B SEMICOLON
52147 <p><a href=#add-a-vcard-line>Add a vCard line</a> with the type <var title="">name</var>, the parameters <var title="">parameters</var>, and the value <var title="">value</var> to <var title="">output</var>.</p>
52153 <li><p><a href=#add-a-vcard-line>Add a vCard line</a> with the type "<code title="">END</code>" and the value "<code title="">VCARD</code>"
52164 <li><p>Append <var title="">type</var>, <a href=#converted-to-ascii-uppercase>converted to
52226 <ol><li><p>If the <a href=#concept-property-value title=concept-property-value>value</a>
52227 of the property is itself an <a href=#concept-item title=concept-item>item</a>, then skip this
52234 <li><p>Append the result of <a href=#escaping-the-vcard-text-string>escaping the vCard text
52235 string</a> given by the <a href=#concept-property-value title=concept-property-value>value</a> of the property to
52250 <li><p>If the <a href=#concept-property-value title=concept-property-value>value</a> of
52251 the first property named <var title="">subname</var> in <var title="">subitem</var> is an <a href=#concept-item title=concept-item>item</a>, then abort these substeps,
52254 <li><p>Return the result of <a href=#escaping-the-vcard-text-string>escaping the vCard text
52255 string</a> given by the <a href=#concept-property-value title=concept-property-value>value</a> of the first property
52284 the input does not conform to the rules described for the <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>
52285 <a href=#item-type>item type</a> and <a href=#defined-property-name title="defined property
52327 <li><a itemprop="url" href="http://en.wikipedia.org/wiki/Jack_Bauer">I'm on Wikipedia</a>
52329 <li><a itemprop="url" href="http://www.jackbauerfacts.com/">Jack Bauer Facts</a></li>
52330 <li itemprop="email"><a href="mailto:j.bauer@la.ctu.gov.invalid">j.bauer@la.ctu.gov.invalid</a></li>
52338 itemprop="email" href="mailto:c.obrian@la.ctu.gov.invalid"><span
52364 <code><a href=#the-address-element>address</a></code> element) containing an address with two street
52413 <p>An item with the <a href=#item-type>item type</a> <dfn id=md-vevent title=md-vevent><code>http://microformats.org/profile/hcalendar#vevent</code></dfn>
52416 <p>This vocabulary <a href=#support-global-identifiers-for-items title="support global identifiers for
52419 <p>The following are the type's <a href=#defined-property-name title="defined property
52422 information on how to interpret the values can be found. <a href=#refsRFC2445>[RFC2445]</a></p>
52434 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52435 an <a href=#absolute-url>absolute URL</a>.</p>
52437 <p>Any number of properties with the name <code title=md-vevent-attach><a href=#md-vevent-attach>attach</a></code> may be present within each
52438 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52450 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52453 <p>Any number of properties with the name <code title=md-vevent-categories><a href=#md-vevent-categories>categories</a></code> may be present
52454 within each <a href=#concept-item title=concept-item>item</a> with the type
52455 <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52467 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52476 <p>A single property with the name <code title=md-vevent-class><a href=#md-vevent-class>class</a></code> may be present within each
52477 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52488 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52491 <p>Any number of properties with the name <code title=md-vevent-comment><a href=#md-vevent-comment>comment</a></code> may be present within each
52492 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52503 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52506 <p>A single property with the name <code title=md-vevent-description><a href=#md-vevent-description>description</a></code> may be present
52507 within each <a href=#concept-item title=concept-item>item</a> with the type
52508 <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52519 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52558 <p>A single property with the name <code title=md-vevent-geo><a href=#md-vevent-geo>geo</a></code> may be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52569 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52572 <p>A single property with the name <code title=md-vevent-location><a href=#md-vevent-location>location</a></code> may be present within
52573 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52587 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52590 <p>Any number of properties with the name <code title=md-vevent-resources><a href=#md-vevent-resources>resources</a></code> may be present within
52591 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52602 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52608 </ul><p>A single property with the name <code title=md-vevent-status><a href=#md-vevent-status>status</a></code> may be present within each
52609 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52620 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52624 the <a href=#concept-property-value title=concept-property-value>value</a> by U+0020
52627 <p>A single property with the name <code title=md-vevent-summary><a href=#md-vevent-summary>summary</a></code> may be present within
52628 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52639 <p>If the property with the name <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code> is present within an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>
52640 that has a property with the name <code title=md-vevent-dtstart><a href=#md-vevent-dtstart>dtstart</a></code> whose value is a
52641 <a href=#valid-date-string>valid date string</a>, then the <a href=#concept-property-value title=concept-property-value>value</a> of the property with
52642 the name <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code> must be text
52643 that is a <a href=#valid-date-string>valid date string</a> also. Otherwise, the
52644 <a href=#concept-property-value title=concept-property-value>value</a> of the property
52645 must be text that is a <a href=#valid-global-date-and-time-string>valid global date and time
52648 <p>In either case, the <a href=#concept-property-value title=concept-property-value>value</a> be later in time than
52650 property of the same <a href=#concept-item title=concept-item>item</a>.</p>
52652 <p class=note>The time given by the <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code> property is not
52653 inclusive. For day-long events, therefore, the <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code> property's <a href=#concept-property-value title=concept-property-value>value</a> will be the day
52656 <p>A single property with the name <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code> may be present within each
52657 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>,
52658 so long as that <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>
52659 does not have a property with the name <code title=md-vevent-duration><a href=#md-vevent-duration>duration</a></code>.</p>
52670 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52671 text that is either a <a href=#valid-date-string>valid date string</a> or a
52672 <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</p>
52674 <p>Exactly one property with the name <code title=md-vevent-dtstart><a href=#md-vevent-dtstart>dtstart</a></code> must be present within
52675 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52686 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52687 text that is a <a href=#valid-vevent-duration-string>valid vevent duration string</a>.</p>
52692 <p>A single property with the name <code title=md-vevent-duration><a href=#md-vevent-duration>duration</a></code> may be present within
52693 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>,
52694 so long as that <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>
52695 does not have a property with the name <code title=md-vevent-dtend><a href=#md-vevent-dtend>dtend</a></code>.</p>
52707 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52712 </ul><p>A single property with the name <code title=md-vevent-transp><a href=#md-vevent-transp>transp</a></code> may be present within each
52713 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52728 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52731 <p>Any number of properties with the name <code title=md-vevent-contact><a href=#md-vevent-contact>contact</a></code> may be present within
52732 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52753 <p>Gives a <a href=#url>URL</a> for the event.</p>
52755 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52756 an <a href=#absolute-url>absolute URL</a>.</p>
52758 <p>A single property with the name <code title=md-vevent-url><a href=#md-vevent-url>url</a></code> may be present within each
52759 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52774 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52775 text that is either a <a href=#valid-date-string>valid date string</a> or a
52776 <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</p>
52778 <p>Any number of properties with the name <code title=md-vevent-exdate><a href=#md-vevent-exdate>exdate</a></code> may be present within
52779 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52791 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52793 specification. <a href=#refsRFC2445>[RFC2445]</a></p>
52795 <p>Any number of properties with the name <code title=md-vevent-exrule><a href=#md-vevent-exrule>exrule</a></code> may be present within
52796 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52807 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52810 <ul><li>A <a href=#valid-date-string>valid date string</a>.</li>
52812 <li>A <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</li>
52814 <li>A <a href=#valid-global-date-and-time-string>valid global date and time string</a> followed by
52815 a U+002F SOLIDUS character (/) followed by a second <a href=#valid-global-date-and-time-string>valid
52818 <li>A <a href=#valid-global-date-and-time-string>valid global date and time string</a> followed by
52819 a U+002F SOLIDUS character (/) followed by a <a href=#valid-vevent-duration-string>valid vevent
52822 </ul><p>Any number of properties with the name <code title=md-vevent-rdate><a href=#md-vevent-rdate>rdate</a></code> may be present within
52823 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52835 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52837 specification. <a href=#refsRFC2445>[RFC2445]</a></p>
52839 <p>Any number of properties with the name <code title=md-vevent-rrule><a href=#md-vevent-rrule>rrule</a></code> may be present within
52840 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52852 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52853 text that is a <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</p>
52855 <p>A single property with the name <code title=md-vevent-created><a href=#md-vevent-created>created</a></code> may be present within
52856 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52871 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52872 text that is a <a href=#valid-global-date-and-time-string>valid global date and time string</a>.</p>
52874 <p>A single property with the name <code title=md-vevent-last-modified><a href=#md-vevent-last-modified>last-modified</a></code> may be present within
52875 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52886 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
52887 text that is a <a href=#valid-non-negative-integer>valid non-negative integer</a>.</p>
52889 <p>A single property with the name <code title=md-vevent-sequence><a href=#md-vevent-sequence>sequence</a></code> may be present within
52890 each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>.</p>
52906 <ul><li> A <a href=#valid-non-negative-integer>valid non-negative integer</a> followed by a
52913 <ol><li> A <a href=#valid-non-negative-integer>valid non-negative integer</a> followed by a
52923 <ol><li> A <a href=#valid-non-negative-integer>valid non-negative integer</a> followed by a
52927 <li> A <a href=#valid-non-negative-integer>valid non-negative integer</a> followed by a
52931 <li> A <a href=#valid-non-negative-integer>valid non-negative integer</a> followed by a
52942 <code><a href=#document>Document</a></code>, a user agent must run the following algorithm
52946 <ol><li><p>If none of the nodes in <var title="">nodes</var> are <a href=#concept-item title=concept-item>items</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>,
52952 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">BEGIN</code>" and the value "<code title="">VCALENDAR</code>" to <var title="">output</var>.</li>
52954 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">PRODID</code>" and the value equal to a
52957 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">VERSION</code>" and the value "<code title="">2.0</code>"
52962 <p>For each node <var title="">node</var> in <var title="">nodes</var> that is an <a href=#concept-item title=concept-item>item</a> with the type <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>,
52965 <ol><li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">BEGIN</code>" and the value "<code title="">VEVENT</code>" to <var title="">output</var>.</li>
52967 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">DTSTAMP</code>" and a value consisting of an iCalendar
52969 href=#refsRFC2445>[RFC2445]</a></li>
52971 <li><p>If the <a href=#concept-item title=concept-item>item</a> has a
52972 <a href=#global-identifier>global identifier</a>, <a href=#add-an-icalendar-line>add an iCalendar
52974 <a href=#global-identifier>global identifier</a> as the value to <var title="">output</var>.</li>
52978 <p>For each element <var title="">element</var> that is <a href=#the-properties-of-an-item title="the properties of an item">a property of the item</a>
52980 in <var title="">element</var>'s <a href=#property-names>property names</a>,
52983 <dl><dt>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is an <a href=#concept-item title=concept-item>item</a></dt>
52992 <dt>If <var title="">element</var> is a <code><a href=#the-time-element>time</a></code>
52999 from the property's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
53001 <p>If the property's <a href=#concept-property-value title=concept-property-value>value</a> is a <a href=#valid-date-string>valid
53002 date string</a> then <a href=#add-an-icalendar-line>add an iCalendar line</a>
53006 <p>Otherwise, if the property's <a href=#concept-property-value title=concept-property-value>value</a> is a <a href=#valid-global-date-and-time-string>valid
53007 global date and time string</a> then <a href=#add-an-icalendar-line>add an iCalendar
53021 <p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type <var title="">name</var> and the property's <a href=#concept-property-value title=concept-property-value>value</a> to <var title="">output</var>.</p>
53027 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">END</code>" and the value "<code title="">VEVENT</code>"
53032 <li><p><a href=#add-an-icalendar-line>Add an iCalendar line</a> with the type "<code title="">END</code>" and the value "<code title="">VCALENDAR</code>" to <var title="">output</var>.</li>
53041 <li><p>Append <var title="">type</var>, <a href=#converted-to-ascii-uppercase>converted to
53109 <code title=md-vevent><a href=#md-vevent>http://microformats.org/profile/hcalendar#vevent</a></code>
53110 <a href=#item-type>item type</a> and <a href=#defined-property-name title="defined property
53135 <a href="http://livebrum.co.uk/2009/05/05/bluesday-tuesday-money-road"
53151 // It is not a compliant implementation of the algorithm for <a href=#extracting-vevent-data>extracting vEvent data</a>.
53199 <p><a href="http://livebrum.co.uk/2009/05/05/bluesday-tuesday-money-road"
53212 <p>An item with the <a href=#item-type>item type</a> <dfn id=md-work title=md-work><code>http://n.whatwg.org/work</code></dfn>
53217 <p>The following are the type's <a href=#defined-property-name title="defined property
53226 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
53227 an <a href=#absolute-url>absolute URL</a>.</p>
53229 <p>Exactly one property with the name <code title=md-work-work><a href=#md-work-work>work</a></code> must be present within each <a href=#concept-item title=concept-item>item</a> with the type <code title=md-work><a href=#md-work>http://n.whatwg.org/work</a></code>.</p>
53240 <p>A single property with the name <code title=md-work-title><a href=#md-work-title>title</a></code> may be present within each
53241 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-work><a href=#md-work>http://n.whatwg.org/work</a></code>.</p>
53253 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
53254 either an <a href=#concept-item title=concept-item>item</a> with the type
53255 <code title=md-vcard><a href=#md-vcard>http://microformats.org/profile/hcard</a></code>, or
53258 <p>Any number of properties with the name <code title=md-work-author><a href=#md-work-author>author</a></code> may be present within each
53259 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-work><a href=#md-work>http://n.whatwg.org/work</a></code>.</p>
53271 <p>The <a href=#concept-property-value title=concept-property-value>value</a> must be
53272 an <a href=#absolute-url>absolute URL</a>.</p>
53274 <p>Any number of properties with the name <code title=md-work-license><a href=#md-work-license>license</a></code> may be present within each
53275 <a href=#concept-item title=concept-item>item</a> with the type <code title=md-work><a href=#md-work>http://n.whatwg.org/work</a></code>.</p>
53298 predicates that result from <a href=#extracting-rdf title="extracting rdf">converting
53300 <a href=#item-type title="item type">type</a> is "<code title=md-work><a href=#md-work>http://n.whatwg.org/work</a></code>".</p>
53320 href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative
53323 href="http://www.opensource.org/licenses/mit-license.php">MIT
53348 <code><a href=#document>Document</a></code>, a user agent must run the following algorithm
53356 <li><p>For each <var title="">node</var> in <var title="">nodes</var>, check if the element is a <a href
53357 and if it is then <a href=#get-the-object>get the object</a> for that element and
53370 <li><p>If the <var title="">item</var> has an <a href=#item-type>item
53372 "<code title="">type</code>" whose value is the <a href=#item-type>item
53375 <li><p>If the <var title="">item</var> has an <a href=#global-identifier>global
53377 called "<code title="">id</code>" whose value is the <a href=#global-identifier>global
53386 more <a href=#property-names>property names</a> and is one of <a href=#the-properties-of-an-item title="the
53388 algorithm that returns <a href=#the-properties-of-an-item>the properties of an item</a>, run
53391 <ol><li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
53393 <li><p>If <var title="">value</var> is an <a href=#concept-item title=concept-item>item</a>, then <a href=#get-the-object>get the
53400 <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
53424 <p>If <a href=#the-title-element>the <code>title</code> element</a> is not null,
53427 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53429 <dt>object <dd> the concatenation of the data of all the child <a href=#text-node title="text node">text nodes</a> of <a href=#the-title-element>the <code>title</code> element</a>, in <a href=#tree-order>tree order</a>, as a plain literal, with the language information set from the <a href=#language>language</a> of <a href=#the-title-element>the <code>title</code> element</a>, if it is not unknown.
53435 <p>For each <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and
53436 <code><a href=#the-link-element>link</a></code> element in the <code><a href=#document>Document</a></code>, run these
53442 <li><p>If the element does not have an <code title="">href</code>
53445 <li><p>If <a href=#resolve-a-url title="resolve a URL">resolving</a> the
53446 element's <code title="">href</code> attribute relative to the
53449 <li><p>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split
53454 that does not contain a U+003A COLON characters (:) <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">to ASCII
53458 one instance of the token <code title=rel-up><a href=#link-type-up>up</a></code>, then
53465 tokens <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> and <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, then remove them both
53473 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53474 <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>, with any characters in <var title="">token</var> that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
53475 <dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
53476 </dl><p>For each token <var title="">token</var> in <var title="">list of tokens</var> that is an <a href=#absolute-url>absolute
53479 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53481 <dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
53488 <p>For each <code><a href=#meta>meta</a></code> element in the <code><a href=#document>Document</a></code>
53489 that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
53490 a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, if the
53491 value of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute
53495 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53496 <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, with any characters in the value that are not valid in the <ifragment> production of the IRI syntax being %-escaped <a href=#refsRFC3987>[RFC3987]</a>
53497 <dt>object <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, as a plain literal, with the language information set from the <a href=#language>language</a> of the element, if it is not unknown
53498 </dl><p>For each <code><a href=#meta>meta</a></code> element in the <code><a href=#document>Document</a></code>
53499 that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
53500 a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, if the
53501 value of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute is
53502 an <a href=#absolute-url>absolute URL</a>, generate the following triple:</p>
53504 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53505 <dt>predicate <dd> the value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute
53506 <dt>object <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, as a plain literal, with the language information set from the <a href=#language>language</a> of the element, if it is not unknown
53511 <p>For each <code><a href=#the-blockquote-element>blockquote</a></code> and <code><a href=#the-q-element>q</a></code> element in
53512 the <code><a href=#document>Document</a></code> that has a <code title="">cite</code>
53513 attribute that <a href=#resolve-a-url title="resolve a url">resolves</a>
53517 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53519 <dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">cite</code> attribute relative to the element
53531 <p>For each element that is also a <a href=#top-level-microdata-items title="top-level
53537 <p><a href=#generate-the-triples-for-an-item title="generate the triples for an item">Generate the
53546 <dl class=triple><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
53562 <a href=#global-identifier>global identifier</a> and that <a href=#global-identifier>global
53563 identifier</a> is an <a href=#absolute-url>absolute URL</a>, let <var title="">subject</var> be that <a href=#global-identifier>global
53570 <li><p>If <var title="">item</var> has an <a href=#item-type>item type</a>
53571 and that <a href=#item-type>item type</a> is an <a href=#absolute-url>absolute URL</a>,
53572 let <var title="">type</var> be that <a href=#item-type>item
53631 %-escaped. <a href=#refsRFC3987>[RFC3987]</a></li>
53638 more <a href=#property-names>property names</a> and is one of <a href=#the-properties-of-an-item title="the
53640 algorithm that returns <a href=#the-properties-of-an-item>the properties of an item</a>, run
53645 <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
53648 <ol><li><p>If <var title="">type</var> is the empty string and <var title="">name</var> is not an <a href=#absolute-url>absolute URL</a>, then
53651 <li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
53653 <li><p>If <var title="">value</var> is an <a hrefhref=#generate-the-triples-for-an-item title="generate
53662 the <a href=#url-property-elements>URL property elements</a>, let <var title="">value</var> be a plain literal, with the language
53663 information set from the <a href=#language>language</a> of the element, if
53668 <dl><dt>If <var title="">name</var> is an <a href=#absolute-url>absolute
53691 %-escaped. <a href=#refsRFC3987>[RFC3987]</a></li>
53699 double-escaping existing %-escapes. <a href=#refsRFC3987>[RFC3987]</a></p> <!-- this ensures
53747 <link itemprop="http://purl.org/dc/terms/type" href="http://purl.oreilly.com/product-types/BOOK">
53754 <link itemprop="http://purl.org/dc/terms/type" href="http://purl.oreilly.com/product-types/EBOOK">
53827 <p>Given a <code><a href=#document>Document</a></code> <var title="">source</var>, a user
53831 instead use the hAtom algorithm. <a href=#refsHATOM>[HATOM]</a></p>
53833 <ol><li><p>If the <code><a href=#document>Document</a></code> <var title="">source</var> does
53834 not contain any <code><a href=#the-article-element>article</a></code> elements, then return nothing
53838 <li><p>Let <var title="">R</var> be an empty <a href=#xml-documents title="XML
53839 documents">XML</a> <code><a href=#document>Document</a></code> object whose <a href="#the-document's-address" title="the document's address">address</a> is user-agent
53843 <a href=#atom-namespace>Atom namespace</a> to <var title="">R</var>.</li>
53847 <p>For each <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute and whose <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute's value is <code title=meta-author><a href=#meta-author>author</a></code>, run the following substeps:</p>
53850 <a href=#atom-namespace>Atom namespace</a> to the root element of <var title="">R</var>.</li>
53853 <a href=#atom-namespace>Atom namespace</a> to the element created in the
53857 <code><a href=#meta>meta</a></code> element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute to the element
53865 <p>If there is a <code><a href=#the-link-element>link</a></code> element whose <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute's value includes the
53866 keyword <code title=rel-icon><a href=#rel-icon>icon</a></code>, and that element also
53867 has an <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute whose
53868 value successfully <a href=#resolve-a-url title="resolve a url">resolves</a>
53869 relative to the <code><a href=#the-link-element>link</a></code> element, then append an <code title="">icon</code> element in the <a href=#atom-namespace>Atom namespace</a> to
53871 node with its data set to the <a href=#absolute-url>absolute URL</a> resulting
53872 from <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
53873 <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute.</p>
53881 <p>Append an <code title="">id</code> element in the <a href=#atom-namespace>Atom
53883 whose contents is a text node with its data set to <a href="#the-document's-current-address">the
53890 <p>Optionally: Let <var title="">x</var> be a <code title="">link</code> element in the <a href=#atom-namespace>Atom
53893 (user-agent-defined) <a href="#the-document's-address" title="the document's
53897 <p class=note>This step would be skipped when the document <var title="">R</var> has no convenient <a href="#the-document's-address" title="the document's
53906 element in the <a href=#atom-namespace>Atom namespace</a>. Add a <code title="">rel</code> attribute whose value is the string "<code title="">alternate</code>" to <var title="">x</var>. If the
53907 document being converted is an <a href=#html-documents title="HTML documents">HTML
53909 value is the string "<code><a href=#text/html>text/html</a></code>" to <var title="">x</var>. Otherwise, the document being converted is an
53910 <a href=#xml-documents title="XML documents">XML document</a>; add a <code title="">type</code> attribute whose value is the string
53911 "<code><a href=#application/xhtml+xml>application/xhtml+xml</a></code>" to <var title="">x</var>. Append a text node with its data set to
53912 <a href="#the-document's-current-address">the document's current address</a> to <var title="">x</var>. Append <var title="">x</var> to the root element
53921 <a href=#heading-content>heading content</a> whose nearest ancestor of
53922 <a href=#sectioning-content>sectioning content</a> is <a href=#the-body-element>the body
53936 <code><a href=#textcontent>textContent</a></code> of <a href=#the-title-element>the <code>title</code>
53942 <dt>If <var title="">heading</var> is a <code><a href=#the-hgroup-element>hgroup</a></code> element</dt>
53947 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements, let <var title="">heading text</var> be the empty string.</p>
53950 all the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element children
53952 <a href=#rank>rank</a> and then in <a href=#tree-order>tree order</a> (so
53953 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>s first, then <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>s, etc, with each
53954 group in the order they appear in the document). Then, let <var title="">heading text</var> be the <code><a href=#textcontent>textContent</a></code> of
53957 text</var> be the <code><a href=#textcontent>textContent</a></code> of the second entry
53962 <dt>If <var title="">heading</var> is an <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element</dt>
53967 <code><a href=#textcontent>textContent</a></code> of <var title="">heading</var>.</p>
53975 <p>Append a <code title="">title</code> element in the <a href=#atom-namespace>Atom
53984 append a <code title="">subtitle</code> element in the <a href=#atom-namespace>Atom
53995 <p>For each <code><a href=#the-article-element>article</a></code> element <var title="">article</var> that does not have an ancestor
53996 <code><a href=#the-article-element>article</a></code> element, run the following steps:</p>
53998 href=#atom-namespace>Atom namespace</a>,
54002 <a href=#heading-content>heading content</a> whose nearest ancestor of
54003 <a href=#sectioning-content>sectioning content</a> is <var title="">article</var>,
54021 <dt>If <var title="">heading</var> is a <code><a href=#the-hgroup-element>hgroup</a></code> element</dt>
54026 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements, let <var title="">heading text</var> be the empty string.</p>
54029 of all the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element
54031 descending <a href=#rank>rank</a> and then in <a href=#tree-order>tree
54032 order</a> (so <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>s first, then
54033 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>s, etc, with each group in the order they
54035 text</var> be the <code><a href=#textcontent>textContent</a></code> of the first entry
54040 <dt>If <var title="">heading</var> is an <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> element</dt>
54045 <code><a href=#textcontent>textContent</a></code> of <var title="">heading</var>.</p>
54054 <a href=#atom-namespace>Atom namespace</a> to <var title="">E</var> whose
54065 environment that has <a href=#concept-bc-noscript title=concept-bc-noscript>scripting
54066 disabled</a>, has no <a href=#plugin title=plugin>plugins</a>, and
54067 fails any attempt to <a href=#fetch title=fetch>fetch</a> any
54069 resulting clone <code><a href=#the-article-element>article</a></code> element.</p>
54076 article</var> any <code><a href=#the-article-element>article</a></code> elements other than the
54078 <code><a href=#the-header-element>header</a></code>, <code><a href=#the-footer-element>footer</a></code>, or <code><a href=#the-nav-element>nav</a></code>
54079 elements whose nearest ancestor of <a href=#sectioning-content>sectioning
54081 the first element of <a href=#heading-content>heading content</a> whose nearest
54082 ancestor of <a href=#sectioning-content>sectioning content</a> is the <var title="">cloned article</var>, if any.</p>
54089 <code><a href=#the-ins-element>ins</a></code> or <code><a href=#the-del-element>del</a></code> elements with <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code> attributes whose
54090 values <a href=#parse-a-global-date-and-time-string title="parse a global date and time string">parse
54092 <var title="">update date</var> be the value of the <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code> attribute that parses
54093 to the newest <a href=#concept-datetime title=concept-datetime>global date and
54106 <p>If the document being converted is an <a href=#html-documents title="HTML
54108 be a <code title="">content</code> element in the <a href=#atom-namespace>Atom
54111 result of running the <a href=#html-fragment-serialization-algorithm>HTML fragment serialization
54114 <p>Otherwise, the document being converted is an <a href=#xml-documents title="XML documents">XML document</a>: Let <var title="">x</var> be a <code title="">content</code> element in
54115 the <a href=#atom-namespace>Atom namespace</a>. Add a <code title="">type</code> attribute whose value is the string "<code title="">xml</code>" to <var title="">x</var>. Append a
54116 <code><a href=#the-div-element>div</a></code> element to <var title="">x</var>. Move all the
54118 that <code><a href=#the-div-element>div</a></code> element, preserving their relative
54129 <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code> element with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute that
54130 successfully <a href=#resolve-a-url title="resolve a url">resolves</a>
54131 relative to that descendant and a <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute whose value
54132 includes the <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code>
54135 <dd>Let <var title="">id</var> be the <a href=#absolute-url>absolute URL</a>
54136 resulting from <a href=#resolve-a-url title="resolve a url">resolving</a> the
54137 value of the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
54138 attribute of the first such <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code>
54141 <dt>If the <var title="">article</var> node has an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute</dt>
54143 <dd>Let <var title="">id</var> be <a href="#the-document's-current-address">the document's current
54146 value of the <var title="">article</var> element's <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute. Let <var title="">has-alternate</var> be false.</dd>
54151 undereferenceable yet globally unique <a href=#valid-url title="valid
54152 URL">valid</a> <a href=#absolute-url>absolute URL</a>. The same
54153 <a href=#absolute-url>absolute URL</a> should be generated for each run of
54160 <p>Append an <code title="">id</code> element in the <a href=#atom-namespace>Atom
54169 <a href=#atom-namespace>Atom namespace</a>. Add a <code title="">rel</code>
54177 <p>If <var title="">article</var> has a <code><a href=#the-time-element>time</a></code>
54178 element descendant that has a <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code> attribute and whose
54179 nearest ancestor <code><a href=#the-article-element>article</a></code> element is <var title="">article</var>, and the first such element's <a href=#concept-time-date title=concept-time-date>date</a> is not unknown, then run
54183 <ol><li><p>Let <var title="">datetime</var> be a <a href=#concept-datetime title=concept-datetime>global date and time</a> whose date
54184 component is the <a href=#concept-time-date title=concept-time-date>date</a> of
54187 <li><p>If <var title="">e</var>'s <a href=#concept-time-time title=concept-time-time>time</a> and <a href=#concept-time-timezone title=concept-time-timezone>time-zone offset</a> are not
54189 time-zone offset components be the <a href=#concept-time-time title=concept-time-time>time</a> and <a href=#concept-time-timezone title=concept-time-timezone>time-zone offset</a> of <var title="">e</var>. Otherwise, let them be midnight and no offset
54193 <a href=#best-representation-of-the-global-date-and-time-string>best representation of the global date and time
54220 them both value a value that is a <a href=#valid-global-date-and-time-string>valid global date and
54221 time string</a> representing the <a href=#concept-datetime title=concept-datetime>global date and time</a> of the
54229 <a href=#atom-namespace>Atom namespace</a> to <var title="">E</var> whose
54237 <a href=#atom-namespace>Atom namespace</a> to <var title="">E</var> whose
54247 let it have a value that is a <a href=#valid-global-date-and-time-string>valid global date and time
54248 string</a> representing the <a href=#concept-datetime title=concept-datetime>global date and time</a> of the date
54249 and time of the <code><a href=#document>Document</a></code>'s source file's last
54258 <a href=#atom-namespace>Atom namespace</a> into the root element of <var title="">R</var> before the first <code title="">entry</code> in
54259 the <a href=#atom-namespace>Atom namespace</a> whose contents is a text node with
54299 <code><a href=#document>Document</a></code> objects are presented to the user.</p>
54302 a <a href=#browsing-context>browsing context</a>, as does an <code><a href=#the-iframe-element>iframe</a></code><span class=impl> or <code><a href=#frame>frame</a></code>s in a
54303 <code><a href=#frameset>frameset</a></code></span>.</p>
54305 <p>Each <a href=#browsing-context>browsing context</a> has a corresponding
54306 <code><a href=#windowproxy>WindowProxy</a></code> object.</p>
54308 <p>A <a href=#browsing-context>browsing context</a> has a <a href=#session-history>session
54309 history</a>, which lists the <code><a href=#document>Document</a></code> objects that
54310 that <a href=#browsing-context>browsing context</a> has presented, is presenting, or
54311 will present. At any time, one <code><a href=#document>Document</a></code> in each
54312 <a href=#browsing-context>browsing context</a> is designated the <dfn id=active-document>active
54315 <p>Each <code><a href=#document>Document</a></code> is associated with a
54316 <code><a href=#window>Window</a></code> object. A <a href=#browsing-context>browsing context</a>'s
54317 <code><a href=#windowproxy>WindowProxy</a></code> object forwards everything to the
54318 <a href=#browsing-context>browsing context</a>'s <a href=#active-document>active document</a>'s
54319 <code><a href=#window>Window</a></code> object.</p>
54322 <code><a href=#window>Window</a></code> object to the <code><a href=#document>Document</a></code> object. In
54323 href=#window>Window</a></code> can be reused for the
54324 presentation of a second <code><a href=#document>Document</a></code> in the same
54325 <a href=#browsing-context>browsing context</a>, such that the mapping is then
54326 2-to-1. This occurs when a <a href=#browsing-context>browsing context</a> is <a href=#navigate title=navigate>navigated</a> from the initial
54327 <code><a href=#about:blank>about:blank</a></code> <code><a href=#document>Document</a></code> to another, with
54328 <a href=#replacement-enabled>replacement enabled</a>.</p>
54330 <p class=note>A <code><a href=#document>Document</a></code> does not necessarily have a
54331 <a href=#browsing-context>browsing context</a> associated with it. In particular,
54335 <hr><p>A <a href=#browsing-context>browsing context</a> can have a <dfn id=creator-browsing-context>creator browsing
54336 context</dfn>, the <a href=#browsing-context>browsing context</a> that was
54337 responsible for its creation. If a <a href=#browsing-context>browsing context</a> has
54338 a <a href=#parent-browsing-context>parent browsing context</a>, then that is its
54339 <a href=#creator-browsing-context>creator browsing context</a>. Otherwise, if the
54340 <a href=#browsing-context>browsing context</a> has an <a href=#opener-browsing-context>opener browsing
54341 context</a>, then <em>that</em> is its <a href=#creator-browsing-context>creator browsing
54342 context</a>. Otherwise, the <a href=#browsing-context>browsing context</a> has no
54343 <a href=#creator-browsing-context>creator browsing context</a>.</p>
54345 <p>If a <a href=#browsing-context>browsing context</a> <var title="">A</var> has a
54346 <a href=#creator-browsing-context>creator browsing context</a>, then the
54347 <code><a href=#document>Document</a></code> that was the <a href=#active-document>active document</a> of
54348 that <a href=#creator-browsing-context>creator browsing context</a> at the time <var title="">A</var> was created is the <dfn id=creator-document>creator
54353 <p>When a <a href=#browsing-context>browsing context</a> is first created, it must be
54354 created with a single <code><a href=#document>Document</a></code> in its session history,
54355 whose <a href="#the-document's-address" title="the document's address">address</a> is
54356 <code><a href=#about:blank>about:blank</a></code>, which is marked as being an <a href=#html-documents title="HTML documents">HTML document</a>, and whose <a href="#document's-character-encoding" title="document's character encoding">character encoding</a> is
54357 UTF-8. The <code><a href=#document>Document</a></code> must have a single child
54358 <code><a href=#the-html-element-0>html</a></code> node, which itself has a single child
54359 <code><a href=#the-body-element-0>body</a></code> node.</p>
54361 <p class=note>If the <a href=#browsing-context>browsing context</a> is created
54363 navigation will have <a href=#replacement-enabled>replacement enabled</a>.</p>
54365 <p id=about-blank-origin>The <a href=#origin>origin</a> of the
54366 <code><a href=#about:blank>about:blank</a></code> <code><a href=#document>Document</a></code> is set when the
54367 <code><a href=#document>Document</a></code> is created. If the new <a href=#browsing-context>browsing
54368 context</a> has a <a href=#creator-browsing-context>creator browsing context</a>, then the
54369 <a href=#origin>origin</a> of the <code><a href=#about:blank>about:blank</a></code>
54370 <code><a href=#document>Document</a></code> is the <a href=#origin>origin</a> of the
54371 <a href=#creator-document>creator <code>Document</code></a>. Otherwise, the
54372 <a href=#origin>origin</a> of the <code><a href=#about:blank>about:blank</a></code>
54373 <code><a href=#document>Document</a></code> is a globally unique identifier assigned when
54374 the new <a href=#browsing-context>browsing context</a> is created.</p>
54381 <p>Certain elements (for example, <code><a href=#the-iframe-element>iframe</a></code> elements) can
54382 instantiate further <a href=#browsing-context title="browsing context">browsing
54385 <code><a href=#document>Document</a></code>s <var title="">D</var> that nests another
54393 a browsing context <var title="">A'</var> that is a <a href=#child-browsing-context>child
54396 context <var title="">P</var> that is a <a href=#child-browsing-context>child browsing
54397 context</a> of <var title="">A</var> and that is the <a href=#parent-browsing-context>parent
54400 <p>The browsing context with no <a href=#parent-browsing-context>parent browsing context</a>
54402 contexts <a href=#nested-browsing-context title="nested browsing context">nested</a> within
54406 <p>The transitive closure of <a href=#parent-browsing-context title="parent browsing
54407 context">parent browsing contexts</a> for a <a href=#nested-browsing-context>nested browsing
54412 <code><a href=#document>Document</a></code> <var title="">d</var> is the list returned by
54417 <li><p>For each <a href=#child-browsing-context>child browsing context</a> of <var title="">d</var> that is <a href=#browsing-context-nested-through title="browsing context nested
54418 through">nested through</a> an element that is <a href=#in-a-document title="in a
54419 document">in the <code>Document</code></a> <var title="">d</var>, in the <a href=#tree-order>tree order</a> of the elements of
54420 the elements nesting those <a href=#browsing-context title="browsing context">browsing
54422 <a href=#list-of-the-descendant-browsing-contexts>list of the descendant browsing contexts</a> of the
54423 <a href=#active-document>active document</a> of that <a href=#child-browsing-context>child browsing
54428 </ol><hr><p>A <code><a href=#document>Document</a></code> is said to be <dfn id=fully-active>fully active</dfn>
54429 when it is the <a href=#active-document>active document</a> of its <a href=#browsing-context>browsing
54430 context</a>, and either its browsing context is a <a href=#top-level-browsing-context>top-level
54431 browsing context</a>, or the <code><a href=#document>Document</a></code> <a href=#browsing-context-nested-through title="browsing context nested through">through which</a> that
54432 browsing context is <a href=#nested-browsing-context title="nested browsing
54433 context">nested</a> is itself <a href=#fully-active>fully active</a>.</p>
54435 <p>Because they are nested through an element, <a href=#child-browsing-context title="child
54437 a specific <code><a href=#document>Document</a></code> in their <a href=#parent-browsing-context>parent browsing
54439 <a href=#child-browsing-context title="child browsing context">child browsing contexts</a>
54440 of elements that are in <code><a href=#document>Document</a></code>s that are not
54441 themselves <a href=#fully-active>fully active</a>.</p>
54443 <p>A <a href=#nested-browsing-context>nested browsing context</a> can have a <a href=#seamless-browsing-context-flag>seamless
54445 <code><a href=#the-iframe-element>iframe</a></code> element with a <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code> attribute.</p>
54450 <dl class=domintro><dt><var title="">window</var> . <code title=dom-top><a href=#dom-top>top</a></code></dt>
54454 <p>Returns the <code><a href=#windowproxy>WindowProxy</a></code> for the <a href=#top-level-browsing-context>top-level browsing context</a>.</p>
54458 <dt><var title="">window</var> . <code title=dom-parent><a href=#dom-parent>parent</a></code></dt>
54462 <p>Returns the <code><a href=#windowproxy>WindowProxy</a></code> for the <a href=#parent-browsing-context>parent browsing context</a>.</p>
54466 <dt><var title="">window</var> . <code title=dom-frameElement><a href=#dom-frameelement>frameElement</a></code></dt>
54470 <p>Returns the <code><a href=#element>Element</a></code> for the <a href=#browsing-context-container>browsing context container</a>.</p>
54474 <p>Throws a <code><a href=#security_err>SECURITY_ERR</a></code> exception in cross-origin situations.</p>
54481 the <code><a href=#window>Window</a></code> object of a <code><a href=#document>Document</a></code> in a
54482 <a href=#browsing-context>browsing context</a> <var title="">b</var> must return the
54483 <code><a href=#windowproxy>WindowProxy</a></code> object of its <a href=#top-level-browsing-context>top-level browsing
54484 context</a> (which would be its own <code><a href=#windowproxy>WindowProxy</a></code>
54485 object if it was a <a href=#top-level-browsing-context>top-level browsing context</a>
54489 attribute on the <code><a href=#window>Window</a></code> object of a
54490 <code><a href=#document>Document</a></code> in a <a href=#browsing-context>browsing context</a> <var title="">b</var> must return the <code><a href=#windowproxy>WindowProxy</a></code> object of
54491 the <a href=#parent-browsing-context>parent browsing context</a>, if there is one (i.e. if
54492 <var title="">b</var> is a <a href=#child-browsing-context>child browsing context</a>), or
54493 the <code><a href=#windowproxy>WindowProxy</a></code> object of the <a href=#browsing-context>browsing
54495 is a <a href=#top-level-browsing-context>top-level browsing context</a>).</p>
54498 IDL attribute on the <code><a href=#window>Window</a></code> object of a
54499 <code><a href=#document>Document</a></code> <var title="">d</var>, on getting, must run
54502 <ol><li><p>If <var title="">d</var> is not a <code><a href=#document>Document</a></code> in a
54503 <a href=#child-browsing-context>child browsing context</a>, return null and abort these
54506 <li><p>If the <a href=#parent-browsing-context>parent browsing context</a>'s <a href=#active-document>active
54507 document</a> does not have the <a href=#same-origin title="same
54508 origin">same</a> <a href=#effective-script-origin>effective script origin</a> as the
54509 <a href=#entry-script>entry script</a>, then throw a <code><a href=#security_err>SECURITY_ERR</a></code>
54512 <li><p>Otherwise, return the <a href=#browsing-context-container>browsing context
54522 to a <a href=#top-level-browsing-context>top-level browsing context</a> without being nested
54524 contexts</dfn>. Auxiliary browsing contexts are always <a href=#top-level-browsing-context title="top-level browsing context">top-level browsing
54527 <p>An <a href=#auxiliary-browsing-context>auxiliary browsing context</a> has an <dfn id=opener-browsing-context>opener
54528 browsing context</dfn>, which is the <a href=#browsing-context>browsing context</a>
54529 from which the <a href=#auxiliary-browsing-context>auxiliary browsing context</a> was created,
54531 the <a href=#top-level-browsing-context>top-level browsing context</a> of the <a href=#opener-browsing-context>opener
54532 browsing context</a> when the <a href=#auxiliary-browsing-context>auxiliary browsing
54539 attribute on the <code><a href=#window>Window</a></code> object must return the
54540 <code><a href=#windowproxy>WindowProxy</a></code> object of the <a href=#browsing-context>browsing context</a>
54541 from which the current <a href=#browsing-context>browsing context</a> was created
54542 (its <a href=#opener-browsing-context>opener browsing context</a>), if there is one and it
54551 context">secondary browsing contexts</dfn>, which are <a href=#browsing-context title="browsing context">browsing contexts</a> that form part of
54559 <p id=security-1>A <a href=#browsing-context>browsing context</a> <var title="">A</var> is <dfn id=allowed-to-navigate>allowed to navigate</dfn> a second
54560 <a href=#browsing-context>browsing context</a> <var title="">B</var> if one of the
54563 <ul><li>Either the <a href=#origin>origin</a> of the <a href=#active-document>active
54564 document</a> of <var title="">A</var> is the <a href=#same-origin title="same
54565 origin">same</a> as the <a href=#origin>origin</a> of the <a href=#active-document>active
54568 <li>The browsing context <var title="">A</var> is a <a href=#nested-browsing-context>nested
54569 browsing context</a> and its <a href=#top-level-browsing-context>top-level browsing
54573 <a href=#auxiliary-browsing-context>auxiliary browsing context</a> and <var title="">A</var>
54574 is <a href=#allowed-to-navigate>allowed to navigate</a> <var title="">B</var>'s
54575 <a href=#opener-browsing-context>opener browsing context</a>, or</li>
54578 <a href
54579 <a href=#ancestor-browsing-context>ancestor browsing context</a> of <var title="">B</var>
54580 whose <a href=#active-document>active document</a> has the <a href=#same-origin title="same
54581 origin">same</a> <a href=#origin>origin</a> as the <a href=#active-document>active
54586 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> is a
54587 <a href=#top-level-browsing-context>top-level browsing context</a> or if all of its
54588 <code><a href=#document>Document</a></code>'s <a href=#ancestor-browsing-context title="ancestor browsing
54589 context">ancestor browsing contexts</a> all have <a href=#active-document title="active document">active documents</a> whose
54590 <a href=#origin>origin</a> are the <a href=#same-origin>same origin</a> as the
54591 element's <code><a href=#document>Document</a></code>'s <a href=#origin>origin</a>. If an element
54592 has a <a href=#browsing-context-scope-origin>browsing context scope origin</a>, then its value is
54593 the <a href=#origin>origin</a> of the element's <code><a href=#document>Document</a></code>.</p>
54602 <p>Each <a href=#browsing-context>browsing context</a> is defined as having a list of
54606 <ul><li>All the <a href=#browsing-context>browsing context</a>'s <a href=#child-browsing-context title="child
54609 <li>The <a href=#browsing-context>browsing context</a>'s <a href=#parent-browsing-context>parent browsing
54612 <li>All the <a href=#browsing-context title="browsing context">browsing contexts</a>
54613 that have the <a href=#browsing-context>browsing context</a> as their <a href=#opener-browsing-context>opener
54616 <li>The <a href=#browsing-context>browsing context</a>'s <a href=#opener-browsing-context>opener browsing
54619 </ul><p>The transitive closure of all the <a href=#browsing-context title="browsing
54620 context">browsing contexts</a> that are <a href=#directly-reachable-browsing-contexts>directly reachable
54624 <p>Each <a href=#unit-of-related-browsing-contexts>unit of related browsing contexts</a> is then
54626 member of each group has an <a href=#effective-script-origin>effective script origin</a>
54627 that, through appropriate manipulation of the <code title=dom-document-domain><a href=#dom-document-domain>document.domain</a></code> attribute, could
54632 <p>Each <a href=#unit-of-related-similar-origin-browsing-contexts>unit of related similar-origin browsing
54634 obtain, amongst other things, the <a href="#script's-base-url">script's base URL</a> to
54635 <a href=#resolve-a-url title="resolve a url">resolve</a> relative <a href=#url title=URL>URLs</a> used in scripts running in that <a href=#unit-of-related-similar-origin-browsing-contexts>unit
54637 is no <a href=#entry-script>entry script</a>.</p>
54639 <p class=note>There is at most one <a href=#event-loop>event loop</a> per
54640 <a href=#unit-of-related-similar-origin-browsing-contexts>unit of related similar-origin browsing contexts</a>.</p>
54657 that is either a <a href=#valid-browsing-context-name>valid browsing context name</a> or that is
54658 an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for one of: <code title="">_blank</code>, <code title="">_self</code>, <code title="">_parent</code>, or <code title="">_top</code>.</p>
54664 being applied in the context of a <a href=#browsing-context>browsing context</a>.</p>
54671 the <a href=#parent-browsing-context><em>parent</em> browsing context</a> of the current
54676 most <a href=#top-level-browsing-context>top-level browsing context</a> of the current
54682 <a href=#browsing-context-name title="browsing context name">name</a> is the same as the
54684 <a href=#allowed-to-navigate>allowed to navigate</a> that browsing context, and the
54701 the <a href=#sandboxed-navigation-browsing-context-flag>sandboxed navigation browsing context flag</a> set
54702 when its <a href=#active-document>active document</a> was created.</dt>
54704 <dd><p>The user agent may offer to create a new <a href=#top-level-browsing-context>top-level
54705 browsing context</a> or reuse an existing <a href=#top-level-browsing-context>top-level
54716 browsing context is being requested as part of <a href=#following-hyperlinks title="following hyperlinks">following a hyperlink</a> whose
54717 <a href=#linkTypes>link types</a> include the <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword</dt>
54719 <dd><p>A new <a href=#top-level-browsing-context>top-level browsing context</a> must be
54725 <p class=note>If it is immediately <a href=#navigate title=navigate>navigated</a>, then the navigation will be
54726 done with <a href=#replacement-enabled>replacement enabled</a>.</dd>
54730 instance it will create a new browsing context, and the <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword doesn't
54733 <dd><p>A new <a href=#auxiliary-browsing-context>auxiliary browsing context</a> must be
54734 created, with the <a href=#opener-browsing-context>opener browsing context</a> being the
54740 <p>If it is immediately <a href=#navigate title=navigate>navigated</a>,
54741 then the navigation will be done with <a href=#replacement-enabled>replacement
54768 <h3 id=the-window-object><span class=secno>6.2 </span>The <code><a href=#window>Window</a></code> object</h3>
54773 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-window title=dom-window>window</a>;
54774 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-self title=dom-self>self</a>;
54775 readonly attribute <a href=#document>Document</a> <a href=#dom-document title=dom-document>document</a>;
54776 attribute DOMString <a href=#dom-name title=dom-name>name</a>;
54777 [PutForwards=<a href=#dom-location-href title=dom-location-href>href</a>] readonly attribute <a href=#location>Location</a> <a href=#dom-location title=dom-location>location</a>;
54778 readonly attribute <a href=#history-0>History</a> <a href=#dom-history title=dom-history>history</a>;
54779 readonly attribute <a href=#undomanager>UndoManager</a> <a href=#dom-undomanager title=dom-undoManager>undoManager</a>;
54780 <a href=#selection-0>Selection</a> <a href=#dom-getselection title=dom-getSelection>getSelection</a>();
54781 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-locationbar title=dom-window-locationbar>locationbar</a>;
54782 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-menubar title=dom-window-menubar>menubar</a>;
54783 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-personalbar title=dom-window-personalbar>personalbar</a>;
54784 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-scrollbars title=dom-window-scrollbars>scrollbars</a>;
54785 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-statusbar title=dom-window-statusbar>statusbar</a>;
54786 [Replaceable] readonly attribute <a href=#barprop>BarProp</a> <a href=#dom-window-toolbar title=dom-window-toolbar>toolbar</a>;<!--
54788 void <a href=#dom-window-close title=dom-window-close>close</a>();
54789 void <a href=#dom-window-stop title=dom-window-stop>stop</a>();
54790 void <a href=#dom-window-focus title=dom-window-focus>focus</a>();
54791 void <a href=#dom-window-blur title=dom-window-blur>blur</a>();
54794 [Replaceable] readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-frames title=dom-frames>frames</a>;
54795 [Replaceable] readonly attribute unsigned long <a href=#dom-length title=dom-length>length</a>;
54796 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-top title=dom-top>top</a>;
54797 [Replaceable] readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-opener title=dom-opener>opener</a>;
54798 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-parent title=dom-parent>parent</a>;
54799 readonly attribute <a href=#element>Element</a> <a href=#dom-frameelement title=dom-frameElement>frameElement</a>;
54800 <a href=#windowproxy>WindowProxy</a> <a href=#dom-open title=dom-open>open</a>(in optional DOMString url, in optional DOMString target, in optional DOMString features, in optional DOMString replace);
54801 <a href=#dom-window-item title=dom-window-item>getter</a> <a href=#windowproxy>WindowProxy</a> (in unsigned long index);
54802 <a href=#dom-window-nameditem title=dom-window-namedItem>getter</a> any (in DOMString name);
54805 readonly attribute <a href=#navigator>Navigator</a> <a href=#dom-navigator title=dom-navigator>navigator</a>; <!-- IE also has window.clientInformation === window.navigator -->
54806 readonly attribute <a href=#applicationcache>ApplicationCache</a> <a href=#dom-applicationcache title=dom-applicationCache>applicationCache</a>;
54809 void <a href=#dom-alert title=dom-alert>alert</a>(in DOMString message);
54810 boolean <a href=#dom-confirm title=dom-confirm>confirm</a>(in DOMString message);
54811 DOMString <a href=#dom-prompt title=dom-prompt>prompt</a>(in DOMString message, in optional DOMString default);
54812 void <a href=#dom-print title=dom-print>print</a>();
54813 any <a href=#dom-showmodaldialog title=dom-showModalDialog>showModalDialog</a>(in DOMString url, in optional any argument<!--, in optional DOMString features-->);
54815 // <a href=#web-messaging>cross-document messaging</a>
54816 void <a href=#dom-window-postmessage title=dom-window-postMessage>postMessage</a>(in any message, in DOMString targetOrigin, in optional <a href=#messageportarray>MessagePortArray</a> ports);
54818 // <a href=#event-handler-idl-attributes>event handler IDL attributes</a>
54819 attribute <a href=#function>Function</a> <a href=#handler-onabort title=handler-onabort>onabort</a>;
54820 attribute <a href=#function>Function</a> <a href=#handler-window-onafterprint title=handler-window-onafterprint>onafterprint</a>;
54821 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeprint title=handler-window-onbeforeprint>onbeforeprint</a>;
54822 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeunload title=handler-window-onbeforeunload>onbeforeunload</a>;
54823 attribute <a href=#function>Function</a> <a href=#handler-window-onblur title=handler-window-onblur>onblur</a>;
54824 attribute <a href=#function>Function</a> <a href=#handler-oncanplay title=handler-oncanplay>oncanplay</a>;
54825 attribute <a href=#function>Function</a> <a href=#handler-oncanplaythrough title=handler-oncanplaythrough>oncanplaythrough</a>;
54826 attribute <a href=#function>Function</a> <a href=#handler-onchange title=handler-onchange>onchange</a>;
54827 attribute <a href=#function>Function</a> <a href=#handler-onclick title=handler-onclick>onclick</a>;
54828 attribute <a href=#function>Function</a> <a href
54829 attribute <a href=#function>Function</a> <a href=#handler-ondblclick title=handler-ondblclick>ondblclick</a>;
54830 attribute <a href=#function>Function</a> <a href=#handler-ondrag title=handler-ondrag>ondrag</a>;
54831 attribute <a href=#function>Function</a> <a href=#handler-ondragend title=handler-ondragend>ondragend</a>;
54832 attribute <a href=#function>Function</a> <a href=#handler-ondragenter title=handler-ondragenter>ondragenter</a>;
54833 attribute <a href=#function>Function</a> <a href=#handler-ondragleave title=handler-ondragleave>ondragleave</a>;
54834 attribute <a href=#function>Function</a> <a href=#handler-ondragover title=handler-ondragover>ondragover</a>;
54835 attribute <a href=#function>Function</a> <a href=#handler-ondragstart title=handler-ondragstart>ondragstart</a>;
54836 attribute <a href=#function>Function</a> <a href=#handler-ondrop title=handler-ondrop>ondrop</a>;
54837 attribute <a href=#function>Function</a> <a href=#handler-ondurationchange title=handler-ondurationchange>ondurationchange</a>;
54838 attribute <a href=#function>Function</a> <a href=#handler-onemptied title=handler-onemptied>onemptied</a>;
54839 attribute <a href=#function>Function</a> <a href=#handler-onended title=handler-onended>onended</a>;
54840 attribute <a href=#function>Function</a> <a href=#handler-window-onerror title=handler-window-onerror>onerror</a>;
54841 attribute <a href=#function>Function</a> <a href=#handler-window-onfocus title=handler-window-onfocus>onfocus</a>;
54842 attribute <a href=#function>Function</a> <a href=#handler-onformchange title=handler-onformchange>onformchange</a>;
54843 attribute <a href=#function>Function</a> <a href=#handler-onforminput title=handler-onforminput>onforminput</a>;
54844 attribute <a href=#function>Function</a> <a href=#handler-window-onhashchange title=handler-window-onhashchange>onhashchange</a>;
54845 attribute <a href=#function>Function</a> <a href=#handler-oninput title=handler-oninput>oninput</a>;
54846 attribute <a href=#function>Function</a> <a href=#handler-oninvalid title=handler-oninvalid>oninvalid</a>;
54847 attribute <a href=#function>Function</a> <a href=#handler-onkeydown title=handler-onkeydown>onkeydown</a>;
54848 attribute <a href=#function>Function</a> <a href=#handler-onkeypress title=handler-onkeypress>onkeypress</a>;
54849 attribute <a href=#function>Function</a> <a href=#handler-onkeyup title=handler-onkeyup>onkeyup</a>;
54850 attribute <a href=#function>Function</a> <a href=#handler-window-onload title=handler-window-onload>onload</a>;
54851 attribute <a href=#function>Function</a> <a href=#handler-onloadeddata title=handler-onloadeddata>onloadeddata</a>;
54852 attribute <a href=#function>Function</a> <a href=#handler-onloadedmetadata title=handler-onloadedmetadata>onloadedmetadata</a>;
54853 attribute <a href=#function>Function</a> <a href=#handler-onloadstart title=handler-onloadstart>onloadstart</a>;
54854 attribute <a href=#function>Function</a> <a href=#handler-window-onmessage title=handler-window-onmessage>onmessage</a>;
54855 attribute <a href=#function>Function</a> <a href=#handler-onmousedown title=handler-onmousedown>onmousedown</a>;
54856 attribute <a href=#function>Function</a> <a href=#handler-onmousemove title=handler-onmousemove>onmousemove</a>;
54857 attribute <a href=#function>Function</a> <a href=#handler-onmouseout title=handler-onmouseout>onmouseout</a>;
54858 attribute <a href=#function>Function</a> <a href=#handler-onmouseover title=handler-onmouseover>onmouseover</a>;
54859 attribute <a href=#function>Function</a> <a href=#handler-onmouseup title=handler-onmouseup>onmouseup</a>;
54860 attribute <a href=#function>Function</a> <a href=#handler-onmousewheel title=handler-onmousewheel>onmousewheel</a>;
54861 attribute <a href=#function>Function</a> <a href=#handler-window-onoffline title=handler-window-onoffline>onoffline</a>;
54862 attribute <a href=#function>Function</a> <a href=#handler-window-ononline title=handler-window-ononline>ononline</a>;
54863 attribute <a href=#function>Function</a> <a href=#handler-onpause title=handler-onpause>onpause</a>;
54864 attribute <a href=#function>Function</a> <a href=#handler-onplay title=handler-onplay>onplay</a>;
54865 attribute <a href=#function>Function</a> <a href=#handler-onplaying title=handler-onplaying>onplaying</a>;
54866 attribute <a href=#function>Function</a> <a href=#handler-window-onpagehide title=handler-window-onpagehide>onpagehide</a>;
54867 attribute <a href=#function>Function</a> <a href=#handler-window-onpageshow title=handler-window-onpageshow>onpageshow</a>;
54868 attribute <a href=#function>Function</a> <a href=#handler-window-onpopstate title=handler-window-onpopstate>onpopstate</a>;
54869 attribute <a href=#function>Function</a> <a href=#handler-onprogress title=handler-onprogress>onprogress</a>;
54870 attribute <a href=#function>Function</a> <a href=#handler-onratechange title=handler-onratechange>onratechange</a>;
54871 attribute <a href=#function>Function</a> <a href=#handler-onreadystatechange title=handler-onreadystatechange>onreadystatechange</a>;
54872 attribute <a href=#function>Function</a> <a href=#handler-window-onredo title=handler-window-onredo>onredo</a>;
54873 attribute <a href=#function>Function</a> <a href=#handler-window-onresize title=handler-window-onresize>onresize</a>;
54874 attribute <a href=#function>Function</a> <a href=#handler-onscroll title=handler-onscroll>onscroll</a>;
54875 attribute <a href=#function>Function</a> <a href=#handler-onseeked title=handler-onseeked>onseeked</a>;
54876 attribute <a href=#function>Function</a> <a href=#handler-onseeking title=handler-onseeking>onseeking</a>;
54877 attribute <a href=#function>Function</a> <a href=#handler-onselect title=handler-onselect>onselect</a>;
54878 attribute <a href=#function>Function</a> <a href=#handler-onshow title=handler-onshow>onshow</a>;
54879 attribute <a href=#function>Function</a> <a href=#handler-onstalled title=handler-onstalled>onstalled</a>;
54880 attribute <a href=#function>Function</a> <a href=#handler-window-onstorage title=handler-window-onstorage>onstorage</a>;
54881 attribute <a href=#function>Function</a> <a href=#handler-onsubmit title=handler-onsubmit>onsubmit</a>;
54882 attribute <a href=#function>Function</a> <a href=#handler-onsuspend title=handler-onsuspend>onsuspend</a>;
54883 attribute <a href=#function>Function</a> <a href=#handler-ontimeupdate title=handler-ontimeupdate>ontimeupdate</a>;
54884 attribute <a href=#function>Function</a> <a href=#handler-window-onundo title=handler-window-onundo>onundo</a>;
54885 attribute <a href=#function>Function</a> <a href=#handler-window-onunload title=handler-window-onunload>onunload</a>;
54886 attribute <a href=#function>Function</a> <a href=#handler-onvolumechange title=handler-onvolumechange>onvolumechange</a>;
54887 attribute <a href=#function>Function</a> <a href=#handler-onwaiting title=handler-onwaiting>onwaiting</a>;
54889 <a href=#window>Window</a> implements <a href=#eventtarget>EventTarget</a>;</pre>
54898 <dl class=domintro><dt><var title="">window</var> . <code title=dom-window><a href=#dom-window>window</a></code></dt>
54899 <dt><var title="">window</var> . <code title=dom-frames><a href=#dom-frames>frames</a></code></dt>
54900 <dt><var title="">window</var> . <code title=dom-self><a href=#dom-self>self</a></code></dt>
54909 <dt><var title="">window</var> . <code title=dom-document><a href=#dom-document>document</a></code></dt>
54913 <p>Returns the <a href=#active-document>active document</a>.</p>
54918 <dt><var title="">document</var> . <code title=dom-document-defaultView><a href=#dom-document-defaultview>defaultView</a></code></dt>
54922 <p>Returns the <code><a href=#window>Window</a></code> object of the <a href=#active-document>active document</a>.</p>
54929 return the <code><a href=#window>Window</a></code> object's <a href=#browsing-context>browsing
54930 context</a>'s <code><a href=#windowproxy>WindowProxy</a></code> object.</p>
54933 attribute must return the <code><a href=#document>Document</a></code> object of the
54934 <code><a href=#window>Window</a></code> object's <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing
54935 context</a>'s <a href=#active-document>active document</a>.</p>
54938 attribute of the <code><a href=#htmldocument>HTMLDocument</a></code> interface must return the
54939 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a>'s
54940 <code><a href=#windowproxy>WindowProxy</a></code> object.</p>
54950 <code><a href=#security_err>SECURITY_ERR</a></code> exception whenever any of the members of a
54951 <code><a href=#window>Window</a></code> object are accessed by scripts whose
54952 <a href=#effective-script-origin>effective script origin</a> is not the same as the
54953 <code><a href=#window>Window</a></code> object's <code><a href=#document>Document</a></code>'s <a href=#effective-script-origin>effective
54956 <ul><li>The <code title=dom-location><a href=#dom-location>location</a></code> object
54958 <li>The <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code> method
54960 <li>The <code title=dom-frames><a href=#dom-frames>frames</a></code> attribute
54962 <li>The <a href=#dynamic-nested-browsing-context-properties>dynamic nested browsing context properties</a>
54964 </ul><p>When a script whose <a href=#effective-script-origin>effective script origin</a> is not
54965 the same as the <code><a href=#window>Window</a></code> object's <code><a href=#document>Document</a></code>'s
54966 <a href=#effective-script-origin>effective script origin</a> attempts to access that
54967 <code><a href=#window>Window</a></code> object's methods or attributes, the user agent
54968 must act as if any changes to the <code><a href=#window>Window</a></code> object's
54972 each distinct <a href=#effective-script-origin>effective script origin</a> that is not the
54973 same as the <code><a href=#window>Window</a></code> object's <code><a href=#document>Document</a></code>'s
54974 <a href=#effective-script-origin>effective script origin</a> must be provided with a
54977 those that would be appropriate for scripts whose <a href="#script's-global-object">script's
54978 global object</a> is the <code><a href=#window>Window</a></code> object in
54983 <p>For instance, if two frames containing <code><a href=#document>Document</a></code>s
54984 from different <a href=#origin title=origin>origins</a> access the same
54985 <code><a href=#window>Window</a></code> object's <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code> method, they
54996 <dl class=domintro><dt><var title="">window</var> = <var title="">window</var> . <code title=dom-open><a href=#dom-open>open</a></code>( [ <var title="">url</var> [, <var title="">target</var> [, <var title="">features</var> [, <var title="">replace</var> ] ] ] ] )</dt>
55001 <code><a href=#about:blank>about:blank</a></code>), and returns it. The <var title="">target</var> argument gives the name of the new
55009 <dt><var title="">window</var> . <code title=dom-name><a href=#dom-name>name</a></code> [ = <var title="">value</var> ]</dt>
55019 <dt><var title="">window</var> . <code title=dom-window-close><a href=#dom-window-close>close</a></code>()</dt>
55027 <dt><var title="">window</var> . <code title=dom-window-stop><a href=#dom-window-stop>stop</a></code>()</dt>
55038 <code><a href=#window>Window</a></code> objects provides a mechanism for <a href=#navigate title=navigate>navigating</a> an existing <a href=#browsing-context>browsing
55039 context</a> or opening and navigating an <a href=#auxiliary-browsing-context>auxiliary browsing
55045 <a href=#valid-non-empty-url>valid non-empty URL</a> for a page to load in the browsing
55048 to "<code><a href=#about:blank>about:blank</a></code>". The argument must be <a href=#resolve-a-url title="resolve a url">resolved</a> to an <a href=#absolute-url>absolute
55049 URL</a> (or an error), relative to the <a href=#entry-script>entry
55050 script</a>'s <a href="#script's-base-url" title="script's base URL">base URL</a>,
55054 <a href=#browsing-context-name title="browsing context name">name</a> of the browsing
55055 context that is to be navigated. It must be a <a href=#valid-browsing-context-name-or-keyword>valid browsing
55064 whether or not the new page will <a href=#replacement-enabled title="replacement
55068 browsing context's <a href=#session-history>session history</a>). When three or
55073 <a href=#browsing-context>browsing context</a> to navigate by applying <a href
55076 name and the <a href=#browsing-context>browsing context</a> of the script as the
55083 clicks in that user agent on an element whose <code title=handler-onclick><a href=#handler-onclick>onclick</a></code> handler uses the <code title=dom-open><a href=#dom-open>window.open()</a></code> API to open a page in an
55088 <p>Then, the user agent must <a href=#navigate>navigate</a> the selected
55089 <a href=#browsing-context>browsing context</a> to the <a href=#absolute-url>absolute URL</a> (or
55090 error) obtained from <a href=#resolve-a-url title="resolve a url">resolving</a>
55092 is true, then <a href=#replacement-enabled title="replacement enabled">replacement must be
55094 <a href=#browsing-context>browsing context</a> was just created as part of
55095 <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a browsing
55096 context name</a>. The navigation must be done with the <a href="#script's-browsing-context" title="script's browsing context">browsing context</a> of the
55097 <a href=#entry-script>entry script</a> as the <a href=#source-browsing-context>source browsing
55100 <p>The method must return the <code><a href=#windowproxy>WindowProxy</a></code> object of the
55101 <a href=#browsing-context>browsing context</a> that was navigated, or null if no
55105 the <code><a href=#window>Window</a></code> object must, on getting, return the current
55106 name of the <a href=#browsing-context>browsing context</a>, and, on setting, set the
55107 name of the <a href=#browsing-context>browsing context</a> to the new value.</p>
55109 <p class=note>The name <a href=#resetBCName>gets reset</a> when
55113 method on <code><a href=#window>Window</a></code> objects should, if the corresponding
55114 <a href=#browsing-context>browsing context</a> <var title="">A</var> is an
55115 <a href=#auxiliary-browsing-context>auxiliary browsing context</a> that was created by a script
55116 (as opposed to by an action of the user), and if the <a href="#script's-browsing-context" title="script's browsing context">browsing context</a> of the
55117 <a href=#concept-script title=concept-script>script</a> that invokes the method
55118 is <a href=#allowed-to-navigate>allowed to navigate</a> the <a href=#browsing-context>browsing
55119 context</a> <var title="">A</var>, close the <a href=#browsing-context>browsing
55120 context</a> <var title="">A</var> (and may <a href=#a-browsing-context-is-discarded title="a
55124 on <code><a href=#window>Window</a></code> objects should, if there is an existing
55125 attempt to <a href=#navigate>navigate</a> the <a href=#browsing-context>browsing context</a>
55126 and that attempt is not currently running the <a href=#unload-a-document>unload a
55127 document</a> algorithm, cancel that <a href=#navigate title=navigate>navigation</a> and any associated instances of
55128 the <a href=#fetch title=fetch>fetch algorithm</a>. Otherwise, it must
55136 <dl class=domintro><dt><var title="">window</var> . <code title=dom-length><a href=#dom-length>length</a></code></dt>
55140 <p>Returns the number of <a href=#child-browsing-context title="child browsing
55149 <p>Returns the indicated <a href=#child-browsing-context>child browsing context</a>.</p>
55156 attribute on the <code><a href=#window>Window</a></code> interface must return the
55157 number of <a href=#child-browsing-context title="child browsing context">child browsing
55158 contexts</a> that are <a href=#browsing-context-nested-through title="browsing context nested
55159 through">nested through</a> elements that are <a href=#in-a-document title="in a
55161 <a href=#active-document>active document</a> of that <code><a href=#window>Window</a></code> object, if
55162 that <code><a href=#window>Window</a></code>'s <a href=#browsing-context>browsing context</a> shares the
55163 same <a href=#event-loop>event loop</a> as the <a href="#script's-browsing-context">script's browsing
55164 context</a> of the <a href=#entry-script>entry script</a> accessing the IDL
55170 the <code><a href=#window>Window</a></code> object at any instant are the numbers in the
55171 range 0 .. <span title=""><var title="">n</var>-1</span>, where <var title="">n</var> is the number returned by the <code title=dom-length><a href=#dom-length>length</a></code> IDL attribute. If <var title="">n</var> is zero then there are no <span>supported indexed
55174 <p>When a <code><a href=#window>Window</a></code> object is <dfn id=dom-window-item title=dom-window-item>indexed to retrieve an indexed
55176 the <code><a href=#windowproxy>WindowProxy</a></code> object of the <var title="">index</var>th <a href=#child-browsing-context>child browsing context</a> of the
55177 <code><a href=#document>Document</a></code> that is nested through an element that is
55178 <a href=#in-a-document title="in a document">in the <code>Document</code></a>,
55179 sorted in the <a href=#tree-order>tree order</a> of the elements nesting those
55180 <a href=#browsing-context title="browsing context">browsing contexts</a>.</p>
55189 <h4 id=named-access-on-the-window-object><span class=secno>6.2.4 </span>Named access on the <code><a href=#window>Window</a></code> object</h4>
55201 <p>The <code><a href=#window>Window</a></code> interface <span title="support named
55206 for all <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
55207 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
55208 <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, and
55209 <code><a href=#the-object-element>object</a></code> elements in the <a href=#active-document>active document</a>
55212 <li>the value of the <code title=attr-id><a href=#the-id-attribute>id</a></code> content
55213 attribute of any <a href=#html-elements title="HTML elements">HTML element</a> in
55214 the <a href=#active-document>active document</a> with an <code title=attr-id><a href=#the-id-attribute>id</a></code> content attribute.</li>
55222 <p>Let <var title="">elements</var> be the list of <a href=#dom-window-nameditem-filter title=dom-window-namedItem-filter>named elements</a> with the
55223 name <var title="">name</var> in the <a href=#active-document>active document</a>.
55233 <p>If <var title="">elements</var> contains an <code><a href=#the-iframe-element>iframe</a></code>
55234 element, then return the <code><a href=#windowproxy>WindowProxy</a></code> object of the
55235 <a href=#nested-browsing-context>nested browsing context</a> represented by the first such
55236 <code><a href=#the-iframe-element>iframe</a></code> element in <a href=#tree-order>tree order</a>, and abort
55250 <p>Otherwise return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
55251 <code><a href=#document>Document</a></code> node, whose filter matches only <a href=#dom-window-nameditem-filter title=dom-window-namedItem-filter>named elements</a> with
55261 <ul><li><code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-area-element>area</a></code>,
55262 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#frame>frame</a></code>,
55263 <code><a href=#frameset>frameset</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, or
55264 <code><a href=#the-object-element>object</a></code> elements that have a <code title=attr-name>name</code> content attribute whose value is <var title="">name</var>, or</li>
55266 <li><a href=#html-elements>HTML elements</a> elements that have an <code title=attr-id><a href=#the-id-attribute>id</a></code> content attribute whose value is <var title="">name</var>.</li>
55275 <p>A <a href=#browsing-context>browsing context</a> has a strong reference to each of
55276 its <code><a href=#document>Document</a></code>s and its <code><a href=#windowproxy>WindowProxy</a></code> object,
55277 and the user agent itself has a strong reference to its <a href=#top-level-browsing-context title="top-level browsing context">top-level browsing
55280 <p>A <code><a href=#document>Document</a></code> has a strong reference to its
55281 <code><a href=#window>Window</a></code> object.</p>
55283 <p class=note>A <code><a href=#window>Window</a></code> object <a href=#implied-strong-reference title="implied
55285 <code><a href=#document>Document</a></code> object through its <code title=dom-document><a href=#dom-document>document</a></code> attribute. Thus, references
55287 alive. Similarly, both <code><a href=#document>Document</a></code> and <code><a href=#window>Window</a></code>
55288 objects have <a href=#implied-strong-reference title="implied strong reference">implied strong
55289 references</a> to the <code><a href=#windowproxy>WindowProxy</a></code> object.</p>
55291 <p>Each <a href=#concept-script title=concept-script>script</a> has a strong
55292 reference to its <a href="#script's-browsing-context" title="script's browsing context">browsing
55293 context</a> and its <a href="#script's-document" title="script's
55296 <p>When a <a href=#browsing-context>browsing context</a> is to <dfn id=discard-a-document>discard a
55300 <ol><li><p>Set the <code><a href=#document>Document</a></code>'s <var title=concept-document-salvageable>salvageable</var> state to
55303 <li><p>Run any <a href=#unloading-document-cleanup-steps>unloading document cleanup steps</a> for
55304 the <code><a href=#document>Document</a></code> that are defined by this specification or
55307 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a>
55308 associated with the <code><a href=#document>Document</a></code> in any <a href=#task-source>task
55311 <li><p><a href=#a-browsing-context-is-discarded title="a browsing context is discarded">Discard</a>
55312 all the <a href=#child-browsing-context title="child browsing context">child browsing
55313 contexts</a> of the <code><a href=#document>Document</a></code>.</li>
55315 <li><p>Lose the strong reference from the <code><a href=#document>Document</a></code>'s
55316 <a href=#browsing-context>browsing context</a> to the
55317 <code><a href=#document>Document</a></code>.</li>
55319 </ol><p class=note>Whenever a <code><a href=#document>Document</a></code> object is <a href=#discard-a-document title="discard a Document">discarded</a>, it is also removed from
55320 the list of <span>the worker's <code><a href=#document>Document</a></code>s</span> of each
55321 worker whose list contains that <code><a href=#document>Document</a></code>.</p>
55325 the <a href=#browsing-context>browsing context</a> must be severed, and all the
55326 <code><a href=#document>Document</a></code> objects for all the entries in the
55327 <a href=#browsing-context>browsing context</a>'s session history must be <a href=#discard-a-document title="discard a document">discarded</a> as well.</p>
55329 <p>User agents may <a href=#a-browsing-context-is-discarded title="a browsing context is
55330 discarded">discard</a> <a href=#top-level-browsing-context title="top-level browsing
55333 containing one or more <a href=#top-level-browsing-context title="top-level browsing
55334 context">top-level browsing contexts</a>). Other <a href=#browsing-context title="browsing context">browsing contexts</a> must be discarded
55335 once their <code><a href=#windowproxy>WindowProxy</a></code> object is eligible for garbage
55348 <p>Each interface element is represented by a <code><a href=#barprop>BarProp</a></code>
55352 attribute boolean <a href=#dom-barprop-visible title=dom-BarProp-visible>visible</a>;
55355 href=#dom-window-locationbar>locationbar</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55360 <dt><var title="">window</var> . <code title=dom-window-menubar><a href=#dom-window-menubar>menubar</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55365 <dt><var title="">window</var> . <code title=dom-window-personalbar><a href=#dom-window-personalbar>personalbar</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55371 <dt><var title="">window</var> . <code title=dom-window-scrollbars><a href=#dom-window-scrollbars>scrollbars</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55376 <dt><var title="">window</var> . <code title=dom-window-statusbar><a href=#dom-window-statusbar>statusbar</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55381 <dt><var title="">window</var> . <code title=dom-window-toolbar><a href=#dom-window-toolbar>toolbar</a></code> . <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code></dt>
55394 <p>The following <code><a href=#barprop>BarProp</a></code> objects exist for each
55395 <code><a href=#document>Document</a></code> object in a <a href=#browsing-context>browsing
55399 act as if it was present and visible (i.e. its <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code> attribute must return
55405 that displays the <a href=#url>URL</a> of the <a href=#active-document>active
55429 (i.e. its <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code>
55438 (i.e. its <code title=dom-BarProp-visible><a href=#dom-barprop-visible>visible</a></code>
55442 attribute must return <a href=#the-location-bar-barprop-object>the location bar <code>BarProp</code>
55446 attribute must return <a href=#the-menu-bar-barprop-object>the menu bar <code>BarProp</code>
55450 attribute must return <a href=#the-personal-bar-barprop-object>the personal bar <code>BarProp</code>
55454 attribute must return <a href=#the-scrollbar-barprop-object>the scrollbar <code>BarProp</code>
55458 must return <a href=#the-status-bar-barprop-object>the status bar <code>BarProp</code>
55462 attribute must return <a href=#the-toolbar-barprop-object>the toolbar <code>BarProp</code>
55477 <h4 id=the-windowproxy-object><span class=secno>6.2.7 </span>The <code><a href=#windowproxy>WindowProxy</a></code> object</h4>
55480 <p>As mentioned earlier, each <a href=#browsing-context>browsing context</a> has a
55483 performed on the <code><a href=#window>Window</a></code> object of the <a href=#browsing-context>browsing
55484 context</a>'s <a href=#active-document>active document</a> instead. It is thus
55485 indistinguishable from that <code><a href=#window>Window</a></code> object in every way
55486 until the <a href=#browsing-context>browsing context</a> is navigated.</p>
55488 <p>There is no <code><a href=#windowproxy>WindowProxy</a></code> interface object.</p>
55490 <p class=note>The <code><a href=#windowproxy>WindowProxy</a></code> object allows scripts
55491 to act as if each <a href=#browsing-context>browsing context</a> had a single
55492 <code><a href=#window>Window</a></code> object, while still keeping separate
55493 <code><a href=#window>Window</a></code> objects for each <code><a href=#document>Document</a></code>.</p>
55498 set to the <code><a href=#windowproxy>WindowProxy</a></code> object returned by the <code title=dom-window><a href=#dom-window>window</a></code> accessor on the global object. All
55500 every respect, the <code><a href=#windowproxy>WindowProxy</a></code> object acts like the
55501 underlying <code><a href=#window>Window</a></code> object.</p>
55535 <p>The <a href=#origin>origin</a> and <a href=#effective-script-origin>effective script
55536 origin</a> of the <a href=#url>URL</a> is whatever is returned by
55539 <ol><li><p>Let <var title="">url</var> be the <a href=#url>URL</a> for
55540 which the <a href=#origin>origin</a> is being determined.</li>
55542 <li><p><a href=#parse-a-url title="parse a url">Parse</a> <var title="">url</var>.</li>
55548 for <a href=#url title=URL>URLs</a> that identify the same resource,
55553 or if <var title="">url</var> is not an <a href=#absolute-url>absolute
55557 <li><p>Let <var title="">scheme</var> be the <a href=#url-scheme title=url-scheme><scheme></a> component of <var title="">url</var>, <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>.</li>
55565 <li><p>Let <var title="">host</var> be the <a href=#url-host title=url-host><host></a> component of <var title="">url</var>.</li>
55577 identifier. <a href=#refsRFC3490>[RFC3490]</a></p>
55582 <var title="">host</var> <a href=#converted-to-ascii-lowercase title="converted to ASCII lowercase">to
55585 <li><p>If there is no <a href=#url-port title=url-port><port></a>
55588 let <var title="">port</var> be the <a href=#url-port title=url-port><port></a> component of <var title="">url</var>.</li>
55592 </ol><p>In addition, if the <a href=#url>URL</a> is in fact associated with
55593 a <code><a href=#document>Document</a></code> object that was created by parsing the
55594 resource obtained from fetching <a href=#url>URL</a>, and this was
55604 <p>The <a href=#origin>origin</a> and <a href=#effective-script-origin>effective script
55608 <dl class=switch><dt>If a script is in a <code><a href=#script>script</a></code> element</dt>
55610 <dd>The owner is the <code><a href=#document>Document</a></code> to which the
55611 <code><a href=#script>script</a></code> element belongs.</dd>
55614 <dt>If a script is in an <a href=#event-handler-content-attributes title="event handler content
55617 <dd>The owner is the <code><a href=#document>Document</a></code> to which the
55627 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> that was returned as the
55628 location of an HTTP redirect (<a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a> in
55631 <dd>The owner is the <a href=#url>URL</a> that redirected to the
55632 <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a>.</dd>
55635 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> in an attribute</dt>
55637 <dd>The owner is the <code><a href=#document>Document</a></code> of the element on
55641 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> in a style sheet</dt>
55643 <dd>The owner is the <a href=#url>URL</a> of the style sheet.</dd>
55646 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> to which a <a href=#browsing-context>browsing
55647 context</a> is being <a href=#navigate title=navigate>navigated</a>,
55651 <dd>The owner is the <code><a href=#document>Document</a></code> of the <a href=#browsing-context>browsing
55652 context</a>'s <a href=#active-document>active document</a>.</dd>
55655 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> to which a <a href=#browsing-context>browsing
55656 context</a> is being <a href=#navigate title=navigate>navigated</a>,
55659 <dd>The owner is the <code><a href=#document>Document</a></code> of the element
55660 (e.g. an <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code> element) that
55664 <dt>If a script is a <a href=#javascript-protocol title="javascript protocol"><code title="">javascript:</code> URL</a> to which a <a href=#browsing-context>browsing
55665 context</a> is being <a href=#navigate title=navigate>navigated</a>,
55670 </dl><p>The <a href=#origin>origin</a> of the script is then equal to the
55671 <a href=#origin>origin</a> of the owner, and the <a href=#effective-script-origin>effective script
55672 origin</a> of the script is equal to the <a href=#effective-script-origin>effective script
55677 <dt>For <code><a href=#document>Document</a></code> objects and images</dt>
55681 <dl class=switch><dt id=sandboxOrigin>If a <code><a href=#document>Document</a></code> is in a
55682 <a href=#browsing-context>browsing context</a> whose <a href=#sandboxed-origin-browsing-context-flag>sandboxed origin
55684 <code><a href=#document>Document</a></code> was created</dt>
55686 <dt>If a <code><a href=#document>Document</a></code> was generated from a resource
55687 href=#text/html-sandboxed>text/html-sandboxed</a></code></dt>
55689 <dd>The <a href=#origin>origin</a> is a globally unique identifier
55690 assigned when the <code><a href=#document>Document</a></code> is created.</dd>
55693 <dt>If a <code><a href=#document>Document</a></code> or image was returned by the
55696 <dd>The <a href=#origin>origin</a> is equal to the <span>XMLHttpRequest
55697 origin</span> of the <code>XMLHttpRequest</code> object. <a href=#refsXHR>[XHR]</a></dd>
55700 <dt>If a <code><a href=#document>Document</a></code> or image was generated from a
55701 <a href=#javascript-protocol title="javascript protocol"><code>javascript:</code>
55704 <dd>The <a href=#origin>origin</a> is equal to the <a href=#origin>origin</a>
55705 of the script of that <a href=#javascript-protocol title="javascript
55709 <dt>If a <code><a href=#document>Document</a></code> or image was served over the
55713 <dd>The <a href=#origin>origin</a> is the <a href=#origin>origin</a> of the
55714 <a href="#the-document's-address" title="the document's address">address</a> of the
55715 <code><a href=#document>Document</a></code> or the <a href=#url>URL</a> of the image, as
55719 <dt>If a <code><a href=#document>Document</a></code> or image was generated from a
55721 of an HTTP redirect (<a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a> in
55724 <dd>The <a href=#origin>origin</a> is the <a href=#origin>origin</a> of the
55725 <a href=#url>URL</a> that redirected to the <code title="">data:</code> URL.</dd>
55728 <dt>If a <code><a href=#document>Document</a></code> or image was generated from a
55730 <code><a href=#document>Document</a></code> or in a script</dt>
55732 <dd>The <a href=#origin>origin</a> is the <a href=#origin>origin</a> of the
55733 <code><a href=#document>Document</a></code> or script that initiated the <a href=#navigate title=navigate>navigation</a> to that <a href=#url>URL</a>.</dd>
55736 <dt>If a <code><a href=#document>Document</a></code> has the <a href="#the-document's-address" title="the
55738 "<code><a href=#about:blank>about:blank</a></code>"</dt>
55740 <dd>The <a href=#origin>origin</a> of the <code><a href=#document>Document</a></code> is <a href=#about-blank-origin>the <span>origin</span> it was
55744 <dt>If a <code><a href=#document>Document</a></code> is <a href=#an-iframe-srcdoc-document>an <code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> document</a></dt>
55746 <dd>The <a href=#origin>origin</a> of the <code><a href=#document>Document</a></code> is the
55747 <a href=#origin>origin</a> of the <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing
55748 context</a>'s <a href=#browsing-context-container>browsing context container</a>'s
55749 <code><a href=#document>Document</a></code>.</dd>
55752 <dt>If a <code><a href=#document>Document</a></code> or image was obtained in some
55754 the user, a <code><a href=#document>Document</a></code> created using the <code title=dom-DOMImplementation-createDocument><a href=#dom-domimplementation-createdocument>createDocument()</a></code>
55757 <dd>The <a href=#origin>origin</a> is a globally unique identifier
55758 assigned when the <code><a href=#document>Document</a></code> or image is created.</dd>
55760 </dl><p>When a <code><a href=#document>Document</a></code> is created, its <a href=#effective-script-origin>effective
55761 script origin</a> is initialized to the <a href=#origin>origin</a> of
55762 the <code><a href=#document>Document</a></code>. However, the <code title=dom-document-domain><a href=#dom-document-domain>document.domain</a></code> attribute can
55767 <dt>For <code><a href=#audio>audio</a></code> and <code><a href=#video>video</a></code> elements</dt>
55771 <p>If value of the <a href=#media-element>media element</a>'s <code title=dom-media-currentSrc><a href=#dom-media-currentsrc>currentSrc</a></code> attribute is the
55772 empty string, the <a href=#origin>origin</a> is the same as the
55773 <a href=#origin>origin</a> of the element's <code><a href=#document>Document</a></code>'s
55774 <a href=#origin>origin</a>.</p>
55776 <p>Otherwise, the <a href=#origin>origin</a> is equal to the
55777 <a href=#origin>origin</a> of the <a href=#absolute-url>absolute URL</a> given by the
55778 <a href=#media-element>media element</a>'s <code title=dom-media-currentSrc><a href=#dom-media-currentsrc>currentSrc</a></code> attribute.</p>
55784 <a href=#origin>origin</a>:</p>
55786 <ol><li><p>If the <a href=#origin>origin</a> in question is not a
55790 of the <a href=#origin>origin</a> tuple.</li>
55795 host part of the <a href=#origin>origin</a> tuple, and append the results
55797 STOP characters (.) — to <var title="">result</var>. <a href=#refsRFC3490>[RFC3490]</a></li>
55799 <li><p>If the port part of the <a href=#origin>origin</a> tuple gives a port
55801 the scheme part of the <a href=#origin>origin</a> tuple, then append a
55809 <a href=#origin>origin</a>:</p>
55811 <ol><li><p>If the <a href=#origin>origin</a> in question is not a
55815 of the <a href=#origin>origin</a> tuple.</li>
55822 <a href=#origin>origin</a> tuple, with both the AllowUnassigned and
55827 characters, then return the empty string and abort these steps. <a href=#refsRFC3490>[RFC3490]</a></p>
55831 <li><p>If the port part of the <a href=#origin>origin</a> tuple gives a port
55833 the scheme part of the <a href=#origin>origin</a> tuple, then append a
55839 </ol><p>Two <a href=#origin title=origin>origins</a> are said to be the
55842 <ol><li><p>Let <var title="">A</var> be the first <a href=#origin>origin</a>
55844 <a href=#origin>origin</a> being compared.</li>
55873 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-domain><a href=#dom-document-domain>domain</a></code> [ = <var title="">domain</var> ]</dt>
55880 <a href=#effective-script-origin>effective script origin</a> to allow pages on other
55889 attribute on <code><a href=#document>Document</a></code> objects must be initialized to
55890 <a href="#the-document's-domain">the document's domain</a>, if it has one, and the empty
55892 brackets from the host portion of the <a href=#url-host title=url-host><host></a> component must be omitted from
55898 <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception.</p>
55905 throw an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code> exception and abort these
55920 characters, then throw a <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort
55921 these steps. <a href=#refsRFC3490>[RFC3490]</a></p>
55928 current value of the <code title=dom-document-domain><a href=#dom-document-domain>document.domain</a></code> attribute, then
55934 <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort these steps.</p>
55942 throw a <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort these
55953 <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort these steps. <a href=#refsPSL>[PSL]</a></p>
55957 UseSTD3ASCIIRules flags set, in an <a href=#ascii-case-insensitive>ASCII
55958 case-insensitive</a> manner. <a href=#refsRFC3490>[RFC3490]</a></p>
55964 <li><p>Release the <a href=#storage-mutex>storage mutex</a>.</li>
55974 <p>Set the host part of the <a href=#effective-script-origin>effective script origin</a>
55975 tuple of the <code><a href=#document>Document</a></code> to <var title="">new
55982 <p>Set the port part of the <a href=#effective-script-origin>effective script origin</a>
55983 tuple of the <code><a href=#document>Document</a></code> to "manual override" (a value
55984 that, for the purposes of <a href=#same-origin title="same origin">comparing
55991 <code><a href=#document>Document</a></code> is the host part of the document's
55992 <a href=#origin>origin</a>, if that is a scheme/host/port tuple. If it
55997 <p class=note>The <code title=dom-document-domain><a href=#dom-document-domain>domain</a></code>
56001 <p class=warning>Do not use the <code title=dom-document-domain><a href=#dom-document-domain>document.domain</a></code> attribute when
56006 origins after the <code title=dom-document-domain><a href=#dom-document-domain>document.domain</a></code> attribute has
56015 <p>The sequence of <code><a href=#document>Document</a></code>s in a <a href=#browsing-context>browsing
56018 <p><code><a href=#history-0>History</a></code> objects provide a representation of the
56019 pages in the session history of <a href=#browsing-context title="browsing
56020 context">browsing contexts</a>. Each <a href=#browsing-context>browsing
56021 context</a>, including <a href=#nested-browsing-context title="nested browsing
56025 <p>Each <code><a href=#document>Document</a></code> object in a <a href=#browsing-context>browsing
56026 context</a>'s <a href=#session-history>session history</a> is associated with a
56027 unique instance of the <code><a href=#history-0>History</a></code> object, although they
56028 all must model the same underlying <a href=#session-history>session history</a>.</p>
56033 of the <code><a href=#window>Window</a></code> interface must return the object
56034 implementing the <code><a href=#history-0>History</a></code> interface for that
56035 <code><a href=#window>Window</a></code> object's <code><a href=#document>Document</a></code>.</p>
56039 <p><code><a href=#history-0>History</a></code> objects represent their <a href=#browsing-context>browsing
56040 context</a>'s session history as a flat list of <a href=#session-history-entry title="session history entry">session history entries</a>. Each
56042 <a href=#url>URL</a> or a <a href=#state-object>state object</a>, or both<span class=impl>, and may in addition have a title, a
56043 <code><a href=#document>Document</a></code> object, form data, a scroll position, and
56049 linear. See the <a href=#history-notes>notes below</a>.</p>
56053 <p class=note>Titles associated with <a href=#session-history-entry title="session history
56055 with the current <code><a href=#the-title-element-0>title</a></code> of the
56056 <code><a href=#document>Document</a></code>. The title of a <a href=#session-history-entry>session history
56061 <p>URLs without associated <a href=#state-object title="state object">state
56068 <p>Pages can <a href=#dom-history-pushstate title=dom-history-pushState>add</a> <a href=#state-object title="state object">state objects</a> between their entry in the
56069 session history and the next ("forward") entry. These are then <a href=#event-popstate title=event-popstate>returned to the script</a> when the user
56075 <p><a href=#state-object title="state object">State objects</a> are intended to
56077 description of the state in the <a href=#url>URL</a> so that in the
56079 would still need the parsing for handling <a href=#url title=URL>URLs</a> passed around by users, so it's only a minor
56082 <code><a href=#document>Document</a></code> instance and it would have to be reconstructed
56083 if a new <code><a href=#document>Document</a></code> were opened.</p>
56086 the precise coordinate from which a popup <code><a href=#the-div-element>div</a></code> was made
56090 based on the information in the <a href=#url>URL</a>, so that when going
56098 <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing
56099 context</a>. The <a href=#current-entry>current entry</a> is usually an entry
56100 for the <a href=#dom-location-href title=dom-location-href>location</a> of the
56101 <code><a href=#document>Document</a></code>. However, it can also be one of the entries
56102 for <a href=#state-object title="state object">state objects</a> added to the
56105 <p>Entries that consist of <a href=#state-object title="state object">state
56106 objects</a> share the same <code><a href=#document>Document</a></code> as the entry for
56110 share the same <code><a href=#document>Document</a></code>.</p>
56113 <code><a href=#document>Document</a></code> (and that are therefore merely different
56118 <p>User agents may <a href=#discard-a-document title="discard a Document">discard</a>
56119 the <code><a href=#document>Document</a></code> objects of entries other than the
56120 <a href=#current-entry>current entry</a> that are not referenced from any script,
56123 should discard <code><a href=#document>Document</a></code> objects and when they should
56126 <p>Entries that have had their <code><a href=#document>Document</a></code> objects
56130 entries that shared the same <code><a href=#document>Document</a></code> object with it
56136 <h4 id=the-history-interface><span class=secno>6.4.2 </span>The <code><a href=#history-0>History</a></code> interface</h4>
56139 readonly attribute long <a href=#dom-history-length title=dom-history-length>length</a>;
56140 void <a href=#dom-history-go title=dom-history-go>go</a>(in optional long delta);
56141 void <a href=#dom-history-back title=dom-history-back>back</a>();
56142 void <a href=#dom-history-forward title=dom-history-forward>forward</a>();
56143 void <a href=#dom-history-pushstate title=dom-history-pushState>pushState</a>(in any data, in DOMString title, in optional DOMString url);
56144 void <a href=#dom-history-replacestate title=dom-history-replaceState>replaceState</a>(in any data, in DOMString title, in optional DOMString url);
56147 <dl class=domintro><dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-length><a href=#dom-history-length>length</a></code></dt>
56151 <p>Returns the number of entries in the <a href=#joint-session-history>joint session history</a>.</p>
56155 <dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-go><a href=#dom-history-go>go</a></code>( [ <var title="">delta</var> ] )</dt>
56159 <p>Goes back or forward the specified number of steps in the <a href=#joint-session-history>joint session history</a>.</p>
56167 <dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-back><a href=#dom-history-back>back</a></code>()</dt>
56171 <p>Goes back one step in the <a href=#joint-session-history>joint session history</a>.</p>
56177 <dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-forward><a href=#dom-history-forward>forward</a></code>()</dt>
56181 <p>Goes forward one step in the <a href=#joint-session-history>joint session history</a>.</p>
56187 <dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState</a></code>(<var title="">data</var>, <var title="">title</var> [, <var title="">url</var> ] )</dt>
56195 <dt><var title="">window</var> . <code title=dom-history><a href=#dom-history>history</a></code> . <code title=dom-history-replaceState><a href=#dom-history-replacestate>replaceState</a></code>(<var title="">data</var>, <var title="">title</var> [, <var title="">url</var> ] )</dt>
56203 </dl><p>The <dfn id=joint-session-history>joint session history</dfn> of a <code><a href=#history-0>History</a></code>
56204 object is the union of all the <a href=#session-history title="session history">session
56205 histories</a> of all <a href=#browsing-context title="browsing context">browsing
56206 contexts</a> of all the <a href=#fully-active>fully active</a>
56207 <code><a href=#document>Document</a></code> objects that share the <code><a href=#history-0>History</a></code>
56208 object's <a href=#top-level-browsing-context>top-level browsing context</a>, with all the
56209 entries that are <a href=#current-entry title="current entry">current entries</a>
56210 in their respective <a href=#session-history title="session history">session
56211 histories</a> removed except for the <a href=#current-entry-of-the-joint-session-history>current entry of the
56215 entry that most recently became a <a href=#current-entry>current entry</a> in its
56216 <a href=#session-history>session history</a>.</p>
56218 <p>Entries in the <a href=#joint-session-history>joint session history</a> are ordered
56220 <a href=#session-history title="session history">session histories</a>. (Since all
56221 these <a href=#browsing-context title="browsing context">browsing contexts</a> by
56222 definition share an <a href=#event-loop>event loop</a>, there is always a
56223 well-defined sequential order in which their <a href=#session-history title="session
56232 attribute of the <code><a href=#history-0>History</a></code> interface must return the
56233 number of entries in the <a href=#joint-session-history>joint session history</a>.</p>
56239 agent must act as if the <code title=dom-location-reload><a href=#dom-location-reload>location.reload()</a></code> method was
56240 called instead. Otherwise, the user agent must <a href=#traverse-the-history-by-a-delta>traverse the
56245 method is invoked, the user agent must <a href=#traverse-the-history-by-a-delta>traverse the history by
56249 invoked, the user agent must <a href=#traverse-the-history-by-a-delta>traverse the history by a
56252 <p>To <dfn id=traverse-the-history-by-a-delta>traverse the history by a delta</dfn> <var title="">delta</var>, the user agent must <a href=#queue-a-task>queue a task</a>
56253 to run the following steps. The <a href=#task-source>task source</a> for the
56254 queued task is the <a href=#history-traversal-task-source>history traversal task source</a>.</p>
56259 <li><p>If the index of the <a href=#current-entry-of-the-joint-session-history>current entry of the joint session
56261 greater than or equal to the number of items in the <a href=#joint-session-history>joint
56265 <a href=#joint-session-history>joint session history</a> whose index is the sum of <var title="">delta</var> and the index of the <a href=#current-entry-of-the-joint-session-history>current entry of
56269 <a href=#browsing-context>browsing context</a> of the <var title="">specified
56275 <li><p><a href=#traverse-the-history>Traverse the history</a> of the <var title="">specified browsing context</var> to the <var title="">specified entry</var>.</p>
56277 </ol><p>When the user navigates through a <a href=#browsing-context>browsing context</a>,
56279 <a href=#traverse-the-history-by-a-delta>traverse the history by a delta</a> equivalent to the
56286 title, and optionally the <a href=#url>URL</a> of the <a href=#current-entry>current
56292 <ol><li><p>Let <var title="">clone data</var> be a <a href=#structured-clone>structured
56301 <ol><li><a href=#resolve-a-url title="resolve a url">Resolve</a> the value of the
56302 third argument, relative to the <a href=#entry-script>entry script</a>'s <a href="#script's-base-url" title="script's base URL">base URL</a>.</li>
56304 <li>If that fails, raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception
56307 <li>Compare the resulting <a href=#absolute-url>absolute URL</a> to <a href="#the-document's-address">the
56308 document's address</a>. If any part of these two <a href=#url title=URL>URLs</a> differ other than the <a href=#url-path title=url-path><path></a>, <a href=#url-query title=url-query><query></a>, and <a href=#url-fragment title=url-fragment><fragment></a> components, then
56309 raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort these
56312 <li>If the <a href=#origin>origin</a> of the resulting <a href=#absolute-url>absolute
56313 URL</a> is not the same as the <a href=#origin>origin</a> of the
56314 <a href=#entry-script>entry script</a>'s <a href="#script's-document" title="script's
56315 document">document</a>, and either the <a href=#url-path title=url-path><path></a> or <a href=#url-query title=url-query><query></a> components of the two
56316 <a href=#url title=URL>URLs</a> compared in the previous step
56317 differ, raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception and abort
56322 <a href=#url-path title=url-path><path></a> and <a href=#url-query title=url-query><query></a> components can only be the
56323 same if the URLs are both <a href=#hierarchical-url title="hierarchical
56330 <p>If the method invoked was the <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> method:</p>
56334 <p>Remove all the entries in the <a href
56335 <a href=#session-history>session history</a> after the <a href=#current-entry>current
56336 entry</a>. If the <a href=#current-entry>current entry</a> is the last
56340 <p class=note>This <a href=#history-notes>doesn't
56346 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a> queued
56347 by the <a href=#history-traversal-task-source>history traversal task source</a>.</li>
56350 <a href=#current-entry>current entry</a>, with <var title="">cloned data</var> as
56352 and, if the third argument is present, the <a href=#absolute-url>absolute
56354 <a href=#url>URL</a> of the entry.</li>
56356 <li><p>Update the <a href=#current-entry>current entry</a> to be the this newly
56359 </ol><p>Otherwise, if the method invoked was the <code title=dom-history-replaceState><a href=#dom-history-replacestate>replaceState()</a></code> method:</p>
56361 <ol><li><p>Update the <a href=#current-entry>current entry</a> in the session
56364 title, and, if the third argument is present, the <a href=#absolute-url>absolute
56366 entry's new <a href=#url>URL</a>.</li>
56372 <p>If the third argument is present, set <a href="#the-document's-current-address">the document's
56373 current address</a> to the <a href=#absolute-url>absolute URL</a> that was
56376 <p class=note>Since this is neither a <a href=#navigate title=navigate>navigation</a> of the <a href=#browsing-context>browsing
56377 context</a> nor a <a href=#traverse-the-history title="traverse the history">history
56378 traversal</a>, it does not cause a <code title=event-hashchange><a href=#event-hashchange>hashchange</a></code> event to be fired.</p>
56388 that <code><a href=#document>Document</a></code> object in the session history after
56409 <a href="?x=6">Advance to 6</a> or
56410 <a href="?x=4">retreat to 4</a>?
56422 <a href="?x=6" onclick="go(1)">Advance to 6</a> or
56423 <a href="?x=4" onclick="go(-1)">retreat to 4</a>?
56438 document.links[0].href = '?x=' + (currentPage+1);
56440 document.links[1].href = '?x=' + (currentPage-1);
56453 the <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> method
56462 <p>Applications might not use the same title for a <a href=#session-history-entry>session
56464 <code><a href=#the-title-element-0>title</a></code> element at that time. For example, here is a
56465 simple page that shows a block in the <code><a href=#the-title-element-0>title</a></code> element.
56493 <h4 id=the-location-interface><span class=secno>6.4.3 </span>The <code><a href=#location>Location</a></code> interface</h4>
56495 <p>Each <code><a href=#document>Document</a></code> object in a <a href=#browsing-context>browsing
56497 instance of a <code><a href=#location>Location</a></code> object.</p>
56499 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-location><a href=#dom-document-location>location</a></code> [ = <var title="">value</var> ]</dt>
56500 <dt><var title="">window</var> . <code title=dom-location><a href=#dom-location>location</a></code> [ = <var title="">value</var> ]</dt>
56504 <p>Returns a <code><a href=#location>Location</a></code> object with the current page's location.</p>
56513 of the <code><a href=#htmldocument>HTMLDocument</a></code> interface must return the
56514 <code><a href=#location>Location</a></code> object for that <code><a href=#document>Document</a></code> object,
56515 if it is in a <a href=#browsing-context>browsing context</a>, and null otherwise.</p>
56518 attribute of the <code><a href=#window>Window</a></code> interface must return the
56519 <code><a href=#location>Location</a></code> object for that <code><a href=#window>Window</a></code> object's
56520 <code><a href=#document>Document</a></code>.</p>
56524 <p><code><a href=#location>Location</a></code> objects provide a representation of <a href="#the-document's-current-address" title="the document's current address">their document's current
56525 address</a>, and allow the <a href=#current-entry>current entry</a> of the
56526 <a href=#browsing-context>browsing context</a>'s session history to be changed, by
56527 adding or replacing entries in the <code title=dom-history><a href=#dom-history>history</a></code> object.</p>
56530 stringifier attribute DOMString <a href=#dom-location-href title=dom-location-href>href</a>;
56531 void <a href=#dom-location-assign title=dom-location-assign>assign</a>(in DOMString url);
56532 void <a href=#dom-location-replace title=dom-location-replace>replace</a>(in DOMString url);
56533 void <a href=#dom-location-reload title=dom-location-reload>reload</a>();
56535 // <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a> <!-- blame brendan for these "innovative" names -->
56536 attribute DOMString <a href=#dom-location-protocol title=dom-location-protocol>protocol</a>;
56537 attribute DOMString <a href=#dom-location-host title=dom-location-host>host</a>;
56538 attribute DOMString <a href=#dom-location-hostname title=dom-location-hostname>hostname</a>;
56539 attribute DOMString <a href=#dom-location-port title=dom-location-port>port</a>;
56540 attribute DOMString <a href=#dom-location-pathname title=dom-location-pathname>pathname</a>;
56541 attribute DOMString <a href=#dom-location-search title=dom-location-search>search</a>;
56542 attribute DOMString <a href=#dom-location-hash title=dom-location-hash>hash</a>;
56545 DOMString <a href=#dom-location-resolveurl title=dom-location-resolveURL>resolveURL</a>(in DOMString url);
56548 <dl class=domintro><dt><var title="">location</var> . <code title=dom-location-href><a href=#dom-location-href>href</a></code> [ = <var title="">value</var> ]</dt>
56558 <dt><var title="">location</var> . <code title=dom-location-assign><a href=#dom-location-assign>assign</a></code>(<var title="">url</var>)</dt>
56566 <dt><var title="">location</var> . <code title=dom-location-replace><a href=#dom-location-replace>replace</a></code>(<var title="">url</var>)</dt>
56574 <dt><var title="">location</var> . <code title=dom-location-reload><a href=#dom-location-reload>reload</a></code>()</dt>
56582 <dt><var title="">url</var> = <var title="">location</var> . <code title=dom-location-resolveURL><a href=#dom-location-resolveurl>resolveURL</a></code>(<var title="">url</var>)</dt>
56592 <p>The <dfn id=dom-location-href title=dom-location-href><code>href</code></dfn>
56593 attribute must return <a href="#the-document's-current-address" title="the document's current
56595 <code><a href=#document>Document</a></code> object, as an <a href=#absolute-url>absolute URL</a>.</p>
56606 must act as if the <code title=dom-location-assign><a href=#dom-location-assign>assign()</a></code>
56614 <a href=#resolve-a-url title="resolve a url">resolve</a> the argument, relative to
56615 the <a href=#entry-script>entry script</a>'s <a href="#script's-base-url" title="script's base URL">base
56616 URL</a>, and if that is successful, must <a href=#navigate>navigate</a>
56617 the <a href=#browsing-context>browsing context</a> to the specified <var title="">url</var>. If the <a href=#browsing-context>browsing context</a>'s
56618 <a href=#session-history>session history</a> contains only one
56619 <code><a href=#document>Document</a></code>, and that was the <code><a href=#about:blank>about:blank</a></code>
56620 <code><a href=#document>Document</a></code> created when the <a href=#browsing-context>browsing context</a>
56622 <a href=#replacement-enabled>replacement enabled</a>.</p> <!-- READ ME WHEN EDITING
56629 <a href=#resolve-a-url title="resolve a url">resolve</a> the argument, relative to
56630 the <a href=#entry-script>entry script</a>'s <a href="#script's-base-url" title="script's base URL">base
56631 URL</a>, and if that is successful, <a href=#navigate>navigate</a> the
56632 <a href=#browsing-context>browsing context</a> to the specified <var title="">url</var> with <a href=#replacement-enabled>replacement enabled</a>.</p>
56634 <p>Navigation for the <code title=dom-location-assign><a href=#dom-location-assign>assign()</a></code> and <code title=dom-location-replace><a href=#dom-location-replace>replace()</a></code> methods must be done
56635 with the <a href="#script's-browsing-context" title="script's browsing context">browsing
56637 <a href=#source-browsing-context>source browsing context</a>.</p>
56639 <p>If the <a href=#resolve-a-url title="resolve a url">resolving</a> step of the
56640 <code title=dom-location-assign><a href=#dom-location-assign>assign()</a></code> and <code title=dom-location-replace><a href=#dom-location-replace>replace()</a></code> methods is not
56642 <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception.</p>
56648 <dl class=switch><dt>If the currently executing <a href=#concept-task title=concept-task>task</a> is the dispatch of a <code title=event-resize>resize</code> event in response to the user
56649 resizing the <a href=#browsing-context>browsing context</a></dt>
56651 <dd><p>Repaint the <a href=#browsing-context>browsing context</a> and abort these
56657 <dd><p><a href=#navigate>Navigate</a> the <a href=#browsing-context>browsing context</a> to
56658 <a href="#the-document's-current-address">the document's current address</a> with
56659 <a href=#replacement-enabled>replacement enabled</a>. The <a href=#source-browsing-context>source browsing
56660 context</a> must be the <a href=#browsing-context>browsing context</a> being
56667 user interface element, the user agent should <a href=#navigate>navigate</a>
56668 the <a href=#browsing-context>browsing context</a> to the same resource as
56669 <code><a href=#document>Document</a></code>, with <a href=#replacement-enabled>replacement enabled</a>. In the
56678 <p>The <code><a href=#location>Location</a></code> interface also has the complement of
56679 <a href=#url-decomposition-idl-attributes>URL decomposition IDL attributes</a>, <dfn id=dom-location-protocol title=dom-location-protocol><code>protocol</code></dfn>, <dfn id=dom-location-host title=dom-location-host><code>host</code></dfn>, <dfn id=dom-location-port title=dom-location-port><code>port</code></dfn>, <dfn id=dom-location-hostname title=dom-location-hostname><code>hostname</code></dfn>, <dfn id=dom-location-pathname title=dom-location-pathname><code>pathname</code></dfn>, <dfn id=dom-location-search title=dom-location-search><code>search</code></dfn>, and <dfn id=dom-location-hash title=dom-location-hash><code>hash</code></dfn>. <span class=impl>These must follow the rules given for URL decomposition IDL
56680 attributes, with the <a href=#concept-uda-input title=concept-uda-input>input</a>
56681 being <a href="#the-document's-current-address" title="the document's current address">the current
56682 address</a> of the associated <code><a href=#document>Document</a></code> object, as an
56683 <a href=#absolute-url>absolute URL</a> (same as the <code title=dom-location-href><a href=#dom-location-href>href</a></code> attribute), and the <a href=#concept-uda-setter title=concept-uda-setter>common setter action</a> being the
56684 same as setting the <code title=dom-location-href><a href=#dom-location-href>href</a></code>
56689 <hr><p>The <dfn id=dom-location-resolveurl title=dom-location-resolveURL><code>resolveURL(<var title="">url</var>)</code></dfn> method must <a href=#resolve-a-url title="resolve a
56691 to the <a href=#entry-script>entry script</a>'s <a href="#script's-base-url" title="script's base
56693 <a href=#absolute-url>absolute URL</a>. If it fails, it must throw a
56694 <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception instead.</p>
56704 <code><a href=#security_err>SECURITY_ERR</a></code> exception whenever any of the members of a
56705 <code><a href=#location>Location</a></code> object are accessed by scripts whose
56706 <a href=#effective-script-origin>effective script origin</a> is not the <a href=#same-origin title="same
56707 origin">same</a> as the <code><a href=#location>Location</a></code> object's associated
56708 <code><a href=#document>Document</a></code>'s <a href=#effective-script-origin>effective script origin</a>, with
56711 <ul><li>The <code title=dom-location-href><a href=#dom-location-href>href</a></code> setter, if the
56712 script is running in a <a href=#browsing-context>browsing context</a> that is
56713 <a href=#allowed-to-navigate>allowed to navigate</a> the browsing context with which
56714 the <code><a href=#location>Location</a></code> object is associated
56716 <li>The <code title=dom-location-replace><a href=#dom-location-replace>replace()</a></code> method,
56717 if the script is running in a <a href=#browsing-context>browsing context</a> that is
56718 <a href=#allowed-to-navigate>allowed to navigate</a> the browsing context with which
56719 the <code><a href=#location>Location</a></code> object is associated
56731 <p>The <code><a href=#history-0>History</a></code> interface is not meant to place
56738 <code title=dom-history><a href=#dom-history>history</a></code> object are derived from the
56741 <p>Similarly, a page containing two <code><a href=#the-iframe-element>iframe</a></code>s has a <code title=dom-history><a href=#dom-history>history</a></code> object distinct from the
56742 <code><a href=#the-iframe-element>iframe</a></code>s' <code title=dom-history><a href=#dom-history>history</a></code>
56749 <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code>, the UA
56758 <p>In addition, a user agent could ignore calls to <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> that are invoked on
56771 <p>Certain actions cause the <a href=#browsing-context>browsing context</a> to
56772 <i><a href=#navigate>navigate</a></i> to a new resource. Navigation always involves
56776 <p class=example>For example, <a href=#following-hyperlinks title="following
56777 hyperlinks">following a hyperlink</a>, <a href=#concept-form-submit title=concept-form-submit>form submission</a>, and the <code title=dom-open><a href=#dom-open>window.open()</a></code> and <code title=dom-location-assign><a href=#dom-location-assign>location.assign()</a></code> methods can all
56788 <ol><li><p>Release the <a href=#storage-mutex>storage mutex</a>.</li>
56792 <p>If the <a href=#source-browsing-context>source browsing context</a> is not the same as
56793 the <a href=#browsing-context>browsing context</a> being navigated, and the
56794 <a href=#source-browsing-context>source browsing context</a> is not one of the <a href=#ancestor-browsing-context title="ancestor browsing context">ancestor browsing
56795 contexts</a> of the <a href=#browsing-context>browsing context</a> being
56796 navigated, and the <a href=#browsing-context>browsing context</a> being navigated is
56797 not both a <a href=#top-level-browsing-context>top-level browsing context</a> and one of the
56798 <a href=#ancestor-browsing-context title="ancestor browsing context">ancestor browsing
56799 contexts</a> of the <a href=#source-browsing-context>source browsing context</a>, and
56800 the <a href=#source-browsing-context>source browsing context</a> had its <a href=#sandboxed-navigation-browsing-context-flag>sandboxed
56801 navigation browsing context flag</a> set when its <a href=#active-document>active
56804 <p>Otherwise, if the <a href=#browsing-context>browsing context</a> being navigated
56805 is a <a href=#top-level-browsing-context>top-level browsing context</a>, and is one of the
56806 <a href=#ancestor-browsing-context title="ancestor browsing context">ancestor browsing
56807 contexts</a> of the <a href=#source-browsing-context>source browsing context</a>, and
56808 the <a href=#source-browsing-context>source browsing context</a> had its <a href=#sandboxed-top-level-navigation-browsing-context-flag>sandboxed
56810 <a href=#active-document>active document</a> was created, then abort these
56814 the new resource in a new <a href=#top-level-browsing-context>top-level browsing context</a>
56815 or in the <a href=#top-level-browsing-context>top-level browsing context</a> of the
56816 <a href=#source-browsing-context>source browsing context</a>, at the user's option, in
56817 which case the user agent must <a href=#navigate>navigate</a> that
56818 designated <a href=#top-level-browsing-context>top-level browsing context</a> to the new
56823 <li id=seamlessLinks><p>If the <a href=#source-browsing-context>source browsing
56824 context</a> is the same as the <a href=#browsing-context>browsing context</a>
56825 being navigated, and this browsing context has its <a href=#seamless-browsing-context-flag>seamless
56827 <a href=#ancestor-browsing-context>ancestor browsing context</a> that does not have its
56828 <a href=#seamless-browsing-context-flag>seamless browsing context flag</a> set, and continue these
56829 steps as if <em>that</em> <a href=#browsing-context>browsing context</a> was the one
56830 that was going to be <a href=#navigate title=navigate>navigated</a>
56834 <a href=#browsing-context>browsing context</a>, and the <a href=#source-browsing-context>source browsing
56835 context</a> is the same as the <a href=#browsing-context>browsing context</a>
56837 running the <a href=#unload-a-document>unload a document</a> algorithm, and the
56838 <a href=#origin>origin</a> of the <a href=#url>URL</a> of the resource being
56839 loaded in that navigation is not the <a href=#same-origin>same origin</a> as
56840 the <a href=#origin>origin</a> of the <a href=#url>URL</a> of the resource
56843 <a href=#browsing-context>browsing context</a>.</li>
56847 <a href=#browsing-context>browsing context</a>, and either that attempt has not yet
56848 <a href=#concept-navigate-mature title=concept-navigate-mature>matured</a> (i.e. it has
56849 not passed the point of making its <code><a href=#document>Document</a></code> the
56850 <a href=#active-document>active document</a>), or that navigation's resource is not
56851 to be fetched using HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or equivalent</a>, or its
56852 resource's <a href=#absolute-url>absolute URL</a> differs from this attempt's by
56853 more than the presence, absence, or value of the <a href=#url-fragment title=url-fragment><fragment></a> component, then cancel
56854 that preexisting attempt to navigate the <a href=#browsing-context>browsing
56858 the <a href=#absolute-url>absolute URL</a> of the new resource is the same as
56859 the <a href="#the-document's-address" title="the document's address">address</a> of the
56860 <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing context</a>
56861 being navigated, ignoring any <a href=#url-fragment title=url-fragment><fragment></a> components of those
56862 <a href=#url title=URL>URLs</a>, and the new resource is to be
56863 fetched using HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
56864 equivalent</a>, and the <a href=#absolute-url>absolute URL</a> of the new
56865 resource has a <a href=#url-fragment title=url-fragment><fragment></a>
56866 component (even if it is empty), then <a href=#scroll-to-fragid title=navigate-fragid>navigate to that fragment identifier</a>
56870 <a href=#browsing-context>browsing context</a>.</li>
56878 <li><p><a href=#prompt-to-unload-a-document title="prompt to unload a document">Prompt to
56879 unload</a> the <code><a href=#document>Document</a></code> object. If the user
56880 <a href=#refused-to-allow-the-document-to-be-unloaded>refused to allow the document to be unloaded</a>, then
56888 allow the user to select <a href=#dom-navigator-registerprotocolhandler title=dom-navigator-registerProtocolHandler>a registered
56889 handler</a> for the given scheme, then <a href=#read-ua-inline title=navigate-ua-inline>display the inline content</a> and
56900 <p>If the new resource is to be fetched using HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or equivalent</a>, then
56901 check if there are any <a href=#relevant-application-cache title="relevant application
56903 URL with the <a href=#same-origin>same origin</a> as the URL in question, and
56905 marked as <a href=#concept-appcache-foreign title=concept-appcache-foreign>foreign</a>. If so, then the
56906 user agent must then get the resource from the <a href=#concept-appcache-selection title=concept-appcache-selection>most appropriate application
56922 obtained by <object>, for instance -->, <a href=#fetch>fetch</a> the new
56926 <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>equivalent to</a>
56928 <a href=#navigate title=navigate>navigation algorithm</a> was invoked as
56929 a result of the <a href=#concept-form-submit title=concept-form-submit>form submission
56930 algorithm</a>, then the <a href=#fetch title=fetch>fetching
56931 algorithm</a> must be invoked from the <a href=#origin>origin</a> of
56932 the <a href=#active-document>active document</a> of the <a href=#source-browsing-context>source browsing
56936 <p>If the <a href=#browsing-context>browsing context</a> being navigated is a
56937 <a href=#child-browsing-context>child browsing context</a> for an <code><a href=#the-iframe-element>iframe</a></code> or
56938 <code><a href=#the-object-element>object</a></code> element, then the <a href=#fetch title=fetch>fetching
56939 algorithm</a> must be invoked from the <code><a href=#the-iframe-element>iframe</a></code> or
56940 <code><a href=#the-object-element>object</a></code> element's <a href=#browsing-context-scope-origin>browsing context scope
56958 <a href=#url>URL</a> of the target of the redirect has the <a href=#same-origin>same
56961 return to <a href=#navigate-fragid-step>the step labeled
56965 the <a href=#url>URL</a> of the target of the redirect does not have
56966 the <a href=#same-origin>same origin</a> as the original resource and the
56981 <p>If the resource was not fetched from an <a href=#application-cache>application
56982 cache</a>, and was to be fetched using HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or equivalent</a>, and its
56983 URL <a href=#concept-appcache-matches-fallback title=concept-appcache-matches-fallback>matches the
56984 fallback namespace</a> of one or more <a href=#relevant-application-cache title="relevant
56988 a 4xx or 5xx status code <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>, or
56995 <p>Let <var title="">candidate</var> be the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback resource</a>
56996 specified for the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a> in
56998 must use the fallback of the <a href=#concept-appcache-selection title=concept-appcache-selection>most appropriate application
57001 <p>If <var title="">candidate</var> is not marked as <a href=#concept-appcache-foreign title=concept-appcache-foreign>foreign</a>, then the user
57004 resource. <a href="#the-document's-address">The document's address</a>, if appropriate,
57013 not counting any <a href=#content-type title=Content-Type>type information</a>
57048 <li><p>Let <var title="">type</var> be <a href=#content-type-sniffing-0 title="Content-Type
57053 than rendering the content in a <a href=#browsing-context>browsing context</a>, then
57058 <dl class=switch><!-- an <span>HTML MIME type</span> --><dt>"<code><a href=#text/html>text/html</a></code>"</dt>
57059 <dt>"<code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>"</dt>
57060 <dd>Follow the steps given in the <a href=#read-html title=navigate-html>HTML document</a> section, and abort
57067 <dd>Follow the steps given in the <a href=#read-xml title=navigate-xml>XML
57074 <dd>Follow the steps given in the <a href=#read-text title=navigate-text>plain text file</a> section, and abort
57078 <dd>Follow the steps given in the <a href=#read-image title=navigate-image>image</a> section, and abort these
57082 content in the <a href=#browsing-context>browsing context</a></dt>
57083 <dd>Follow the steps given in the <a href=#read-plugin title=navigate-plugin>plugin</a> section, and abort these
57088 <code><a href=#document>Document</a></code> created by these steps must have its <a href="#the-document's-address" title="the document's address">address</a> set to the
57089 <a href=#url>URL</a> that was originally to be <a href=#fetch title=fetch>fetched</a>, ignoring any other data that was
57091 POST submission is not part of <a href="#the-document's-address">the document's
57094 found to match a <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback
57095 namespace</a>). However, if there <em>is</em> an <a href=#override-url>override
57096 URL</a>, then any <code><a href=#document>Document</a></code> created by these steps
57097 must have its <a href="#the-document's-address" title="the document's address">address</a>
57098 set to that <a href=#url>URL</a> instead.</p>
57100 <p class=note>An <a href=#override-url title="override URL">override URL</a>
57101 is set when <a href=#concept-js-deref title=concept-js-deref>dereferencing a
57105 <code>Document</code> object</dfn>: When a <code><a href=#document>Document</a></code>
57106 is created as part of the above steps, a new <code><a href=#window>Window</a></code>
57108 <code><a href=#document>Document</a></code>, with one exception: if the <a href=#browsing-context>browsing
57109 context</a>'s only entry in its <a href=#session-history>session history</a> is
57110 the <code><a href=#about:blank>about:blank</a></code> <code><a href=#document>Document</a></code> that was added
57111 when the <a href=#browsing-context>browsing context</a> was created, and navigation
57112 is occurring with <a href=#replacement-enabled>replacement enabled</a>, and that
57113 <code><a href=#document>Document</a></code> has the <a href=#same-origin>same origin</a> as the new
57114 <code><a href=#document>Document</a></code>, then the <code><a href=#window>Window</a></code> object of that
57115 <code><a href=#document>Document</a></code> must be used instead, and the <code title=dom-document><a href=#dom-document>document</a></code> attribute of the
57116 <code><a href=#window>Window</a></code> object must be changed to point to the new
57117 <code><a href=#document>Document</a></code> instead.</p>
57126 supported, or an inline prompt to allow the user to select <a href=#dom-navigator-registercontenthandler title=dom-navigator-registerContentHandler>a registered
57127 handler</a> for the given type, then <a href=#read-ua-inline title=navigate-ua-inline>display the inline content</a> and
57144 this, it must <a href=#queue-a-task>queue a task</a> to run the following
57147 <ol><li><p><a href=#unload-a-document title="unload a document">Unload</a> the
57148 <code><a href=#document>Document</a></code> object of the <a href=#current-entry>current entry</a>,
57159 <ol><li><p>Replace the <code><a href=#document>Document</a></code> of the entry being
57162 <code><a href=#document>Document</a></code>.</li>
57164 <li><p><a href=#traverse-the-history>Traverse the history</a> to the new
57168 is no the <a href=#current-entry>current entry</a>, and can never happen with
57169 <a href=#replacement-enabled>replacement enabled</a>. (It happens when the user
57171 a <code><a href=#document>Document</a></code> object.)</p>
57182 <p>Remove all the entries in the <a href=#browsing-context>browsing
57183 context</a>'s <a href=#session-history>session history</a> after the
57184 <a href=#current-entry>current entry</a>. If the <a href=#current-entry>current entry</a>
57188 <p class=note>This <a href=#history-notes>doesn't
57194 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a>
57195 queued by the <a href=#history-traversal-task-source>history traversal task
57197 history.back(), in the case of setting location.href="" and
57200 <li><p>Append a new entry at the end of the <code><a href=#history-0>History</a></code>
57202 <code><a href=#document>Document</a></code> object and related state.</li>
57204 <li><p><a href=#traverse-the-history>Traverse the history</a> to the new entry. If
57205 the navigation was initiated with <a href=#replacement-enabled>replacement
57207 with <a href=#replacement-enabled>replacement enabled</a>.</p>
57215 <li><p>The <a href=#navigate title=navigate>navigation algorithm</a> has
57218 <li><p><i>Fragment identifier loop</i>: <a href=#spin-the-event-loop>Spin the event
57224 <li><p>If the <code><a href
57225 parser has <a href=#stop-parsing title="stop parsing">stopped parsing</a>, or
57230 <li><p><a href=#scroll-to-the-fragment-identifier>Scroll to the fragment identifier</a> given in
57231 <a href="#the-document's-current-address">the document's current address</a>. If this fails to find
57232 <a href=#the-indicated-part-of-the-document title="the indicated part of the document">an indicated part
57236 </ol><p>The <a href=#task-source>task source</a> for this <a href=#concept-task title=concept-task>task</a> is the <a href=#networking-task-source>networking task
57242 <p>When an HTML document is to be loaded in a <a href=#browsing-context>browsing
57243 context</a>, the user agent must <a href=#queue-a-task>queue a task</a> to
57244 <a href=#create-a-document-object>create a <code>Document</code> object</a>, mark it as being
57245 an <a href=#html-documents title="HTML documents">HTML document</a>, create an
57246 <a href=#html-parser>HTML parser</a>, and associate it with the document. Each
57247 <a href=#concept-task title=concept-task>task</a> that the <a href=#networking-task-source>networking
57248 task source</a> places on the <a href=#task-queue>task queue</a> while the
57249 <a href=#fetch title=fetch>fetching algorithm</a> runs must then fill
57250 the parser's <a href=#the-input-stream>input stream</a> with the fetched bytes and
57251 cause the <a href=#html-parser>HTML parser</a> to perform the appropriate
57254 <p class=note>The <a href=#the-input-stream>input stream</a> converts bytes into
57255 characters for use in the <a href=#tokenization title=tokenization>tokenizer</a>. This process relies, in part,
57256 on character encoding information found in the real <a href=#content-type title=Content-Type>Content-Type metadata</a> of the resource;
57262 <p>When no more bytes are available, the user agent must <a href=#queue-a-task>queue
57267 <p>After creating the <code><a href=#document>Document</a></code> object, but before any
57268 script execution, certainly before the parser <a href=#stop-parsing title="stop
57269 parsing">stops</a>, the user agent must <a href=#update-the-session-history-with-the-new-page>update the session
57272 <p class=note><a href=#concept-appcache-init title=concept-appcache-init>Application
57273 cache selection</a> happens <a href=#parser-appcache>in the
57276 <p>The <a href=#task-source>task source</a> for the two tasks mentioned in this
57277 section must be the <a href=#networking-task-source>networking task source</a>.</p>
57284 first <a href=#create-a-document-object>create a <code>Document</code> object</a>, following
57286 RFC 3023, DOM3 Core, and other relevant specifications. <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a> <a href=#refsRFC3023>[RFC3023]</a> <a href=#refsDOMCORE>[DOMCORE]</a></p>
57293 <a href="#document's-character-encoding">document's character encoding</a> must be set to that
57297 specifications cited above, is found to be an <code><a href=#the-html-element-0>html</a></code>
57298 element with an attribute <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> whose value is not the
57299 empty string, then, as soon as the element is <a href=#insert-an-element-into-a-document title="insert an
57301 agent must <a href=#resolve-a-url title="resolve a url">resolve</a> the value of
57303 must run the <a href=#concept-appcache-init title=concept-appcache-init>application cache
57304 selection algorithm</a> with the resulting <a href=#absolute-url>absolute
57305 URL</a> with any <a href=#url-fragment title=url-fragment><fragment></a> component removed as
57307 <code><a href=#document>Document</a></code>. Otherwise, if the attribute is absent, its
57309 soon as the root element is <a href=#insert-an-element-into-a-document title="insert an element into a
57311 the <a href=#concept-appcache-init title=concept-appcache-init>application cache selection
57313 <code><a href=#document>Document</a></code>.</p>
57315 <p class=note>Because the processing of the <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute happens
57321 <code><a href=#element>Element</a></code> node of this <code><a href=#document>Document</a></code> object to
57325 abort the steps in this section, and jump to <a href=#navigate-non-Document>the next step</a> (labeled
57326 "non-document content") in the <a href=#navigate>navigate</a> steps
57329 <p>Otherwise, then, with the newly created <code><a href=#document>Document</a></code>,
57330 the user agents must <a href=#update-the-session-history-with-the-new-page>update the session history with the new
57337 <code><a href=#document>Document</a></code>.</p>
57342 <p>When a plain text document is to be loaded in a <a href=#browsing-context>browsing
57343 context</a>, the user agent should <a href=#queue-a-task>queue a task</a> to
57344 <a href=#create-a-document-object>create a <code>Document</code> object</a>, mark it as being
57345 an <a href=#html-documents title="HTML documents">HTML document</a>, create an
57346 <a href=#html-parser>HTML parser</a>, associate it with the document, act as if
57350 eaten itself-->, and switch the <a href=#html-parser>HTML parser</a>'s tokenizer
57351 to the <a href=#plaintext-state>PLAINTEXT state</a>. Each <a href=#concept-task title=concept-task>task</a> that the <a href=#networking-task-source>networking task
57352 source</a> places on the <a href=#task-queue>task queue</a> while the <a href=#fetch title=fetch>fetching algorithm</a> runs must then fill the
57353 parser's <a href=#the-input-stream>input stream</a> with the fetched bytes and cause
57354 the <a href=#html-parser>HTML parser</a> to perform the appropriate processing
57359 subsequent versions thereof. <a href=#refsRFC2046>[RFC2046]</a> <a href=#refsRFC2646>[RFC2646]</a></p>
57361 <p>The <a href="#document's-character-encoding">document's character encoding</a> must be set to the
57364 <p>Upon creation of the <code><a href=#document>Document</a></code> object, the user agent
57365 must run the <a href=#concept-appcache-init title=concept-appcache-init>application cache
57367 newly-created <code><a href=#document>Document</a></code>.</p>
57374 <p>When no more bytes are available, the user agent must <a href=#queue-a-task>queue
57379 <p>After creating the <code><a href=#document>Document</a></code> object, but potentially
57381 <a href=#update-the-session-history-with-the-new-page>update the session history with the new page</a>.</p>
57383 <p>User agents may add content to the <code><a href=#the-head-element-0>head</a></code> element of
57384 the <code><a href=#document>Document</a></code>, e.g. linking to a style sheet or an XBL
57385 binding, providing script, giving the document a <code><a href=#the-title-element-0>title</a></code>,
57388 <p>The <a href=#task-source>task source</a> for the two tasks mentioned in this
57389 section must be the <a href=#networking-task-source>networking task source</a>.</p>
57394 <p>When an image resource is to be loaded in a <a href=#browsing-context>browsing
57395 context</a>, the user agent should <a href=#create-a-document-object>create a
57396 <code>Document</code> object</a>, mark it as being an <a href=#html-documents title="HTML documents">HTML document</a>, append an
57397 <code><a href=#the-html-element-0>html</a></code> element to the <code><a href=#document>Document</a></code>, append a
57398 <code><a href=#the-head-element-0>head</a></code> element and a <code><a href=#the-body-element-0>body</a></code> element to the
57399 <code><a href=#the-html-element-0>html</a></code> element, append an <code><a href=#the-img-element>img</a></code> to the
57400 <code><a href=#the-body-element-0>body</a></code> element, and set the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute of the <code><a href=#the-img-element>img</a></code>
57406 <p>Then, the user agent must act as if it had <a href=#stop-parsing title="stop
57409 <p>Upon creation of the <code><a href=#document>Document</a></code> object, the user agent
57410 must run the <a href=#concept-appcache-init title=concept-appcache-init>application cache
57412 newly-created <code><a href=#document>Document</a></code>.</p>
57414 <p>After creating the <code><a href=#document>Document</a></code> object, but potentially
57416 <a href=#update-the-session-history-with-the-new-page>update the session history with the new page</a>.</p>
57418 <p>User agents may add content to the <code><a href=#the-head-element-0>head</a></code> element of
57419 the <code><a href=#document>Document</a></code>, or attributes to the <code><a href=#the-img-element>img</a></code>
57421 a script, to give the document a <code><a href=#the-title-element-0>title</a></code>, etc.</p>
57427 is to be loaded in a <a href=#browsing-context>browsing context</a>, the user agent
57428 should <a href=#create-a-document-object>create a <code>Document</code> object</a>, mark it
57429 as being an <a href=#html-documents title="HTML documents">HTML document</a>,
57430 append an <code><a href=#the-html-element-0>html</a></code> element to the <code><a href=#document>Document</a></code>,
57431 append a <code><a href=#the-head-element-0>head</a></code> element and a <code><a href=#the-body-element-0>body</a></code> element
57432 to the <code><a href=#the-html-element-0>html</a></code> element, append an <code><a href=#the-embed-element>embed</a></code> to
57433 the <code><a href=#the-body-element-0>body</a></code> element, and set the <code title=attr-embed-src><a href=#attr-embed-src>src</a></code> attribute of the
57434 <code><a href=#the-embed-element>embed</a></code> element to the address of the resource.</p>
57439 <p>Then, the user agent must act as if it had <a href=#stop-parsing title="stop
57442 <p>Upon creation of the <code><a href=#document>Document</a></code> object, the user agent
57443 must run the <a href=#concept-appcache-init title=concept-appcache-init>application cache
57445 newly-created <code><a href=#document>Document</a></code>.</p>
57447 <p>After creating the <code><a href=#document>Document</a></code> object, but potentially
57449 <a href=#update-the-session-history-with-the-new-page>update the session history with the new page</a>.</p>
57451 <p>User agents may add content to the <code><a href=#the-head-element-0>head</a></code> element of
57452 the <code><a href=#document>Document</a></code>, or attributes to the <code><a href=#the-embed-element>embed</a></code>
57454 the document a <code><a href=#the-title-element-0>title</a></code>.</p>
57456 <p class=note id=sandboxPluginNavigate>If the <a href=#sandboxed-plugins-browsing-context-flag>sandboxed
57457 plugins browsing context flag</a> was set on the <a href=#browsing-context>browsing
57458 context</a> when the <code><a href=#document>Document</a></code> was created, the
57459 synthesized <code><a href=#the-embed-element>embed</a></code> element will <a href=#sandboxPluginEmbed>fail to render the content</a>.</p>
57465 <a href=#browsing-context>browsing context</a>, the user agent should <a href=#create-a-document-object>create a
57466 <code>Document</code> object</a>, mark it as being an <a href=#html-documents title="HTML documents">HTML document</a>, and then either
57467 associate that <code><a href=#document>Document</a></code> with a custom rendering that is
57468 not rendered using the normal <code><a href=#document>Document</a></code> rendering rules,
57469 or mutate that <code><a href=#document>Document</a></code> until it represents the content
57476 had <a href=#stop-parsing title="stop parsing">stopped parsing</a>.</p>
57478 <p>Upon creation of the <code><a href=#document>Document</a></code> object, the user agent
57479 must run the <a href=#concept-appcache-init title=concept-appcache-init>application cache
57481 newly-created <code><a href=#document>Document</a></code>.</p>
57483 <p>After creating the <code><a href=#document>Document</a></code> object, but potentially
57485 <a href=#update-the-session-history-with-the-new-page>update the session history with the new page</a>.</p>
57492 identifier, then the user agent must <a href=#queue-a-task>queue a task</a> to
57497 <p>Remove all the entries in the <a href=#browsing-context>browsing context</a>'s
57498 <a href=#session-history>session history</a> after the <a href=#current-entry>current
57499 entry</a>. If the <a href=#current-entry>current entry</a> is the last entry
57502 <p class=note>This <a href=#history-notes>doesn't necessarily
57507 <li><p>Remove any <a href=#concept-task title=concept-task>tasks</a> queued by
57508 the <a href=#history-traversal-task-source>history traversal task source</a>.</li>
57510 <li><p>Append a new entry at the end of the <code><a href=#history-0>History</a></code>
57511 object representing the new resource and its <code><a href=#document>Document</a></code>
57512 object and related state. Its <a href=#url>URL</a> must be set to the
57513 address to which the user agent was <a href=#navigate title=navigate>navigating</a>. The title must be left
57516 <li><p><a href=#traverse-the-history>Traverse the history</a> to the new entry. This
57517 will <a href=#scroll-to-the-fragment-identifier>scroll to the fragment identifier</a> given in what
57518 is now <a href="#the-document's-current-address">the document's current address</a>.</li>
57521 not yet been parsed, then the original <a href=#navigate title=navigate>navigation</a> algorithm will take care of the
57522 scrolling instead, as the last few steps of its <a href=#update-the-session-history-with-the-new-page>update the
57527 document, or perform some other action, such that <a href=#the-indicated-part-of-the-document>the
57535 defined by the specification that defines the <a href=#mime-type>MIME type</a>
57536 used by the <code><a href=#document>Document</a></code> (for example, the processing of
57537 fragment identifiers for <a href=#xml-mime-type title="XML MIME type">XML MIME
57538 types</a> is the responsibility of RFC3023). <a href=#refsRFC3023>[RFC3023]</a></p>
57540 <p>For HTML documents (and <a href=#html-mime-type title="HTML MIME type">HTML MIME
57542 determine what <a href=#the-indicated-part-of-the-document>the indicated part of the document</a>
57545 <ol><li><p><a href=#parse-a-url title="parse a url">Parse</a> the <a href=#url>URL</a>,
57546 and let <var title="">fragid</var> be the <a href=#url-fragment title=url-fragment><fragment></a> component of the
57551 <a href=#the-indicated-part-of-the-document>the indicated part of the document</a> is the top of the
57563 <a href=#the-indicated-part-of-the-document>the indicated part of the document</a>; stop the algorithm
57566 <li><p>If there is an <code><a href=#the-a-element>a</a></code> element in the DOM that has a
57567 <code title=attr-a-name><a href=#attr-a-name>name</a></code> attribute whose value is
57569 order is <a href=#the-indicated-part-of-the-document>the indicated part of the document</a>; stop the
57572 <li><p>If <var title="">fragid</var> is an <a href=#ascii-case-insensitive>ASCII
57573 case-insensitive</a> match for the string <code title="">top</code>, then <a href=#the-indicated-part-of-the-document>the indicated part of the
57577 <li><p>Otherwise, there is no <a href=#the-indicated-part-of-the-document title="the indicated part of
57581 <dfn id=target-element><i>target element</i></dfn> is <a href=#the-indicated-part-of-the-document>the indicated part of the
57583 <i><a href=#target-element>target element</a></i>. <a href=#refsSELECTORS>[SELECTORS]</a></p>
57594 to a <i>specified entry</i>, optionally with <a href=#replacement-enabled>replacement
57597 <ol><li><p>If there is no longer a <code><a href=#document>Document</a></code> object for the
57598 entry in question, the user agent must <a href=#navigate>navigate</a> the
57600 <a href=#entry-update>entry update</a> of that entry, and abort these steps. The
57601 "<a href=#navigate>navigate</a>" algorithm reinvokes this "traverse"
57603 <em>is</em> a <code><a href=#document>Document</a></code> object and so this step gets
57604 skipped. The navigation must be done using the same <a href=#source-browsing-context>source
57606 created. (This can never happen with <a href=#replacement-enabled>replacement
57609 <li><p>If the <a href=#current-entry>current entry</a>'s title was not set by the
57610 <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> or <code title=dom-history-replaceState><a href=#dom-history-replacestate>replaceState()</a></code> methods,
57611 then set its title to the value returned by the <code title=dom-document-title><a href=#document.title>document.title</a></code> IDL
57616 <p>If appropriate, update the <a href=#current-entry>current entry</a> in the
57617 <a href=#browsing-context>browsing context</a>'s <code><a href=#document>Document</a></code> object's
57618 <code><a href=#history-0>History</a></code> object to reflect any state that the user
57628 <code><a href=#document>Document</a></code> object than the <a href=#current-entry>current entry</a>
57631 <ol><li>If the browsing context is a <a href=#top-level-browsing-context>top-level browsing
57632 context</a>, but not an <a href=#auxiliary-browsing-context>auxiliary browsing
57633 context</a>, and the <a href=#origin>origin</a> of the
57634 <code><a href=#document>Document</a></code> of the <i>specified entry</i> is not the
57635 <a href=#same-origin title="same origin">same</a> as the <a href=#origin>origin</a>
57636 of the <code><a href=#document>Document</a></code> of the <a href=#current-entry>current entry</a>,
57639 <ol><li>The current <a href=#browsing-context-name>browsing context name</a> must be
57641 with <code><a href=#document>Document</a></code> objects with the <a href=#same-origin>same
57642 origin</a> as the <a href=#active-document>active document</a> <em>and</em>
57643 that are contiguous with the <a href=#current-entry>current entry</a>.</li>
57645 <li id=resetBCName>The browsing context's <a href=#browsing-context-name>browsing
57651 <i>specified entry</i>'s <code><a href=#document>Document</a></code> object the
57652 <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing
57655 <li>If the <i>specified entry</i> has a <a href=#browsing-context-name>browsing
57659 <ol><li>The browsing context's <a href=#browsing-context-name>browsing context name</a>
57662 <li>Any <a href=#browsing-context-name>browsing context name</a> stored with the
57664 <code><a href=#document>Document</a></code> objects with the <a href=#same-origin>same origin</a>
57665 as the new <a href=#active-document>active document</a>, and that are
57671 <code><a href=#document>Document</a></code> has any <code><a href=#the-input-element>input</a></code> elements whose
57672 <a href=#resulting-autocompletion-state>resulting autocompletion state</a> is <i title="">off</i>, invoke the <a href=#concept-form-reset-control title=concept-form-reset-control>reset algorithm</a> of each
57675 <li><p>If the <a href=#current-document-readiness>current document readiness</a> of the
57676 <i>specified entry</i>'s <code><a href=#document>Document</a></code> is "complete",
57677 <a href=#queue-a-task>queue a task</a> to fire a <code title=event-pageshow><a href=#event-pageshow>pageshow</a></code> event at the
57678 <code><a href=#window>Window</a></code> object of that <code><a href=#document>Document</a></code>, but
57679 with its <code title=dom-event-target><a href=#dom-event-target>target</a></code> set to the
57680 <code><a href=#document>Document</a></code> object (and the <code title=dom-event-currentTarget>currentTarget</code> set to the
57681 <code><a href=#window>Window</a></code> object), using the
57682 <code><a href=#pagetransitionevent>PageTransitionEvent</a></code> interface, with the <code title=dom-PageTransitionEvent-persisted><a href=#dom-pagetransitionevent-persisted>persisted</a></code>
57688 <li><p>Set <a href="#the-document's-current-address">the document's current address</a> to the URL
57692 the <a href=#current-entry>current entry</a>'s only by its fragment identifier,
57693 and the two share the same <code><a href=#document>Document</a></code> object, then let
57695 URL</var> be the URL of the <a href=#current-entry>current entry</a> and <var title="">new URL</var> be the URL of the <i>specified
57703 <li><p>If the <i>specified entry</i> is not <a href=#an-entry-with-persisted-user-state>an entry with
57705 <a href=#scroll-to-the-fragment-identifier>scroll to the fragment identifier</a>.</li>
57707 <li><p>If the entry is <a href=#an-entry-with-persisted-user-state>an entry with persisted user
57715 entry for a <code><a href=#document>Document</a></code>, the user agent must run the
57718 <ol><li><p>If the entry is a <a href=#state-object>state object</a> entry, let <var title="">state</var> be a <a href=#structured-clone>structured clone</a> of that
57727 <dl class=switch><dt>If the <a href=#current-document-readiness>current document readiness</a> is set to the
57730 <dd><p><a href=#queue-a-task>Queue a task</a> to fire a <code title=event-popstate><a href=#event-popstate>popstate</a></code> event at the
57731 <code><a href=#window>Window</a></code> object of the <code><a href=#document>Document</a></code>, using
57732 the <code><a href=#popstateevent>PopStateEvent</a></code> interface, with the <code title=dom-PopStateEvent-state><a href=#dom-popstateevent-state>state</a></code> attribute set to
57738 <dd><p>Let the <code><a href=#document>Document</a></code>'s <dfn id=pending-state-object>pending state
57740 a <a href=#pending-state-object>pending state object</a>, the previous one is
57750 <a href=#queue-a-task>queue a task</a> to fire a <code title=event-hashchange><a href=#event-hashchange>hashchange</a></code> event at the
57751 <a href=#browsing-context>browsing context</a>'s <code><a href=#window>Window</a></code> object, using
57752 the <code><a href=#hashchangeevent>HashChangeEvent</a></code> interface, with the <code title=dom-HashChangeEvent-oldURL><a href=#dom-hashchangeevent-oldurl>oldURL</a></code> attribute set to
57753 href=#dom-hashchangeevent-newurl>newURL</a></code> attribute set to
57757 <li><p>The <a href=#current-entry>current entry</a> is now the <i>specified
57760 </ol><p>The <a href=#pending-state-object>pending state object</a> must be initially null.</p>
57762 <p>The <a href=#task-source>task source</a> for the tasks mentioned above is the
57763 <a href=#dom-manipulation-task-source>DOM manipulation task source</a>.</p>
57771 is fired when navigating to a <a href=#session-history-entry>session history entry</a>
57774 <pre class=idl>interface <dfn id=popstateevent>PopStateEvent</dfn> : <a href=#event>Event</a> {
57775 readonly attribute any <a href=#dom-popstateevent-state title=dom-PopStateEvent-state>state</a>;
57776 void <a href=#dom-popstateevent-initpopstateevent title=dom-PopStateEvent-initPopStateEvent>initPopStateEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any stateArg);
57779 <dl class=domintro><dt><var title="">event</var> . <code title=dom-PopStateEvent-state><a href=#dom-popstateevent-state>state</a></code></dt>
57783 <p>Returns a copy of the information that was provided to <code title=dom-history-pushState><a href=#dom-history-pushstate>pushState()</a></code> or <code title=dom-history-replaceState><a href=#dom-history-replacestate>replaceState()</a></code>.</p>
57791 similarly-named method in the DOM Events interfaces. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
57796 <code><a href=#document>Document</a></code>.</p>
57801 event is fired when navigating to a <a href=#session-history-entry>session history
57802 entry</a> whose <a href=#url>URL</a> differs from that of the
57805 <pre class=idl>interface <dfn id=hashchangeevent>HashChangeEvent</dfn> : <a href=#event>Event</a> {
57806 readonly attribute any <a href=#dom-hashchangeevent-oldurl title=dom-HashChangeEvent-oldURL>oldURL</a>;
57807 readonly attribute any <a href=#dom-hashchangeevent-newurl title=dom-HashChangeEvent-newURL>newURL</a>;
57808 void <a href=#dom-hashchangeevent-inithashchangeevent title=dom-HashChangeEvent-initHashChangeEvent>initHashChangeEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in DOMString oldURLArg, in DOMString newURLArg);
57811 <dl class=domintro><dt><var title="">event</var> . <code title=dom-HashChangeEvent-oldURL><a href=#dom-hashchangeevent-oldurl>oldURL</a></code></dt>
57815 <p>Returns the <a href=#url>URL</a> of the <a href=#session-history-entry>session history
57821 <dt><var title="">event</var> . <code title=dom-HashChangeEvent-newURL><a href=#dom-hashchangeevent-newurl>newURL</a></code></dt>
57825 <p>Returns the <a href=#url>URL</a> of the <a href=#session-history-entry>session history
57834 similarly-named method in the DOM Events interfaces. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
57838 the URL of the <a href=#session-history-entry>session history entry</a> that was traversed
57843 the URL of the <a href=#session-history-entry>session history entry</a> that was traversed
57849 is fired when traversing <em>to</em> a <a href=#session-history-entry>session history
57853 event is fired when traversing <em>from</em> a <a href=#session-history-entry>session history
57856 <pre class=idl>interface <dfn id=pagetransitionevent>PageTransitionEvent</dfn> : <a href=#event>Event</a> {
57857 readonly attribute any <a href=#dom-pagetransitionevent-persisted title=dom-PageTransitionEvent-persisted>persisted</a>;
57858 void <a href=#dom-pagetransitionevent-initpagetransitionevent title=dom-PageTransitionEvent-initPageTransitionEvent>initPageTransitionEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any persistedArg);
57861 <dl class=domintro><dt><var title="">event</var> . <code title=dom-PageTransitionEvent-persisted><a href=#dom-pagetransitionevent-persisted>persisted</a></code></dt>
57873 similarly-named method in the DOM Events interfaces. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
57886 <p>A <code><a href=#document>Document</a></code> has a <var title=concept-document-salvageable>salvageable</var> state, which
57893 <code><a href=#beforeunloadevent>BeforeUnloadEvent</a></code> event object with the name <code title=event-beforeunload>beforeunload</code>, which does not
57897 <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object.</li>
57899 <li><p>Release the <a href=#storage-mutex>storage mutex</a>.</li>
57902 <i>dispatch</i> step, then set the <code><a href=#document>Document</a></code>'s <var title=concept-document-salvageable>salvageable</var> state to
57907 <p>If the <code title=dom-BeforeUnloadEvent-returnValue><a href=#dom-beforeunloadevent-returnvalue>returnValue</a></code>
57913 the <code title=dom-BeforeUnloadEvent-returnValue><a href=#dom-beforeunloadevent-returnvalue>returnValue</a></code>
57918 <p>The user agent must <a href=#pause>pause</a> while waiting for the
57931 <li><p>Let <var title="">descendants</var> be the <a href=#list-of-the-descendant-browsing-contexts>list of the
57933 <code><a href=#document>Document</a></code>.</li>
57938 for each <a href=#browsing-context>browsing context</a> <var title="">b</var> in
57941 <ol><li><p><a href=#prompt-to-unload-a-document title="prompt to unload a document">Prompt to
57942 unload</a> the <a href=#active-document>active document</a> of the
57943 <a href=#browsing-context>browsing context</a> <var title="">b</var>. If the user
57944 <a href=#refused-to-allow-the-document-to-be-unloaded>refused to allow the document to be unloaded</a>, then
57945 the user implicitly also <a href=#refused-to-allow-the-document-to-be-unloaded title="refused to allow the
57950 the <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing
57958 whether the <code><a href=#document>Document</a></code> object is going to be
57959 re-used. (This is set by the <code title=dom-document-open><a href=#dom-document-open>document.open()</a></code> method.)</p>
57961 <ol><li><p>Fire a <code title=event-pagehide><a href=#event-pagehide>pagehide</a></code> event at
57962 the <code><a href=#window>Window</a></code> object of the <code><a href=#document>Document</a></code>, but
57963 with its <code title=dom-event-target><a href=#dom-event-target>target</a></code> set to the
57964 <code><a href=#document>Document</a></code> object (and the <code title=dom-event-currentTarget>currentTarget</code> set to the
57965 <code><a href=#window>Window</a></code> object), using the
57966 <code><a href=#pagetransitionevent>PageTransitionEvent</a></code> interface, with the <code title=dom-PageTransitionEvent-persisted><a href=#dom-pagetransitionevent-persisted>persisted</a></code>
57970 <li><p><i>Unload event</i>: <a href=#fire-a-simple-event>Fire a simple event</a> named
57972 <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object.</li>
57974 <li><p>Release the <a href=#storage-mutex>storage mutex</a>.</li>
57977 <i>unload event</i> step, then set the <code><a href=#document>Document</a></code>
57981 <li><p>Run any <a href=#unloading-document-cleanup-steps>unloading document cleanup steps</a> for
57982 <code><a href=#document>Document</a></code> that are defined by this specification or any
57990 <li><p>Let <var title="">descendants</var> be the <a href=#list-of-the-descendant-browsing-contexts>list of the
57992 <code><a href=#document>Document</a></code>.</li>
57997 for each <a href=#browsing-context>browsing context</a> <var title="">b</var> in
58000 <ol><li><p><a href=#unload-a-document title="unload a document">Unload</a> the
58001 <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing context</a>
58006 the <a href=#active-document>active document</a> of the <a href=#browsing-context>browsing
58013 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> must <a href=#discard-a-document title="discard a document">discard the
58020 callbacks that involve <a href=#concept-script title=concept-script>scripts</a>
58021 whose <a href="#script's-global-object" title="script's global object">global object</a> is
58022 the <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object, roll them
58024 <code><a href=#document>Document</a></code>'s <var title=concept-document-salvageable>salvageable</var> state to
58025 false. <a href=#refsWEBSQL>[WEBSQL]</a> </li>
58029 <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object. If this
58031 <code><a href=#document>Document</a></code>'s <var title=concept-document-salvageable>salvageable</var> state to
58034 <a href=#refsWEBSOCKET>[WEBSOCKET]</a>
58038 <li><p>If the <code><a href=#document>Document</a></code>'s <var title=concept-document-salvageable>salvageable</var> state is
58039 false, empty the <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code>'s
58040 <a href=#list-of-active-timeouts>list of active timeouts</a> and its <a href=#list-of-active-intervals>list of active
58047 <pre class=idl>interface <dfn id=beforeunloadevent>BeforeUnloadEvent</dfn> : <a href=#event>Event</a> {
58048 attribute DOMString <a href=#dom-beforeunloadevent-returnvalue title=dom-BeforeUnloadEvent-returnValue>returnValue</a>;
58051 <dl class=domintro><dt><var title="">event</var> . <code title=dom-BeforeUnloadEvent-returnValue><a href=#dom-beforeunloadevent-returnvalue>returnValue</a></code> [ = <var title="">value</var> ]</dt>
58061 </dl><p class=note>There are no <code><a href
58079 <p>If the user cancels any instance of the <a href=#fetch title=fetch>fetching algorithm</a> in the context of a
58080 <code><a href=#document>Document</a></code> in a <a href=#browsing-context>browsing context</a>, then, if
58081 that <code><a href=#document>Document</a></code> is an <a href=#active-document>active document</a>, the
58082 user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
58084 <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object.</p>
58161 <link rel="stylesheet" href="clock.css">
58186 <code><a href=#text/cache-manifest>text/cache-manifest</a></code>) is linked to the application:</p>
58194 <link rel="stylesheet" href="clock.css">
58216 <p><a href="http://www.whatwg.org/demos/offline/clock/clock2.html">View this example online</a>.</p>
58230 <code><a href=#applicationcache>ApplicationCache</a></code> object to keep the script updated as
58239 <td> <code><a href=#event>Event</a></code>
58241 <td> <code title=event-appcache-noupdate><a href=#event-appcache-noupdate>noupdate</a></code>, <code title=event-appcache-downloading><a href=#event-appcache-downloading>downloading</a></code>, <code title=event-appcache-obsolete><a href=#event-appcache-obsolete>obsolete</a></code>, <code title=event-appcache-error><a href=#event-appcache-error>error</a></code>
58243 <td> <code><a href=#event>Event</a></code>
58247 <td> <code><a href=#event>Event</a></code>
58249 <td> <code title=event-appcache-progress><a href=#event-appcache-progress>progress</a></code>, <code title=event-appcache-error><a href=#event-appcache-error>error</a></code>, <code title=event-appcache-cached><a href=#event-appcache-cached>cached</a></code>, <code title=event-appcache-updateready><a href=#event-appcache-updateready>updateready</a></code>
58253 <td> <code title=event-appcache-progress><a href=#event-appcache-progress>progress</a></code>, <code title=event-appcache-error><a href=#event-appcache-error>error</a></code>, <code title=event-appcache-cached><a href=#event-appcache-cached>cached</a></code>, <code title=event-appcache-updateready><a href=#event-appcache-updateready>updateready</a></code>
58255 <td> <code><a href=#event>Event</a></code>
58259 <td> <code><a href=#event>Event</a></code>
58260 <td> The resources listed in the manifest have been newly redownloaded, and the script can use <code title=dom-appcache-swapCache><a href=#dom-appcache-swapcache>swapCache()</a></code> to switch to the new cache.
58263 <td> <code><a href=#event>Event</a></code>
58267 <td rowspan=4> <code><a href=#event>Event</a></code>
58290 <a href=#browsing-context>browsing context</a> was <a href=#navigate title=navigate>navigated</a> to that document and the
58291 document indicated that this was its cache, using the <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute.
58297 master entry's <code><a href=#the-html-element-0>html</a></code> element's <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute. The
58298 manifest is fetched and processed during the <a href=#application-cache-download-process>application
58299 cache download process</a>. All the <a href=#concept-appcache-master title=concept-appcache-master>master entries</a> have
58300 the <a href=#same-origin title="same origin">same origin</a> as the manifest.
58305 <dd>Resources that were listed in the cache's <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> in an <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit
58307 they have a <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code>
58308 attribute but that it doesn't point at this cache's <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a>.
58313 <dd>Resources that were listed in the cache's <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> in a <a href=#concept-appcache-manifest-fallback title=concept-appcache-manifest-fallback>fallback
58326 namespaces</dfn>: URLs, used as <a href=#concept-appcache-matches-fallback title=concept-appcache-matches-fallback>prefix match
58327 patterns</a>, each of which is mapped to a <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entry</a>. Each
58328 namespace URL has the <a href=#same-origin>same origin</a> as <a href=#concept-appcache-manifest title=concept-appcache-manifest>the manifest</a>.</li>
58336 </ul><p>Each <a href=#application-cache>application cache</a> has a <dfn id=concept-appcache-completeness title=concept-appcache-completeness>completeness flag</dfn>, which is
58339 <hr><p>An <dfn id=application-cache-group>application cache group</dfn> is a group of <a href=#application-cache title="application cache">application caches</a>, identified by
58340 the <a href=#absolute-url>absolute URL</a> of a resource <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> which is used to
58343 <p>An <a href=#application-cache>application cache</a> is <dfn id=concept-appcache-newer title=concept-appcache-newer>newer</dfn> than another if it was
58344 created after the other (in other words, <a href=#application-cache title="application
58345 cache">application caches</a> in an <a href=#application-cache-group>application cache
58348 <p>Only the newest <a href=#application-cache>application cache</a> in an
58349 <a href=#application-cache-group>application cache group</a> can have its <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> set to
58352 <p>Each <a href=#application-cache-group>application cache group</a> has an <dfn id=concept-appcache-status title=concept-appcache-status>update status</dfn>, which is one of
58355 href=#application-cache>application
58356 cache</a> that is the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> in its <a href=#application-cache-group title="application cache group">group</a> to be
58359 <p>Each <a href=#application-cache-group>application cache group</a> has a <dfn id=concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
58361 corresponding <code><a href=#document>Document</a></code> object. It is used during the
58362 <a href=#application-cache-download-process>application cache download process</a> to ensure that new
58363 master entries are cached even if the <a href=#application-cache-download-process>application cache
58365 <a href=#application-cache-group>application cache group</a> when they were loaded.</p>
58367 <p>An <a href=#application-cache-group>application cache group</a> can be marked as <dfn id=concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</dfn>, meaning that it
58368 must be ignored when looking at what <a href=#application-cache-group title="application cache
58371 <hr><p>A <dfn id=cache-host>cache host</dfn> is a <code><a href=#document>Document</a></code> or a
58372 <code>SharedWorkerGlobalScope</code> object. A <a href=#cache-host>cache
58373 host</a> can be associated with an <a href=#application-cache>application
58376 <a href=#refsWEBWORKERS>[WEBWORKERS]</a>
58380 <p>A <code><a href=#document>Document</a></code> initially is not associated with an
58381 <a href=#application-cache>application cache</a>, but can become associated with one
58382 early during the page load process, when steps <a href=#parser-appcache>in the parser</a> and in the <a href=#navigate title=navigate>navigation</a> sections cause <a href=#concept-appcache-init title=concept-appcache-init>cache selection</a> to occur.</p>
58385 <a href=#application-cache>application cache</a> when it is created.
58387 <a href=#refsWEBWORKERS>[WEBWORKERS]</a>
58391 <p>Each <a href=#cache-host>cache host</a> has an associated
58392 <code><a href=#applicationcache>ApplicationCache</a></code> object.</p>
58394 <hr><p>Multiple <a href=#application-cache title="application cache">application
58395 caches</a> in different <a href=#application-cache-group title="application cache
58399 application cache</dfn> from a list of <a href=#relevant-application-cache title="relevant
58414 fallback namespace</dfn> if there exists a <a href=#relevant-application-cache>relevant
58415 application cache</a> whose <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a>'s URL has the
58416 <a href=#same-origin>same origin</a> as the URL in question, and that has a
58417 <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a>
58418 that is a <a href=#prefix-match>prefix match</a> for the URL being examined. If
58492 also specifies that the <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online whitelist
58518 <code><a href=#text/cache-manifest>text/cache-manifest</a></code> <a href=#mime-type>MIME type</a>. All
58519 resources served using the <code><a href=#text/cache-manifest>text/cache-manifest</a></code>
58520 <a href=#mime-type>MIME type</a> must follow the syntax of application cache
58529 <p class=note>This is a <a href=#willful-violation>willful violation</a> of two
58536 supported by text editors. <a href=#refsRFC2046>[RFC2046]</a></p>
58587 <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit section</a>.</p>
58594 <p>When the current section is the <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit
58597 <a href=#valid-url>valid URL</a> identifying a resource other than the
58601 <p>When the current section is the <a href=#concept-appcache-manifest-fallback title=concept-appcache-manifest-fallback>fallback
58604 <a href=#valid-url>valid URL</a> identifying a resource other than the
58606 TABULATION (tab) characters, another <a href=#valid-url>valid URL</a>
58611 <p>When the current section is the <a href=#concept-appcache-manifest-network title=concept-appcache-manifest-network>online whitelist
58615 concept-appcache-onlinewhitelist-wildcard --> or a <a href=#valid-url>valid
58629 <p>If the manifest's <a href=#url-scheme title=url-scheme><scheme></a>
58631 encrypted data transfer, then all URLs in <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit sections</a>
58632 must have the <a href=#same-origin>same origin</a> as the manifest itself.</p>
58634 <p>URLs that are to be fallback pages associated with <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespaces</a>, and
58635 those namespaces themselves, must be given in <a href=#concept-appcache-manifest-fallback title=concept-appcache-manifest-fallback>fallback sections</a>,
58638 pages to be cached must be listed in <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit
58641 <p><a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>Fallback
58642 namespaces</a> and <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entries</a> must have
58643 the <a href=#same-origin>same origin</a> as the manifest itself.</p>
58645 <p>A <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback
58648 <p>Namespaces that the user agent is to put into the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a>
58649 must all be specified in <a href=#concept-appcache-manifest-network title=concept-appcache-manifest-network>online whitelist
58656 <p>Authors should not include namespaces in the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a> for
58657 which another namespace in the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a> is
58658 a <a href=#prefix-match>prefix match</a>.</p>
58661 URL. All URLs in the manifest must have the same <a href=#url-scheme title=url-scheme><scheme></a> as the manifest itself
58669 <p><a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>Fallback
58670 namespaces</a> and namespaces in the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a> are
58671 matched by <a href=#prefix-match>prefix match</a>.</p>
58689 <li><p>Let <var title="">base URL</var> be the <a href=#absolute-url>absolute
58693 list of <a href=#absolute-url title="absolute URL">absolute URLs</a> for <a href=#concept-appcache-explicit title=concept-appcache-explicit>explicit entries</a>.</li>
58696 mapping of <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback
58697 namespaces</a> to <a href=#absolute-url title="absolute URL">absolute
58698 URLs</a> for <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback
58702 initially empty list of <a href=#absolute-url title="absolute URL">absolute
58703 URLs</a> for an <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online
58735 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> that are
58744 step. Otherwise, <a href=#collect-a-sequence-of-characters>collect a sequence of characters</a> that
58749 <li><p>Now, <a href=#collect-a-sequence-of-characters>collect a sequence of characters</a> that are
58818 <p><a href=#resolve-a-url title="resolve a url">Resolve</a> the first item in
58825 <p>If the resulting <a href=#absolute-url>absolute URL</a> has a different
58826 <a href=#url-scheme title=url-scheme><scheme></a> component than
58827 the manifest's URL (compared in an <a href=#ascii-case-insensitive>ASCII
58829 labeled "start of line". If the manifest's <a href=#url-scheme title=url-scheme><scheme></a> is <code title="">https:</code> or another scheme intended for encrypted
58830 data transfer, and the resulting <a href=#absolute-url>absolute URL</a> does
58831 not have the <a href=#same-origin>same origin</a> as the manifest's URL,
58834 <p>Drop the <a href=#url-fragment title=url-fragment><fragment></a>
58835 component of the resulting <a href=#absolute-url>absolute URL</a>, if it has
58838 <p>Add the resulting <a href=#absolute-url>absolute URL</a> to the <var title="">explicit URLs</var>.</p>
58849 <p><a href=#resolve-a-url title="resolve a url">Resolve</a> <var title="">part
58855 <p>If the <a href=#absolute-url>absolute URL</a> corresponding to either <var title="">part one</var> or <var title="">part two</var> does not
58856 have the <a href=#same-origin>same origin</a> as the manifest's URL, then
58860 <p>Drop any the <a href=#url-fragment title=url-fragment><fragment></a> components of the
58861 resulting <a href=#absolute-url title="absolute URL">absolute URLs</a>.</p>
58863 <p>If the <a href=#absolute-url>absolute URL</a> corresponding to <var title="">part one</var> is already in the <var title="">fallback
58864 URLs</var> mapping as a <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a>,
58867 <p>Otherwise, add the <a href=#absolute-url>absolute URL</a> corresponding to
58869 URLs</var> mapping as a <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a>,
58870 mapped to the <a href=#absolute-url>absolute URL</a> corresponding to <var title="">part two</var> as the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entry</a>.</p>
58883 <p>Otherwise, <a href=#resolve-a-url title="resolve a url">resolve</a> the
58889 <p>If the resulting <a href=#absolute-url>absolute URL</a> has a different
58890 <a href=#url-scheme title=url-scheme><scheme></a> component than
58891 the manifest's URL (compared in an <a href=#ascii-case-insensitive>ASCII
58895 <p>Drop the <a href=#url-fragment title=url-fragment><fragment></a>
58896 component of the resulting <a href=#absolute-url>absolute URL</a>, if it has
58899 <p>Add the resulting <a href=#absolute-url>absolute URL</a> to the <var title="">online whitelist namespaces</var>.</p>
58923 <p>If a resource is listed in the <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit section</a>
58924 or as a <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback
58925 entry</a> in the <a href=#concept-appcache-manifest-fallback title=concept-appcache-manifest-fallback>fallback section</a>,
58927 other matching entries in the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespaces</a> or
58928 <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist
58931 <p>When a <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback
58932 namespace</a> and an <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist
58933 namespace</a> overlap, the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist
58936 <p>The <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online whitelist
58938 neither the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online
58939 whitelist namespace</a> nor the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a> and
58940 that are not listed in the <a href=#concept-appcache-manifest-explicit title=concept-appcache-manifest-explicit>explicit
58950 process</dfn> for an <a href=#absolute-url>absolute URL</a> purported to identify
58951 a <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a>, or for an
58952 <a href=#application-cache-group>application cache group</a>, potentially given a particular
58953 <a href=#cache-host>cache host</a>, and potentially given a <a href=#concept-appcache-master title=concept-appcache-master>master</a> resource, the user
58955 asynchronously, in parallel with the <a href=#event-loop>event loop</a> <a href=#concept-task title=concept-task>tasks</a>.</p>
58961 something else. Certain events fired during the <a href=#application-cache-download-process>application
58972 <p>The <a href=#application-cache-download-process>application cache download process</a> steps are as
58976 <a href=#application-cache-download-process>application cache download process</a> has been obtained
58994 <dl class=switch><dt>If these steps were invoked with an <a href=#absolute-url>absolute
58995 URL</a> purported to identify a <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a></dt>
58999 <p>Let <var title="">manifest URL</var> be that <a href
59002 <p>If there is no <a href=#application-cache-group>application cache group</a>
59004 new <a href=#application-cache-group>application cache group</a> identified by <var title="">manifest URL</var>. Initially, it has no <a href=#application-cache title="application cache">application caches</a>. One will
59010 <dt>If these steps were invoked with an <a href=#application-cache-group>application cache
59015 <p>Let <var title="">manifest URL</var> be the <a href=#absolute-url>absolute
59016 URL</a> of the <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> used to
59017 identify the <a href=#application-cache-group>application cache group</a> to be
59025 <a href=#application-cache-group>application cache group</a> identified by <var title="">manifest URL</var>.</li>
59027 <li><p>If these steps were invoked with a <a href=#concept-appcache-master title=concept-appcache-master>master</a> resource, then add
59028 the resource, along with the resource's <code><a href=#document>Document</a></code>, to
59029 <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59032 <li><p>If these steps were invoked with a <a href=#cache-host>cache
59033 host</a>, and the <a href=#concept-appcache-status title=concept-appcache-status>status</a> of <var title="">cache group</var> is <i>checking</i> or
59034 <i>downloading</i>, then <a href=#queue-a-post-load-task>queue a post-load task</a> to
59035 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-appcache-checking><a href=#event-appcache-checking>checking</a></code> that is
59036 cancelable at the <code><a href=#applicationcache>ApplicationCache</a></code> singleton of that
59037 <a href=#cache-host>cache host</a>. The default action of this event must
59038 be, if the user agent <a href=#shows-caching-progress>shows caching progress</a>, the
59043 <li><p>If these steps were invoked with a <a href=#cache-host>cache
59044 host</a>, and the <a href=#concept-appcache-status title=concept-appcache-status>status</a> of <var title="">cache group</var> is <i>downloading</i>, then also
59045 <a href=#queue-a-post-load-task>queue a post-load task</a> to <a href=#fire-a-simple-event>fire a simple
59046 event</a> named <code title=event-appcache-downloading><a href=#event-appcache-downloading>downloading</a></code> that is
59047 cancelable at the <code><a href=#applicationcache>ApplicationCache</a></code> singleton of that
59048 <a href=#cache-host>cache host</a>. The default action of this event must
59049 be, if the user agent <a href=#shows-caching-progress>shows caching progress</a>, the
59053 <li><p>If the <a href=#concept-appcache-status title=concept-appcache-status>status</a>
59056 <a href=#application-cache-download-process>application cache download process</a>, as an update is
59059 <li><p>Set the <a href=#concept-appcache-status title=concept-appcache-status>status</a> of <var title="">cache group</var> to <i>checking</i>.</p>
59061 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59062 <a href=#application-cache>application cache</a> in <var title="">cache
59063 group</var>, <a href=#queue-a-post-load-task>queue a post-load task</a> to <a href=#fire-a-simple-event>fire a
59064 simple event</a> that is cancelable named <code title=event-appcache-checking><a href=#event-appcache-checking>checking</a></code> at the
59065 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59067 user agent <a href=#shows-caching-progress>shows caching progress</a>, the display of
59074 <a href=#application-cache>application cache</a> in it, then this is an <dfn id=concept-appcache-upgrade title=concept-appcache-upgrade>upgrade attempt</dfn>. Otherwise,
59080 <li><p>If this is a <a href=#concept-appcache-cache title=concept-appcache-cache>cache
59081 attempt</a>, then this algorithm was invoked with a <a href=#cache-host>cache
59082 host</a>; <a href=#queue-a-post-load-task>queue a post-load task</a> to <a href=#fire-a-simple-event>fire a
59083 simple event</a> named <code title=event-appcache-checking><a href=#event-appcache-checking>checking</a></code> that is cancelable
59084 at the <code><a href=#applicationcache>ApplicationCache</a></code> singleton of that <a href=#cache-host>cache
59086 agent <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort
59092 <p><i>Fetching the manifest</i>: <a href=#fetch>Fetch</a> the resource
59097 <p>If the resource is labeled with the <a href=#mime-type>MIME type</a>
59098 <code><a href=#text/cache-manifest>text/cache-manifest</a></code>, parse <var title="">manifest</var> according to the <a href=#parse-a-manifest title="parse a
59100 <a href=#concept-appcache-explicit title=concept-appcache-explicit>explicit entries</a>,
59101 <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entries</a>
59102 and the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback
59103 namespaces</a> that map to them, entries for the <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a>,
59104 and a value for the <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online whitelist
59112 response <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or
59115 <ol><li><p>Mark <var title="">cache group</var> as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>. This <var title="">cache group</var> no longer exists for any purpose other
59116 than the processing of <code><a href=#document>Document</a></code> objects already
59117 associated with an <a href=#application-cache>application cache</a> in the <var title="">cache group</var>.</li>
59120 <a href=#concept-task title=concept-task>tasks</a>.</p>
59122 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59123 <a href=#application-cache>application cache</a> in <var title="">cache
59124 group</var>, create a <a href=#concept-task title=concept-task>task</a> to
59125 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-appcache-obsolete><a href=#event-appcache-obsolete>obsolete</a></code> that is
59126 cancelable at the <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the
59127 <a href=#cache-host>cache host</a>, and add it to <var title="">task
59129 user agent <a href=#shows-caching-progress>shows caching progress</a>, the display of
59133 <li><p>For each entry in <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59134 entries</a>, create a <a href=#concept-task title=concept-task>task</a>
59135 to <a href=#fire-a-simple-event>fire a simple event</a> that is cancelable named
59136 <code title=event-appcache-error><a href=#event-appcache-error>error</a></code> (not <code title=event-appcache-obsolete><a href=#event-appcache-obsolete>obsolete</a></code>!) at the
59137 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59138 host</a> the <code><a href=#document>Document</a></code> for this entry, if there
59141 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59146 <a href=#application-cache>application cache</a> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
59147 <i>incomplete</i>, then discard that <a href=#application-cache>application
59153 <li><p>Let the <a href=#concept-appcache-status title=concept-appcache-status>status</a> of <var title="">cache group</var> be <i>idle</i>.</li>
59155 <li><p>For each <a href=#concept-task title=concept-task>task</a> in <var title="">task list</var>, <a href=#queue-a-post-load-task title="queue a post-load
59158 <li><p>Abort the <a href=#application-cache-download-process>application cache download
59166 way (e.g. the server returns another 4xx or 5xx response <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>, or
59170 redirect, or if the resource is labeled with a <a href=#mime-type>MIME
59171 type</a> other than <code><a href=#text/cache-manifest>text/cache-manifest</a></code>, then run
59172 the <a href=#cache-failure-steps>cache failure steps</a>.</p>
59178 <p>If this is an <a href=#concept-appcache-upgrade title=concept-appcache-upgrade>upgrade
59180 found in the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a>
59181 <a href=#application-cache>application cache</a> in <var title="">cache group</var>,
59182 or the server reported it as "304 Not Modified" <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>, then
59185 <ol><li><p>Let <var title="">cache</var> be the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> <a href=#application-cache>application
59189 <a href=#concept-task title=concept-task>tasks</a>.</p>
59193 <p>For each entry in <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59198 user cancels the download), then create a <a href=#concept-task title=concept-task>task</a> to <a href=#fire-a-simple-event>fire a simple
59199 event</a> that is cancelable named <code title=event-appcache-error><a href=#event-appcache-error>error</a></code> at the
59200 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59201 host</a> the <code><a href=#document>Document</a></code> for this entry, if there
59204 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59208 <p>Otherwise, associate the <code><a href=#document>Document</a></code> for this entry
59211 and categorize its entry as a <a href=#concept-appcache-master title=concept-appcache-master>master entry</a>. If the
59212 resource's <a href=#url>URL</a> has a <a href=#url-fragment title=url-fragment><fragment></a> component, it must
59217 purposes of the <a href=#application-cache-download-process>application cache download
59222 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59223 <a href=#application-cache>application cache</a> in <var title="">cache
59224 group</var>, create a <a href=#concept-task title=concept-task>task</a> to
59225 <a href=#fire-a-simple-event>fire a simple event</a> that is cancelable named <code title=event-appcache-noupdate><a href=#event-appcache-noupdate>noupdate</a></code> at the
59226 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59229 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59233 <li><p>Empty <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59239 <li><p>Let the <a href=#concept-appcache-status title=concept-appcache-status>status</a> of <var title="">cache group</var> be <i>idle</i>.</li>
59241 <li><p>For each <a href=#concept-task title=concept-task>task</a> in <var title="">task list</var>, <a href=#queue-a-post-load-task title="queue a post-load
59244 <li><p>Abort the <a href=#application-cache-download-process>application cache download
59250 <a href=#application-cache>application cache</a> in <var title="">cache
59251 group</var>. Set its <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> to
59254 <li><p>For each entry in <var title="">cache group</var>'s <a href
59255 entries</a>, associate the <code><a href=#document>Document</a></code> for this entry
59258 <li><p>Set the <a href=#concept-appcache-status title=concept-appcache-status>status</a>
59261 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59262 <a href=#application-cache>application cache</a> in <var title="">cache group</var>,
59263 <a href=#queue-a-post-load-task>queue a post-load task</a> to <a href=#fire-a-simple-event>fire a simple
59264 event</a> that is cancelable named <code title=event-appcache-downloading><a href=#event-appcache-downloading>downloading</a></code> at the
59265 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59267 user agent <a href=#shows-caching-progress>shows caching progress</a>, the display of some
59274 <li><p>Add all the URLs in the list of <a href=#concept-appcache-explicit title=concept-appcache-explicit>explicit entries</a> obtained
59278 <li><p>Add all the URLs in the list of <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entries</a> obtained
59282 <li><p>If this is an <a href=#concept-appcache-upgrade title=concept-appcache-upgrade>upgrade
59283 attempt</a>, then add all the URLs of <a href=#concept-appcache-master title=concept-appcache-master>master entries</a> in the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> <a href=#application-cache>application
59284 cache</a> in <var title="">cache group</var> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
59311 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59312 <a href=#application-cache>application cache</a> in <var title="">cache
59313 group</var>, <a href=#queue-a-post-load-task>queue a post-load task</a> to fire an event
59314 with the name <code title=event-appcache-progress><a href=#event-appcache-progress>progress</a></code>, which does not
59317 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59324 the user agent <a href=#shows-caching-progress>shows caching progress</a>, the display
59327 application. <a href=#refsPROGRESS>[PROGRESS]</a></li>
59331 <p><a href=#fetch>Fetch</a> the resource, from the <a href=#origin>origin</a>
59332 of the <a href=#url>URL</a> <var title="">manifest URL</var>. If
59333 this is an <a href=#concept-appcache-upgrade title=concept-appcache-upgrade>upgrade
59334 attempt</a>, then use the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> <a href=#application-cache>application
59344 by the <a href=#fetch title=fetch>fetching</a> algorithm.</p>
59349 satisfy the <code><a href=#the-img-element>img</a></code> element on the page, as well as
59351 <a href=#fetch title=fetch>fetching</a> that image only need be
59360 5xx response <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or
59371 <p>Run the <a href=#cache-failure-steps>cache failure steps</a>.</p>
59383 <dt>If the error was a 404 or 410 HTTP response <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a></dt>
59395 <p>Copy the resource and its metadata from the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> <a href=#application-cache>application
59396 cache</a> in <var title="">cache group</var> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a>
59418 entry as an <a href=#concept-appcache-explicit title=concept-appcache-explicit>explicit
59423 entry as a <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback
59428 entry as a <a href=#concept-appcache-master title=concept-appcache-master>master
59432 whose root element is an <code><a href=#the-html-element-0>html</a></code> element with a <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute whose value
59435 <a href=#concept-appcache-foreign title=concept-appcache-foreign>foreign</a>.</p>
59439 <li><p>For each <a href=#cache-host>cache host</a> associated with an
59440 <a href=#application-cache>application cache</a> in <var title="">cache group</var>,
59441 <a href=#queue-a-post-load-task>queue a post-load task</a> to fire an event with the name
59442 <code title=event-appcache-progress><a href=#event-appcache-progress>progress</a></code>, which does
59445 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59450 agent <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort
59452 been downloaded. <a href=#refsPROGRESS>[PROGRESS]</a></li>
59454 <li><p>Store the list of <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespaces</a>,
59455 and the URLs of the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entries</a> that they
59458 <li><p>Store the URLs that form the new <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online whitelist</a> in
59461 <li><p>Store the value of the new <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online whitelist
59466 <p>For each entry in <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59473 <ol><li><p>Unassociate the <code><a href=#document>Document</a></code> for this entry from
59476 <li><p><a href=#queue-a-post-load-task>Queue a post-load task</a> to <a href=#fire-a-simple-event>fire a simple
59477 event</a> that is cancelable named <code title=event-appcache-error><a href=#event-appcache-error>error</a></code> at the
59478 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the
59479 <code><a href=#document>Document</a></code> for this entry, if there still is one. The
59481 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59487 <p>If this is a <a href=#concept-appcache-cache title=concept-appcache-cache>cache
59488 attempt</a> and this entry is the last entry in <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59492 <a href=#application-cache>application cache</a>, <var title="">new
59498 <li><p>Abort the <a href=#application-cache-download-process>application cache download
59504 group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list
59508 categorize its entry as a <a href=#concept-appcache-master title=concept-appcache-master>master entry</a>.</p>
59514 <p><a href=#fetch>Fetch</a> the resource from <var title="">manifest
59528 the <a href=#cache-failure-steps>cache failure steps</a>.</p>
59535 categorize its entry as <a href=#concept-appcache-manifest title=concept-appcache-manifest>the manifest</a>.</p>
59539 <li><p>Set the <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> of
59542 <li><p>Let <var title="">task list</var> be an empty list of <a href=#concept-task title=concept-task>tasks</a>.</p>
59546 <p>If this is a <a href=#concept-appcache-cache title=concept-appcache-cache>cache
59547 attempt</a>, then for each <a href=#cache-host>cache host</a> associated
59548 with an <a href=#application-cache>application cache</a> in <var title="">cache
59549 group</var>, create a <a href=#concept-task title=concept-task>task</a> to
59550 <a href=#fire-a-simple-event>fire a simple event</a> that is cancelable named <code title=event-appcache-cached><a href=#event-appcache-cached>cached</a></code> at the
59551 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59554 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59558 <p>Otherwise, it is an <a href=#concept-appcache-upgrade title=concept-appcache-upgrade>upgrade attempt</a>. For each
59559 <a hrefhref=#application-cache>application
59560 cache</a> in <var title="">cache group</var>, create a <a href=#concept-task title=concept-task>task</a> to <a href=#fire-a-simple-event>fire a simple
59561 event</a> that is cancelable named <code title=event-appcache-updateready><a href=#event-appcache-updateready>updateready</a></code> at the
59562 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59565 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59574 <li><p>Set the <a href=#concept-appcache-status title=concept-appcache-status>update
59578 <li><p>For each <a href=#concept-task title=concept-task>task</a> in <var title="">task list</var>, <a href=#queue-a-post-load-task title="queue a post-load
59583 <ol><li><p>Let <var title="">task list</var> be an empty list of <a href=#concept-task title=concept-task>tasks</a>.</p>
59587 <p>For each entry in <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59594 <li><p>Unassociate the <code><a href=#document>Document</a></code> for this entry from
59595 its <a href=#application-cache>application cache</a>, if it has one.</li>
59597 <li><p>Create a <a href=#concept-task title=concept-task>task</a> to
59598 <a href=#fire-a-simple-event>fire a simple event</a> that is cancelable named <code title=event-appcache-error><a href=#event-appcache-error>error</a></code> at the
59599 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the
59600 <code><a href=#document>Document</a></code> for this entry, if there still is one, and
59602 these events must be, if the user agent <a href=#shows-caching-progress>shows caching
59609 <li><p>For each <a href=#cache-host>cache host</a> still associated with an
59610 <a href=#application-cache>application cache</a> in <var title="">cache group</var>,
59611 create a <a href=#concept-task title=concept-task>task</a> to <a href=#fire-a-simple-event>fire a
59612 simple event</a> that is cancelable named <code title=event-appcache-error><a href=#event-appcache-error>error</a></code> at the
59613 <code><a href=#applicationcache>ApplicationCache</a></code> singleton of the <a href=#cache-host>cache
59616 <a href=#shows-caching-progress>shows caching progress</a>, the display of some sort of
59620 <li><p>Empty <var title="">cache group</var>'s <a href=#concept-appcache-pending-masters title=concept-appcache-pending-masters>list of pending master
59623 <li><p>If <var title="">cache group</var> has an <a href=#application-cache>application
59624 cache</a> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
59625 <i>incomplete</i>, then discard that <a href=#application-cache>application
59631 <li><p>Let the <a href=#concept-appcache-status title=concept-appcache-status>status</a>
59634 <li><p>If this was a <a href=#concept-appcache-cache title=concept-appcache-cache>cache
59638 <li><p>For each <a href=#concept-task title=concept-task>task</a> in <var title="">task list</var>, <a href=#queue-a-post-load-task title="queue a post-load
59641 <li><p>Abort the <a href=#application-cache-download-process>application cache download
59644 </ol><p>Attempts to <a href=#fetch>fetch</a> resources as part of the
59645 <a href=#application-cache-download-process>application cache download process</a> may be done with
59649 <hr><p>User agents may invoke the <a href=#application-cache-download-process>application cache download
59650 process</a>, in the background, for any <a href=#application-cache>application
59651 cache</a>, at any time (with no <a href=#cache-host>cache host</a>). This
59655 <hr><p>Each <code><a href=#document>Document</a></code> has a list of <dfn id=pending-application-cache-download-process-tasks>pending application
59658 <code><a href=#document>Document</a></code> is created, the list must be empty.</p>
59661 <var title="">task</var>, where <var title="">task</var> is a <a href=#concept-task title=concept-task>task</a> that dispatches an event on a
59662 target <code><a href=#applicationcache>ApplicationCache</a></code> object <var title="">target</var>, the user agent must run the appropriate steps
59665 <dl><dt>If <var title="">target</var>'s <code><a href=#document>Document</a></code> has
59666 <a href=#completely-loaded>completely loaded</a></dt>
59668 <dd><p><a href=#queue-a-task title="queue a task">Queue</a> the task <var title="">task</var>.</dd>
59673 <code><a href=#document>Document</a></code>'s list of <a href=#pending-application-cache-download-process-tasks>pending application cache
59676 </dl><p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#networking-task-source>networking task
59686 <code><a href=#document>Document</a></code> <var title="">document</var> and optionally a
59687 manifest <a href=#url>URL</a> <var title="">manifest URL</var>, the user
59691 <dl class=switch><dt>If there is a <var title="">manifest URL</var>, and <var title="">document</var> was loaded from an <a href=#application-cache>application
59692 cache</a>, and the URL of the <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> of that cache's
59693 <a href=#application-cache-group>application cache group</a> is <em>not</em> the same as
59698 <p>Mark the entry for the resource from which <var title="">document</var> was taken in the <a href=#application-cache>application
59699 cache</a> from which it was loaded as <a href=#concept-appcache-foreign title=concept-appcache-foreign>foreign</a>.</p>
59701 <p>Restart the current navigation from the top of the <a href=#navigate title=navigate>navigation algorithm</a>, undoing any changes
59703 by ensuring that the step to <a href=#update-the-session-history-with-the-new-page>update the session history with
59705 <a href=#concept-appcache-init title=concept-appcache-init>application cache selection
59720 <a href=#application-cache>application cache</a><!--[redundant], and either there is
59729 <a href=#application-cache>application cache</a> from which it was loaded. Invoke,
59730 in the background, the <a href=#application-cache-download-process>application cache download
59731 process</a> for that <a href=#application-cache>application cache</a>'s
59732 <a href=#application-cache-group>application cache group</a>, with <var title="">document</var> as the <a href=#cache-host>cache host</a>.</p>
59739 HTTP GET <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
59741 URL</var>, and <var title="">manifest URL</var> has the <a href=#same-origin>same
59746 <p>Invoke, in the background, the <a href=#application-cache-download-process>application cache download
59747 process</a> for <var title="">manifest URL</var>, with <var title="">document</var> as the <a href=#cache-host>cache host</a> and with
59749 the <a href=#concept-appcache-master title=concept-appcache-master>master</a>
59760 <p>The <code><a href=#document>Document</a></code> is not associated with any
59761 <a href=#application-cache>application cache</a>.</p>
59771 <p>When a <a href=#cache-host>cache host</a> is associated with an
59772 <a href=#application-cache>application cache</a> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
59774 <a href=#cache-host>cache host</a> other than those for <a href=#child-browsing-context title="child
59780 mechanism <a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
59781 equivalent</a>, or if its <a href=#url>URL</a> has a different <a href=#url-scheme title=url-scheme><scheme></a> component than the
59782 <a href=#application-cache>application cache</a>'s <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a>, then
59783 <a href=#fetch>fetch</a> the resource normally and abort these
59786 <li><p>If the resource's URL is <a href=#concept-appcache-master title=concept-appcache-master>a master entry</a>, <a href=#concept-appcache-manifest title=concept-appcache-manifest>the manifest</a>, <a href=#concept-appcache-explicit title=concept-appcache-explicit>an explicit entry</a>, or
59787 <a href=#concept-appcache-fallback title=concept-appcache-fallback>a fallback entry</a> in
59788 the <a href=#application-cache>application cache</a>, then get the resource from the
59791 <li><p>If there is an entry in the <a href=#application-cache>application cache</a>'s
59792 <a href=#concept-appcache-onlinewhitelist title=concept-appcache-onlinewhitelist>online
59793 whitelist</a> that has the <a href=#same-origin>same origin</a> as the
59794 resource's URL and that is a <a href=#prefix-match>prefix match</a> for the
59795 resource's URL, then <a href=#fetch>fetch</a> the resource normally and
59800 <p>If the resource's URL has the <a href=#same-origin>same origin</a> as the
59801 manifest's URL, and there is a <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a>
59802 <var title="">f</var> in the <a href=#application-cache>application cache</a> that
59803 is a <a href=#prefix-match>prefix match</a> for the resource's URL, then:</p>
59805 <p><a href=#fetch>Fetch</a> the resource normally. If this results in a
59806 redirect to a resource with another <a href=#origin>origin</a>
59808 <a href=#concept-http-equivalent-codes title=concept-http-equivalent-codes>or equivalent</a>,
59811 <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entry</a>
59812 corresponding to the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a>
59817 <li><p>If the <a href=#application-cache>application cache</a>'s <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online whitelist
59819 <a href=#fetch>fetch</a> the resource normally and abort these
59826 <a href=#concept-appcache-onlinewhitelist-wildcard title=concept-appcache-onlinewhitelist-wildcard>online
59828 resources that are not present in the <a href=#concept-appcache-manifest title=concept-appcache-manifest>manifest</a> will always fail
59829 to load (at least, after the <a href=#application-cache>application cache</a> has been
59861 // <a href=#concept-appcache-status title=concept-appcache-status>update status</a>
59862 const unsigned short <a href=#dom-appcache-uncached title=dom-appcache-UNCACHED>UNCACHED</a> = 0;
59863 const unsigned short <a href=#dom-appcache-idle title=dom-appcache-IDLE>IDLE</a> = 1;
59864 const unsigned short <a href=#dom-appcache-checking title=dom-appcache-CHECKING>CHECKING</a> = 2;
59865 const unsigned short <a href=#dom-appcache-downloading title=dom-appcache-DOWNLOADING>DOWNLOADING</a> = 3;
59866 const unsigned short <a href=#dom-appcache-updateready title=dom-appcache-UPDATEREADY>UPDATEREADY</a> = 4;
59867 const unsigned short <a href=#dom-appcache-obsolete title=dom-appcache-OBSOLETE>OBSOLETE</a> = 5;
59868 readonly attribute unsigned short <a href=#dom-appcache-status title=dom-appcache-status>status</a>;
59871 void <a href=#dom-appcache-update title=dom-appcache-update>update</a>();
59872 void <a href=#dom-appcache-swapcache title=dom-appcache-swapCache>swapCache</a>();
59875 attribute <a href=#function>Function</a> <a href=#handler-appcache-onchecking title=handler-appcache-onchecking>onchecking</a>;
59876 attribute <a href=#function>Function</a> <a href=#handler-appcache-onerror title=handler-appcache-onerror>onerror</a>;
59877 attribute <a href=#function>Function</a> <a href=#handler-appcache-onnoupdate title=handler-appcache-onnoupdate>onnoupdate</a>;
59878 attribute <a href=#function>Function</a> <a href=#handler-appcache-ondownloading title=handler-appcache-ondownloading>ondownloading</a>;
59879 attribute <a href=#function>Function</a> <a href=#handler-appcache-onprogress title=handler-appcache-onprogress>onprogress</a>;
59880 attribute <a href=#function>Function</a> <a href=#handler-appcache-onupdateready title=handler-appcache-onupdateready>onupdateready</a>;
59881 attribute <a href=#function>Function</a> <a href=#handler-appcache-oncached title=handler-appcache-oncached>oncached</a>;
59882 attribute <a href=#function>Function</a> <a href=#handler-appcache-onobsolete title=handler-appcache-onobsolete>onobsolete</a>;
59884 <a href=#applicationcache>ApplicationCache</a> implements <a href=#eventtarget>EventTarget</a>;</pre>
59886 <dl class=domintro><dt><var title="">cache</var> = <var title="">window</var> . <code title=dom-applicationCache><a href=#dom-applicationcache>applicationCache</a></code></dt>
59889 <p>(In a window.) Returns the <code><a href=#applicationcache>ApplicationCache</a></code> object that applies to the <a href=#active-document>active document</a> of that <code><a href=#window>Window</a></code>.</p>
59893 <dt><var title="">cache</var> = <var title="">self</var> . <code title=dom-applicationCache><a href=#dom-applicationcache>applicationCache</a></code></dt>
59896 <p>(In a shared worker.) Returns the <code><a href=#applicationcache>ApplicationCache</a></code> object that applies to the current shared worker.
59898 <a href=#refsWEBWORKERS>[WEBWORKERS]</a>
59904 <dt><var title="">cache</var> . <code title=dom-appcache-status><a href=#dom-appcache-status>status</a></code></dt>
59911 <dt><var title="">cache</var> . <code title=dom-appcache-update><a href=#dom-appcache-update>update</a></code>()</dt>
59914 <p>Invokes the <a href=#application-cache-download-process>application cache download process</a>.</p>
59916 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if there is no application cache to update.</p>
59920 <dt><var title="">cache</var> . <code title=dom-appcache-swapCache><a href=#dom-appcache-swapcache>swapCache</a></code>()</dt>
59925 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception.</p>
59937 <p>There is a one-to-one mapping from <a href=#cache-host title="cache host">cache
59938 hosts</a> to <code><a href=#applicationcache>ApplicationCache</a></code> objects. The <dfn id=dom-applicationcache title=dom-applicationCache><code>applicationCache</code></dfn>
59939 attribute on <code><a href=#window>Window</a></code> objects must return the
59940 <code><a href=#applicationcache>ApplicationCache</a></code> object associated with the
59941 <code><a href=#window>Window</a></code> object's <a href=#active-document>active document</a>. The <dfn id=dom-sharedworkerglobalscope-applicationcache title=dom-SharedWorkerGlobalScope-applicationCache><code>applicationCache</code></dfn>
59943 return the <code><a href=#applicationcache>ApplicationCache</a></code> object associated with the
59946 <a href=#refsWEBWORKERS>[WEBWORKERS]</a>
59950 <p class=note>A <code><a href=#window>Window</a></code> or
59952 <code><a href=#applicationcache>ApplicationCache</a></code> object even if that <a href=#cache-host>cache
59953 host</a> has no actual <a href=#application-cache>application cache</a>.</p>
59957 <a href=#application-cache>application cache</a> that the
59958 <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache host</a> is
59967 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
59968 host</a> is not associated with an <a href=#application-cache>application
59974 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
59975 host</a> is associated with an <a href=#application-cache>application cache</a>
59976 whose <a href=#application-cache-group>application cache group</a>'s <a href=#concept-appcache-status title=concept-appcache-status>update status</a> is
59977 <i>idle</i>, and that <a href=#application-cache>application cache</a> is the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> cache in its
59978 <a href=#application-cache-group>application cache group</a>, and the <a href=#application-cache-group>application
59979 cache group</a> is not marked as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>.</dd>
59984 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
59985 host</a> is associated with an <a href=#application-cache>application cache</a>
59986 whose <a href=#application-cache-group>application cache group</a>'s <a href=#concept-appcache-status title=concept-appcache-status>update status</a> is
59992 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
59993 host</a> is associated with an <a href=#application-cache>application cache</a>
59994 whose <a href=#application-cache-group>application cache group</a>'s <a href=#concept-appcache-status title=concept-appcache-status>update status</a> is
60000 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
60001 host</a> is associated with an <a href=#application-cache>application cache</a>
60002 whose <a href=#application-cache-group>application cache group</a>'s <a href=#concept-appcache-status title=concept-appcache-status>update status</a> is
60003 <i>idle</i>, and whose <a href=#application-cache-group>application cache group</a> is not
60004 marked as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>,
60005 but that <a href=#application-cache>application cache</a> is <em>not</em> the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> cache in its
60011 <dd><p>The <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache
60012 host</a> is associated with an <a href=#application-cache>application cache</a>
60013 whose <a href=#application-cache-group>application cache group</a> is marked as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>.</dd>
60018 invoked, the user agent must invoke the <a href=#application-cache-download-process>application cache
60019 download process</a>, in the background, for the <a href=#application-cache>application
60020 cache</a> with which the <code><a href=#applicationcache>ApplicationCache</a></code> object's
60021 <a href=#cache-host>cache host</a> is associated, but without giving that
60022 <a href=#cache-host>cache host</a> to the algorithm. If there is no such
60023 <a href=#application-cache>application cache</a>, or if it is marked as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>, then the method
60024 must raise an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception instead.</p>
60029 <ol><li><p>Check that <code><a href=#applicationcache>ApplicationCache</a></code> object's
60030 <a href=#cache-host>cache host</a> is associated with an <a href=#application-cache>application
60032 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception and abort these
60035 <li><p>Let <var title="">cache</var> be the <a href=#application-cache>application
60036 cache</a> with which the <code><a href=#applicationcache>ApplicationCache</a></code> object's
60037 <a href=#cache-host>cache host</a> is associated. (By definition, this is the
60040 <li><p>If <var title="">cache</var>'s <a href=#application-cache-group>application cache
60041 group</a> is marked as <a href=#concept-appcache-obsolete title=concept-appcache-obsolete>obsolete</a>, then unassociate
60042 the <code><a href=#applicationcache>ApplicationCache</a></code> object's <a href=#cache-host>cache host</a>
60047 <a href=#application-cache-group>application cache group</a> as <var title="">cache</var>
60048 whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness
60049 flag</a> is <i>complete</i> and that is <a href=#concept-appcache-newer title=concept-appcache-newer>newer</a> than <var title="">cache</var>. If there is not, then raise an
60050 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception and abort these
60053 <li><p>Let <var title="">new cache</var> be the <a href=#concept-appcache-newer title=concept-appcache-newer>newest</a> <a href=#application-cache>application
60054 cache</a> in the same <a href=#application-cache-group>application cache group</a> as
60055 <var title="">cache</var> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
60058 <li><p>Unassociate the <code><a href=#applicationcache>ApplicationCache</a></code> object's
60059 <a href=#cache-host>cache host</a> from <var title="">cache</var> and instead
60062 </ol><p>The following are the <a href=#event-handlers>event handlers</a> (and their
60063 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
60065 all objects implementing the <code><a href=#applicationcache>ApplicationCache</a></code>
60068 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
60069 <tbody><tr><td><dfn id=handler-appcache-onchecking title=handler-appcache-onchecking><code>onchecking</code></dfn> <td> <code title=event-appcache-checking><a href=#event-appcache-checking>checking</a></code>
60070 <tr><td><dfn id=handler-appcache-onerror title=handler-appcache-onerror><code>onerror</code></dfn> <td> <code title=event-appcache-error><a href=#event-appcache-error>error</a></code>
60071 <tr><td><dfn id=handler-appcache-onnoupdate title=handler-appcache-onnoupdate><code>onnoupdate</code></dfn> <td> <code title=event-appcache-noupdate><a href=#event-appcache-noupdate>noupdate</a></code>
60072 <tr><td><dfn id=handler-appcache-ondownloading title=handler-appcache-ondownloading><code>ondownloading</code></dfn> <td> <code title=event-appcache-downloading><a href=#event-appcache-downloading>downloading</a></code>
60073 <tr><td><dfn id=handler-appcache-onprogress title=handler-appcache-onprogress><code>onprogress</code></dfn> <td> <code title=event-appcache-progress><a href=#event-appcache-progress>progress</a></code>
60074 <tr><td><dfn id=handler-appcache-onupdateready title=handler-appcache-onupdateready><code>onupdateready</code></dfn> <td> <code title=event-appcache-updateready><a href=#event-appcache-updateready>updateready</a></code>
60075 <tr><td><dfn id=handler-appcache-oncached title=handler-appcache-oncached><code>oncached</code></dfn> <td> <code title=event-appcache-cached><a href=#event-appcache-cached>cached</a></code>
60076 <tr><td><dfn id=handler-appcache-onobsolete title=handler-appcache-onobsolete><code>onobsolete</code></dfn> <td> <code title=event-appcache-obsolete><a href=#event-appcache-obsolete>obsolete</a></code>
60082 <dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-onLine><a href=#dom-navigator-online>onLine</a></code></dt>
60100 <p>When the value that would be returned by the <code title=dom-navigator-onLine><a href
60101 the <code><a href=#window>Window</a></code> changes from true to false, the user agent
60102 must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
60104 <code><a href=#window>Window</a></code> object.</p>
60107 <code title=dom-navigator-onLine><a href=#dom-navigator-online>navigator.onLine</a></code> attribute
60108 of the <code><a href=#window>Window</a></code> changes from false to true, the user
60109 agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
60111 <code><a href=#window>Window</a></code> object.</p>
60113 <p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <a href=#networking-task-source>networking task
60133 <ul><li>Processing of <code><a href=#script>script</a></code> elements.</li>
60136 protocol"><a href=#javascript-protocol>javascript:</a></code> URLs (e.g. the <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute of <code><a href=#the-img-element>img</a></code>
60138 <code><a href=#the-style-element>style</a></code> element block).</li>
60140 <li>Event handlers, whether registered through the DOM using <code title="">addEventListener()</code>, by explicit <a href=#event-handler-content-attributes>event handler
60141 content attributes</a>, by <a href=#event-handler-idl-attributes>event handler IDL
60152 <em><a href=#browsing-context>browsing context</a></em> when all of the
60157 <li>The user has not disabled scripting for this <a href=#browsing-context>browsing
60162 <li id=sandboxScriptBlocked>The <a href=#browsing-context>browsing context</a> did
60163 not have the <a href=#sandboxed-scripts-browsing-context-flag>sandboxed scripts browsing context flag</a>
60164 set when the <a href=#browsing-context>browsing context</a>'s <a href=#active-document>active
60168 <a href=#browsing-context>browsing context</a> when any of the above conditions are
60169 false (i.e. when scripting is not <a href=#concept-bc-script title=concept-bc-script>enabled</a>).</p>
60172 <em>node</em> if the <code><a href=#document>Document</a></code> object of the node (the
60173 node itself, if it is itself a <code><a href=#document>Document</a></code> object) has an
60174 associated <a href=#browsing-context>browsing context</a>, and <a href=#concept-bc-script title=concept-bc-script>scripting is enabled</a> in that
60175 <a href=#browsing-context>browsing context</a>.</p>
60178 node if there is no such <a href=#browsing-context>browsing context</a>, or if <a href=#concept-bc-noscript title=concept-bc-noscript>scripting is disabled</a> in that
60179 <a href=#browsing-context>browsing context</a>.</p>
60216 <a href=#script-execution-environment>script execution environment</a> has a corresponding code
60235 <p class=example>This is typically a <code><a href=#window>Window</a></code>
60239 <p class=note>When a <a href="#script's-global-object">script's global object</a> is an
60243 <p>If the <a href="#script's-global-object">script's global object</a> is a
60244 <code><a href=#window>Window</a></code> object, then in JavaScript, the ThisBinding of
60246 <code><a href=#window>Window</a></code> object's <code><a href=#windowproxy>WindowProxy</a></code> object,
60247 rather than the global object. <a href=#refsECMA262>[ECMA262]</a></p>
60249 <p class=note>This is a <a href=#willful-violation>willful violation</a> of the
60256 herein. <a href=#refsECMA262>[ECMA262]</a></p>
60264 <p>A <a href=#browsing-context>browsing context</a> that is assigned responsibility
60267 <p class=example>When a script creates and <a href=#navigate title=navigate>navigates</a> a new <a href=#top-level-browsing-context>top-level browsing
60268 context</a>, the <code title=dom-opener><a href=#dom-opener>opener</a></code>
60269 attribute of the new <a href=#browsing-context>browsing context</a>'s
60270 <code><a href=#window>Window</a></code> object will be set to the <a href="#script's-browsing-context">script's
60271 browsing context</a>'s <code><a href=#windowproxy>WindowProxy</a></code> object.</p>
60279 <p>A <code><a href=#document>Document</a></code> that is assigned responsibility for
60282 <p class=example>When a script <a href=#fetch title=fetch>fetches</a> a resource, the <a href="#the-document's-current-address" title="the
60284 <a href="#script's-document">script's document</a> will be used to set the <code title=http-referer>Referer</code> (sic) header.</p>
60294 encoding is set from another source, e.g. a <a href="#document's-character-encoding">document's
60295 character encoding</a>, then the <a href="#script's-url-character-encoding">script's URL character
60305 <p>A <a href=#url>URL</a>, set when the script is created, used to
60307 base URL is set from another source, e.g. a <a href=#document-base-url>document base
60308 URL</a>, then the <a href="#script's-base-url">script's base URL</a> must follow
60322 a <a href=#concept-script title=concept-script>script</a>, for example to invoke
60323 an event listener defined in that <a href=#concept-script title=concept-script>script</a>, the user agent must run the
60326 <ol><li><p>If the <a href="#script's-global-object">script's global object</a> is a
60327 <code><a href=#window>Window</a></code> object whose <code><a href=#document>Document</a></code> object is
60328 not <a href=#fully-active>fully active</a>, then abort these steps without doing
60331 <li><p>Set the <a href=#entry-script>entry script</a> to be the <a href=#concept-script title=concept-script>script</a> being invoked.</li>
60333 <li><p>Make the <a href=#script-execution-environment title="script execution environment">script
60334 execution environment</a> for the <a href=#concept-script title=concept-script>script</a> execute the code for the given
60337 <li><p>Set the <a href=#entry-script>entry script</a> back to whatever it was
60349 <p>When the specification says that a <a href=#concept-script title=concept-script>script</a> is to be <dfn id=create-a-script title="create a
60355 <ol><li><p>If <a href=#concept-bc-noscript title=concept-bc-noscript>scripting is
60356 disabled</a> for <a href=#browsing-context>browsing context</a> passed to this
60360 <li><p>Set up a <a href=#script-execution-environment>script execution environment</a> as
60364 <a href=#script-execution-environment>script execution environment</a>, as appropriate for the
60365 scripting language, and thus obtain the <a href=#list-of-code-entry-points>list of code
60368 executable code to be immediately run, then the <i><a href=#initial-code-entry-point>initial code
60371 <li><p>Set up the <a href="#script's-global-object">script's global object</a>, the
60372 <a href="#script's-browsing-context">script's browsing context</a>, the <a href="#script's-document">script's
60373 document</a>, the <a href="#script's-url-character-encoding">script's URL character encoding</a>,
60374 and the <a href="#script's-base-url">script's base URL</a> from the settings passed to
60377 <li><p><a href=#jump-to-a-code-entry-point title="jump to a code entry-point">Jump</a> to the
60378 <a href=#concept-script title=concept-script>script</a>'s <i><a href=#initial-code-entry-point>initial code
60383 context, the user agent must <a href=#create-a-script>create a script</a>, using the
60387 resulting <a href=#concept-script title=concept-script>script</a> are not
60390 <hr><p>When the specification says that a <a href=#concept-script title=concept-script>script</a> is to be <dfn id=create-a-script-from-a-node title="create a
60392 language, the user agent must <a href=#create-a-script>create a script</a>, using
60393 the given script source and scripting language, and using <a href=#the-script-settings-determined-from-the-node>the
60399 <code><a href=#document>Document</a></code> of <var title="">node</var> (or <var title="">node</var> itself if it is a
60400 <code><a href=#document>Document</a></code>).</li>
60402 <li><p>The browsing context is the <a href=#browsing-context>browsing context</a> of
60405 <li><p>The global object is the <code><a href=#window>Window</a></code> object of
60408 <li><p>The URL character encoding is the <a href="#document's-character-encoding" title="document's
60409 character encoding">character encoding</a> of <var title="">document</var>. (<a href=#sce-not-copy>This is a
60412 <li><p>The base URL is the <a href=#document-base-url title="document base URL">base
60413 URL</a> of <var title="">document</var>. (<a href=#sbu-not-copy>This is a reference, not a copy</a>.)</li>
60425 may either throw a <code><a href=#quota_exceeded_err>QUOTA_EXCEEDED_ERR</a></code> exception, abort
60443 <code title=dom-alert><a href=#dom-alert>window.alert()</a></code> API) or because of a
60462 <p>There must be at least one <a href=#event-loop>event loop</a> per user
60463 agent, and at most one <a href=#event-loop>event loop</a> per <a href=#unit-of-related-similar-origin-browsing-contexts>unit of
60466 <p>An <a href=#event-loop>event loop</a> always has at least one <a href=#browsing-context>browsing
60467 context</a>. If an <a href=#event-loop>event loop</a>'s <a href=#browsing-context title="browsing context">browsing contexts</a> all go away, then
60468 the <a href=#event-loop>event loop</a> goes away as well. A <a href=#browsing-context>browsing
60469 context</a> always has an <a href=#event-loop>event loop</a> coordinating
60478 <p>An <a href=#event-loop>event loop</a> has one or more <dfn id=task-queue title="task
60479 queue">task queues</dfn>. A <a href=#task-queue>task queue</a> is an ordered
60486 <p>Asynchronously dispatching an <code><a href=#event>Event</a></code> object at a
60487 particular <code><a href=#eventtarget>EventTarget</a></code> object is a task.</p>
60489 <p class=note>Not all events are dispatched using the <a href=#task-queue>task
60498 <dd><p>The <a href=#html-parser>HTML parser</a> tokenizing a single byte, and
60509 <dd><p>When an algorithm <a href=#fetch title=fetch>fetches</a> a
60518 manipulation, e.g. when that element is <a href=#insert-an-element-into-a-document title="insert an
60522 given task to one of the <a href=#task-queue title="task queue">task queues</a>
60523 of the relevant <a href=#event-loop>event loop</a>. All the tasks from one
60526 for the parser) must always be added to the same <a href=#task-queue>task
60527 queue</a>, but tasks from different <a href=#task-source title="task
60528 source">task sources</a> may be placed in different <a href=#task-queue title="task queue">task queues</a>.</p>
60531 <a href=#task-queue>task queue</a> for mouse and key events (the <a href=#user-interaction-task-source>user
60536 processing events from any one <a href=#task-source>task source</a> out of
60539 <p>Each <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> onto a <a href=#task-queue>task queue</a> of
60540 an <a href=#event-loop>event loop</a> defined by this specification is
60541 associated with a <code><a href=#document>Document</a></code>; if the task was queued in
60543 <code><a href=#document>Document</a></code>; if the task was queued in the context of a
60544 <a href=#browsing-context>browsing context</a>, then it is the <a href=#browsing-context>browsing
60545 context</a>'s <a href=#active-document>active document</a> at the time the task
60546 was queued; if the task was queued by or for a <a href=#concept-script title=concept-script>script</a> then the document is the
60547 <a href="#script's-document">script's document</a>.</p>
60551 like cookies. At any one point, the <a href=#storage-mutex>storage mutex</a> is
60552 either free, or owned by a particular <a href=#event-loop>event loop</a> or
60553 instance of the <a href=#fetch title=fetch>fetching</a> algorithm.</p>
60555 <p>Whenever a <a href=#concept-script title=concept-script>script</a> calls into
60556 a <a href=#plugin>plugin</a>, and whenever a <a href=#plugin>plugin</a> calls into
60557 a <a href=#concept-script title=concept-script>script</a>, the user agent must
60558 release the <a href=#storage-mutex>storage mutex</a>.</p>
60563 <p>An <a href=#event-loop>event loop</a> must continually run through the
60566 <ol><li><p>Run the oldest <a href=#concept-task title=concept-task>task</a> on one
60567 of the <a href=#event-loop>event loop</a>'s <a href=#task-queue title="task queue">task
60569 <code><a href=#document>Document</a></code>s are not <a href=#fully-active>fully active</a>. The user
60570 agent may pick any <a href=#task-queue>task queue</a>.</li>
60572 <li><p>If the <a href=#storage-mutex>storage mutex</a> is now owned by the
60573 <a href=#event-loop>event loop</a>, release it so that it is once again
60576 <li><p>Remove that task from its <a href=#task-queue>task queue</a>.</li>
60582 <p class=note>A <a href=#synchronous-section>synchronous section</a> never mutates
60585 <p class=note>Steps in <a href=#synchronous-section title="synchronous
60590 <code><a href=#document>Document</a></code> or <a href=#browsing-context>browsing context</a> to reflect
60593 <li><p>Return to the first step of the <a href=#event-loop>event
60600 <ol><li><p>Let <var title="">task source</var> be the <a href=#task-source>task
60601 source</a> of the currently running <a href=#concept-task title=concept-task>task</a>.</li>
60603 <li><p>Stop the currently running <a href=#concept-task title=concept-task>task</a>, allowing the <a href=#event-loop>event
60610 <li><p><a href=#queue-a-task>Queue a task</a> to continue running these steps,
60611 using the <a href=#task-source>task source</a> <var title="">task
60619 <a href=#concept-task title=concept-task>task</a> until some condition has been
60620 met. While a user agent has a paused <a href=#concept-task title=concept-task>task</a>, the corresponding <a href=#event-loop>event
60621 loop</a> must not run further <a href=#concept-task title=concept-task>tasks</a>, and any script in the currently
60622 running <a href=#concept-task title=concept-task>task</a> must block. User
60624 albeit in a reduced capacity since the <a href=#event-loop>event loop</a> will
60628 part of running a <a href=#concept-task title=concept-task>task</a>, it must
60631 <ol><li><p>If the <a href=#storage-mutex>storage mutex</a> is already owned by this
60632 <a href=#concept-task title=concept-task>task</a>'s <a href=#event-loop>event loop</a>,
60635 <li><p>Otherwise, <a href=#pause>pause</a> until the <a href=#storage-mutex>storage
60636 mutex</a> can be taken by the <a href=#event-loop>event loop</a>.</li>
60638 <li><p>Take ownership of the <a href=#storage-mutex>storage mutex</a>.</li>
60647 <p>The following <a href=#task-source title="task source">task sources</a> are
60655 <p>This <a href=#task-source>task source</a> is used for features that react
60657 when an element is <a href=#insert-an-element-into-a-document title="insert an element into a
60664 source</span>. <a href="#refsDOMEVENTS">[DOMEVENTS]</a></p>
60673 <p>This <a href=#task-source>task source</a> is used for features that react
60676 <p>Asynchronous events sent in response to user input (e.g. <code title=event-click><a href=#event-click>click</a></code> events) must be dispatched using
60677 <a href=#concept-task title=concept-task>tasks</a> <a href=#queue-a-task title="queue a
60678 task">queued</a> with the <a href=#user-interaction-task-source>user interaction task
60679 source</a>. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
60687 <p>This <a href=#task-source>task source</a> is used for features that trigger
60698 <p>This <a href=#task-source>task source</a> is used to queue calls to <code title=dom-history-back><a href=#dom-history-back>history.back()</a></code> and similar
60712 <p>When a <a href=#url>URL</a> using the <code title="">javascript:</code> protocol is <dfn id=concept-js-deref title=concept-js-deref>dereferenced</dfn>, the user agent must run
60716 content retrieval operation defined for <code title="">javascript:</code> URLs. <a href=#refsJSURL>[JSURL]</a></li>
60722 <dl><dt>If a <a href=#browsing-context>browsing context</a> is being <a href=#navigate title=navigate>navigated</a> to a <code>javascript:</code>
60723 URL, and the <a href=#active-document>active document</a> of that browsing
60724 context has the <a href=#same-origin>same origin</a> as the script given by
60731 <p>Let <var title="">address</var> be the <a href="#the-document's-address" title="the
60732 document's address">address</a> of the <a href=#active-document>active
60733 document</a> of the <a href=#browsing-context>browsing context</a> being
60736 <p>If <var title="">address</var> is <code><a href=#about:blank>about:blank</a></code>,
60737 and the <a href=#browsing-context>browsing context</a> being navigated has a
60738 <a href=#creator-browsing-context>creator browsing context</a>, then let <var title="">address</var> be the <a href="#the-document's-address" title="the document's
60739 address">address</a> of the <a href=#creator-document>creator
60742 <p><a href=#create-a-script-from-a-node title="create a script from a node">Create a
60743 script</a> from the <code><a href=#document>Document</a></code> node of the
60744 <a href=#active-document>active document</a>, using the aforementioned script
60748 <i><a href=#initial-code-entry-point>initial code entry-point</a></i> of this <a href=#concept-script title=concept-script>script</a>. If an exception was
60750 result will be void also if <a href=#concept-bc-noscript title=concept-bc-noscript>scripting is disabled</a>.)</p>
60752 <p>When it comes time to <a href="#set-the-document's-address">set the document's address</a>
60753 in the <a href=#navigate title=navigate>navigation algorithm</a>, use
60754 <var title="">address</var> as the <a href=#override-url>override
60759 <dt>If the <code><a href=#document>Document</a></code> object of the element,
60761 URL was reached has an associated <a href=#browsing-context>browsing
60766 <p><a href=#create-an-impotent-script>Create an impotent script</a> using the
60768 JavaScript, and with the <code><a href=#document>Document</a></code>'s object's
60769 <a href=#browsing-context>browsing context</a> as the browsing context.</p>
60772 <i><a href=#initial-code-entry-point>initial code entry-point</a></i> of this <a href=#concept-script title=concept-script>script</a>. If an exception was
60774 result will be void also if <a href=#concept-bc-noscript title=concept-bc-noscript>scripting is disabled</a>.)</p>
60795 HTTP resource with a 200 OK response whose <a href=#content-type title=Content-Type>Content-Type metadata</a> is
60796 <code><a href=#text/html>text/html</a></code> and whose response body is the return value
60799 <p class=note>Certain contexts, in particular <code><a href=#the-img-element>img</a></code>
60800 elements, ignore the <a href=#content-type title=Content-Type>Content-Type
60808 <code title=attr-img-src><a href=#attr-img-src>src</a></code> attribute of an
60809 <code><a href=#the-img-element>img</a></code> element would be evaluated in the context of an
60813 <p>A <code title="">javascript:</code> URL in an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute of an <code><a href=#the-a-element>a</a></code>
60814 element would only be evaluated when the link was <a href=#following-hyperlinks title="following hyperlinks">followed</a>.</p>
60816 <p>The <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code> attribute of an
60817 <code><a href=#the-iframe-element>iframe</a></code> element would be evaluated in the context of
60818 the <code><a href=#the-iframe-element>iframe</a></code>'s own <a href=#browsing-context>browsing context</a>; once
60820 <a href=#browsing-context>browsing context</a>'s document, thus changing the
60821 variables visible in that <a href=#browsing-context>browsing context</a>.</p>
60837 <!--test: <a href="http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A...%3Cscript%3E%0Aw(a%3Ddocument.implementation.createDocument(null%2C%20null%2C%20null))%3B%0Aw(a.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'html')))%3B%0Aw(b%3Da.firstChild.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'body')))%3B%0Aw(b.test%20%3D%20w)%3B%0Aw(b.setAttribute('onclick'%2C%20'test(%22fire%3A%20%22%20%2B%20event)'))%3B%0Aw(b.onclick)%3B%0Aw(e%3Da.createEvent('Event'))%3B%0Aw(e.initEvent('click'%2C%20false%2C%20false))%3B%0Aw(b.dispatchEvent(e))%3B%0A%3C%2Fscript%3E">test</a>-->
60843 <p>An <a href=#event-handlers title="event handlers">event handler</a> can either
60844 have the value null or be set to a <code><a href=#function>Function</a></code>
60850 <p>The first way, common to all event handlers, is as an <a href=#event-handler-idl-attributes title="event handler IDL attributes">event handler IDL
60853 <p>The second way is as an <a href=#event-handler-content-attributes title="event handler content
60855 on <a href=#html-elements>HTML elements</a> and some of the event handlers on
60856 <code><a href=#window>Window</a></code> objects are exposed in this way.</p>
60865 <p>If an <a href=#event-handler-idl-attributes title="event handler IDL attributes">event handler
60866 IDL attribute</a> exposes an <a href=#event-handlers title="event handlers">event
60870 <p class=note>This can happen in particular for <a href=#event-handler-idl-attributes title="event
60872 <code><a href=#the-body-element-0>body</a></code> elements that do not have corresponding
60873 <code><a href=#window>Window</a></code> objects.</p>
60876 requirements, in particular the <code title=handler-MessagePort-onmessage><a href=#handler-messageport-onmessage>onmessage</a></code> attribute of
60877 <code><a href=#messageport>MessagePort</a></code> objects.</p>
60882 contain valid JavaScript code matching the <code title="">FunctionBody</code> production. <a href=#refsECMA262>[ECMA262]</a></p>
60887 <p>When an <a href=#event-handler-content-attributes title="event handler content attributes">event
60889 a <code><a href=#document>Document</a></code> that is in a <a href=#browsing-context>browsing context</a>,
60890 and <a href=#concept-bc-script title=concept-bc-script>scripting is enabled</a> for
60891 that <a href=#browsing-context>browsing context</a>, the user agent must run the
60892 following steps to create a <a href=#concept-script title=concept-script>script</a> after setting the content
60895 <ol><li><p>Set up a <a href=#script-execution-environment>script execution environment</a> for
60908 <dl class=switch><dt>If the attribute is the <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code> attribute of the
60909 <code><a href=#window>Window</a></code> object</dt>
60921 <dd>The <a href=#event-handler-content-attributes title="event handler content attributes">event
60929 NewObjectEnvironment(the element's <code><a href=#document>Document</a></code>, the
60932 <li>If the element has a <a href=#form-owner>form owner</a>, let <var title="">Scope</var> be the result of NewObjectEnvironment(the
60933 element's <a href=#form-owner>form owner</a>, <var title="">Scope</var>).</li>
60939 edition 5 section 10.2.2.3 NewObjectEnvironment (O, E). <a href=#refsECMA262>[ECMA262]</a></p>
60948 <a href=#list-of-code-entry-points>list of code entry-points</a>.</p>
60953 the corresponding <a href=#event-handlers title="event handlers">event handler</a>
60956 <li><p>Set up the <a href="#script's-global-object">script's global object</a>, the
60957 <a href="#script's-browsing-context">script's browsing context</a>, the <a href="#script's-document">script's
60958 document</a>, the <a href="#script's-url-character-encoding">script's URL character encoding</a>,
60959 and the <a href="#script's-base-url">script's base URL</a> from <a href=#the-script-settings-determined-from-the-node>the script
60963 <li><p>Set the corresponding <a href=#event-handlers title="event handlers">event
60967 agent must set the corresponding <a href=#event-handlers title="event handlers">event
60977 <p class=note>When an <a href=#event-handler-content-attributes title="event handler content
60979 element owned by a <code><a href=#document>Document</a></code> that is not in a
60980 <a href=#browsing-context>browsing context</a>, the corresponding event handler is
60987 <hr><p>All <a href=#event-handlers>event handlers</a> on an object, whether an element
60989 <code><a href=#function>Function</a></code> object, must be registered as event listeners
60991 method on the object's <code><a href=#eventtarget>EventTarget</a></code> interface had been
60998 <code><a href=#function>Function</a></code> object, and set to invoke the <code title=dom-function-call><a href=#dom-function-call>call()</a></code> callback of the
60999 <code><a href=#function>Function</a></code> object associated with the event handler
61004 <p class=note><a href=#event-handlers>Event handlers</a> <span class=impl>therefore</span> always fire before event listeners
61010 argument is emphatically <em>not</em> the <a href=#event-handlers title="event
61014 not influence whether an <a href=#event-handlers title="event handlers">event
61017 <p>When an <a href=#event-handlers title="event handlers">event handler</a>'s
61018 <code><a href=#function>Function</a></code> object is invoked, its <code title=dom-function-call><a href=#dom-function-call>call()</a></code> callback must be invoked
61019 with one argument, set to the <code><a href=#event>Event</a></code> object of the event
61029 <dt>If the event object is a <code><a href=#beforeunloadevent>BeforeUnloadEvent</a></code> object</dt>
61032 <code title=dom-BeforeUnloadEvent-returnValue><a href=#dom-beforeunloadevent-returnvalue>returnValue</a></code>
61033 attribute's value is the empty string, then set the <code title=dom-BeforeUnloadEvent-returnValue><a href=#dom-beforeunloadevent-returnvalue>returnValue</a></code>
61045 <hr><p>The <code><a href=#function>Function</a></code> interface represents a function in the
61051 any <a href=#dom-function-call title=dom-function-call>call</a>(in any... arguments);
61060 <p>If the <code><a href=#function>Function</a></code> object is a JavaScript <code title="">Function</code>, then when it is invoked by the user agent,
61063 the <a href=#event-handlers title="event handlers">event handler</a>'s object. <a href=#refsECMA262>[ECMA262]</a></p>
61086 <h5 id=event-handlers-on-elements,-document-objects,-and-window-objects><span class=secno>7.1.6.2 </span>Event handlers on elements, <code><a href=#document>Document</a></code> objects, and <code><a href=#window>Window</a></code> objects</h5>
61088 <p>The following are the <a href=#event-handlers>event handlers</a> (and their
61089 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
61090 event types</a>) that must be supported by all <a href=#html-elements>HTML
61092 on <code><a href=#document>Document</a></code> and <code><a href=#window>Window</a></code> objects, as IDL
61095 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
61097 <tr><td><dfn id=handler-oncanplay title=handler-oncanplay><code>oncanplay</code></dfn> <td> <code title=event-media-canplay><a href=#event-media-canplay>canplay</a></code>
61098 <tr><td><dfn id=handler-oncanplaythrough title=handler-oncanplaythrough><code>oncanplaythrough</code></dfn> <td> <code title=event-media-canplaythrough><a href=#event-media-canplaythrough>canplaythrough</a></code>
61100 href=#event-click>click</a></code> <!-- widely used -->
61103 <tr><td><dfn id=handler-ondrag title=handler-ondrag><code>ondrag</code></dfn> <td> <code title=event-drag><a href=#event-drag>drag</a></code>
61104 <tr><td><dfn id=handler-ondragend title=handler-ondragend><code>ondragend</code></dfn> <td> <code title=event-dragend><a href=#event-dragend>dragend</a></code>
61105 <tr><td><dfn id=handler-ondragenter title=handler-ondragenter><code>ondragenter</code></dfn> <td> <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code>
61106 <tr><td><dfn id=handler-ondragleave title=handler-ondragleave><code>ondragleave</code></dfn> <td> <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code>
61107 <tr><td><dfn id=handler-ondragover title=handler-ondragover><code>ondragover</code></dfn> <td> <code title=event-dragover><a href=#event-dragover>dragover</a></code>
61108 <tr><td><dfn id=handler-ondragstart title=handler-ondragstart><code>ondragstart</code></dfn> <td> <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> <!-- widely used -->
61109 <tr><td><dfn id=handler-ondrop title=handler-ondrop><code>ondrop</code></dfn> <td> <code title=event-drop><a href=#event-drop>drop</a></code>
61110 <tr><td><dfn id=handler-ondurationchange title=handler-ondurationchange><code>ondurationchange</code></dfn> <td> <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code>
61111 <tr><td><dfn id=handler-onemptied title=handler-onemptied><code>onemptied</code></dfn> <td> <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code>
61112 <tr><td><dfn id=handler-onended title=handler-onended><code>onended</code></dfn> <td> <code title=event-media-ended><a href=#event-media-ended>ended</a></code>
61120 <tr><td><dfn id=handler-onloadeddata title=handler-onloadeddata><code>onloadeddata</code></dfn> <td> <code title=event-media-loadeddata><a href=#event-media-loadeddata>loadeddata</a></code>
61121 <tr><td><dfn id=handler-onloadedmetadata title=handler-onloadedmetadata><code>onloadedmetadata</code></dfn> <td> <code title=event-media-loadedmetadata><a href=#event-media-loadedmetadata>loadedmetadata</a></code>
61122 <tr><td><dfn id=handler-onloadstart title=handler-onloadstart><code>onloadstart</code></dfn> <td> <code title=event-media-loadstart><a href=#event-media-loadstart>loadstart</a></code>
61129 <tr><td><dfn id=handler-onpause title=handler-onpause><code>onpause</code></dfn> <td> <code title=event-media-pause><a href=#event-media-pause>pause</a></code>
61130 <tr><td><dfn id=handler-onplay title=handler-onplay><code>onplay</code></dfn> <td> <code title=event-media-play><a href=#event-media-play>play</a></code>
61131 <tr><td><dfn id=handler-onplaying title=handler-onplaying><code>onplaying</code></dfn> <td> <code title=event-media-playing><a href=#event-media-playing>playing</a></code>
61132 <tr><td><dfn id=handler-onprogress title=handler-onprogress><code>onprogress</code></dfn> <td> <code title=event-media-progress><a href=#event-media-progress>progress</a></code>
61133 <tr><td><dfn id=handler-onratechange title=handler-onratechange><code>onratechange</code></dfn> <td> <code title=event-media-ratechange><a href=#event-media-ratechange>ratechange</a></code>
61136 <tr><td><dfn id=handler-onseeked title=handler-onseeked><code>onseeked</code></dfn> <td> <code title=event-media-seeked><a href=#event-media-seeked>seeked</a></code>
61137 <tr><td><dfn id=handler-onseeking title=handler-onseeking><code>onseeking</code></dfn> <td> <code title=event-media-seeking><a href=#event-media-seeking>seeking</a></code>
61140 <tr><td><dfn id=handler-onstalled title=handler-onstalled><code>onstalled</code></dfn> <td> <code title=event-media-stalled><a href=#event-media-stalled>stalled</a></code>
61142 <tr><td><dfn id=handler-onsuspend title=handler-onsuspend><code>onsuspend</code></dfn> <td> <code title=event-media-suspend><a href=#event-media-suspend>suspend</a></code>
61143 <tr><td><dfn id=handler-ontimeupdate title=handler-ontimeupdate><code>ontimeupdate</code></dfn> <td> <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code>
61144 <tr><td><dfn id=handler-onvolumechange title=handler-onvolumechange><code>onvolumechange</code></dfn> <td> <code title=event-media-volumechange><a href=#event-media-volumechange>volumechange</a></code>
61145 <tr><td><dfn id=handler-onwaiting title=handler-onwaiting><code>onwaiting</code></dfn> <td> <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code>
61153 </table><hr><p>The following are the <a href=#event-handlers>event handlers</a> (and their
61154 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
61155 event types</a>) that must be supported by all <a href=#html-elements>HTML
61156 elements</a> other than <code><a href=#the-body-element-0>body</a></code>, as both content
61157 attributes and IDL attributes, and on <code><a href=#document>Document</a></code> objects,
61160 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
61165 </table><hr><p>The following are the <a href=#event-handlers>event handlers</a> (and their
61166 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
61167 event types</a>) that must be supported by <code><a href=#window>Window</a></code>
61168 objects, as IDL attributes on the <code><a href=#window>Window</a></code> object, and
61170 the <code><a href=#the-body-element-0>body</a></code> and <code><a href=#frameset>frameset</a></code> elements:</p>
61172 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
61179 <tr><td><dfn id=handler-window-onhashchange title=handler-window-onhashchange><code>onhashchange</code></dfn> <td> <code title=event-hashchange><a href=#event-hashchange>hashchange</a></code> <!-- new -->
61181 <tr><td><dfn id=handler-window-onmessage title=handler-window-onmessage><code>onmessage</code></dfn> <td> <code title=event-message><a href=#event-message>message</a></code> <!-- new for postMessage -->
61182 <tr><td><dfn id=handler-window-onoffline title=handler-window-onoffline><code>onoffline</code></dfn> <td> <code title=event-offline><a href=#event-offline>offline</a></code> <!-- new -->
61183 <tr><td><dfn id=handler-window-ononline title=handler-window-ononline><code>ononline</code></dfn> <td> <code title=event-online><a href=#event-online>online</a></code> <!-- new -->
61184 <tr><td><dfn id=handler-window-onpagehide title=handler-window-onpagehide><code>onpagehide</code></dfn> <td> <code title=event-pagehide><a href=#event-pagehide>pagehide</a></code> <!-- new -->
61185 <tr><td><dfn id=handler-window-onpageshow title=handler-window-onpageshow><code>onpageshow</code></dfn> <td> <code title=event-pageshow><a href=#event-pageshow>pageshow</a></code> <!-- new -->
61186 <tr><td><dfn id=handler-window-onpopstate title=handler-window-onpopstate><code>onpopstate</code></dfn> <td> <code title=event-popstate><a href=#event-popstate>popstate</a></code> <!-- new -->
61187 <tr><td><dfn id=handler-window-onredo title=handler-window-onredo><code>onredo</code></dfn> <td> <code title=event-redo><a href=#event-redo>redo</a></code> <!-- new -->
61190 <tr><td><dfn id=handler-window-onundo title=handler-window-onundo><code>onundo</code></dfn> <td> <code title=event-undo><a href=#event-undo>undo</a></code> <!-- new -->
61192 </table><p class=note>The <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code>
61193 handler is also used for <a href=#runtime-script-errors>reporting script errors</a>.</p>
61203 elements. For example, the <code title=dom-click><a href=#dom-click>click()</a></code>
61204 method on the <code><a href=#htmlelement>HTMLElement</a></code> interface is defined as
61205 firing a <code title=event-click><a href=#event-click>click</a></code> event on the
61206 element. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
61208 <p><dfn id=fire-a-click-event title="fire a click event">Firing a <code title=event-click>click</code> event</dfn> means that a <code title=event-click><a href=#event-click>click</a></code> event, which bubbles and is
61221 which uses the <code><a href=#event>Event</a></code> interface, must be dispatched at
61253 set to zero. <a href="#r-e-f-sPROGRESS">[PROGRESS]</a></p>
61264 <h5 id=events-and-the-window-object><span class=secno>7.1.6.4 </span>Events and the <code><a href=#window>Window</a></code> object</h5>
61267 <code><a href=#document>Document</a></code> in a <a href=#browsing-context>browsing context</a>, if the
61269 agent must also dispatch the event to the <code><a href=#window>Window</a></code>, as
61273 <code><a href=#window>Window</a></code> object before propagating to any of the nodes,
61274 as if the <code><a href=#window>Window</a></code> object was the parent of the
61275 <code><a href=#document>Document</a></code> in the dispatch chain.</li>
61278 <code><a href=#window>Window</a></code> object at the end of the phase, unless bubbling
61279 has been prevented, again as if the <code><a href=#window>Window</a></code> object was
61280 the parent of the <code><a href=#document>Document</a></code> in the dispatch chain.</li>
61293 scripts associated with a <code><a href=#document>Document</a></code>, the user agent must
61294 <a href=#report-the-error>report the error</a> using the <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code> <a href=#event-handlers title="event
61295 handlers">event handler</a> of the <a href="#script's-global-object">script's global
61296 object</a>. If the error is still <i title=concept-error-nothandled><a href=#concept-error-nothandled>not handled</a></i> after this, then
61301 <a href=#event-handlers title="event handlers">event handler</a> <var title="">onerror</var>, it must run these steps, after which the
61305 <code><a href=#function>Function</a></code></dt>
61312 reporting, the second must give the <a href=#absolute-url>absolute URL</a> of
61316 <p>If the function returns false, then the error is <i title=concept-error-handled><a href=#concept-error-handled>handled</a></i>. Otherwise, the error is
61317 <i title=concept-error-nothandled><a href=#concept-error-nothandled>not handled</a></i>.</p>
61321 that the function was called for; the <a href=#report-the-error title="report the
61331 <p>The error is <i title=concept-error-nothandled><a href=#concept-error-nothandled>not handled</a></i>.</p>
61340 <p>The <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout()</a></code>
61341 and <code title=dom-windowtimers-setInterval><a href=#dom-windowtimers-setinterval>setInterval()</a></code>
61346 long <a href=#dom-windowtimers-settimeout title=dom-windowtimers-setTimeout>setTimeout</a>(in any handler, in optional any timeout, in any... args);
61347 void <a href=#dom-windowtimers-cleartimeout title=dom-windowtimers-clearTimeout>clearTimeout</a>(in long handle);
61348 long <a href=#dom-windowtimers-setinterval title=dom-windowtimers-setInterval>setInterval</a>(in any handler, in optional any timeout, in any... args);
61349 void <a href=#dom-windowtimers-clearinterval title=dom-windowtimers-clearInterval>clearInterval</a>(in long handle);
61351 <a href=#window>Window</a> implements <a href=#windowtimers>WindowTimers</a>;</pre>
61353 <dl class=domintro><dt><var title="">handle</var> = <var title="">window</var> . <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout</a></code>( <var title="">handler</var> [, <var title="">timeout</var> [, <var title="">arguments</var> ] ] )</dt>
61362 <dt><var title="">handle</var> = <var title="">window</var> . <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout</a></code>( <var title="">code</var> [, <var title="">timeout</var> ] )</dt>
61371 <dt><var title="">window</var> . <code title=dom-windowtimers-clearTimeout><a href=#dom-windowtimers-cleartimeout>clearTimeout</a></code>( <var title="">handle</var> )</dt>
61375 <p>Cancels the timeout set with <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout()</a></code> identified by <var title="">handle</var>.</p>
61379 <dt><var title="">handle</var> = <var title="">window</var> . <code title=dom-windowtimers-setInterval><a href=#dom-windowtimers-setinterval>setInterval</a></code>( <var title="">handler</var> [, <var title="">timeout</var> [, <var title="">arguments</var> ] ] )</dt>
61388 <dt><var title="">handle</var> = <var title="">window</var> . <code title=dom-windowtimers-setInterval><a href=#dom-windowtimers-setinterval>setInterval</a></code>( <var title="">code</var> [, <var title="">timeout</var> ] )</dt>
61397 <dt><var title="">window</var> . <code title=dom-windowtimers-clearInterval><a href=#dom-windowtimers-clearinterval>clearInterval</a></code>( <var title="">handle</var> )</dt>
61401 <p>Cancels the timeout set with <code title=dom-windowtimers-setInterval><a href=#dom-windowtimers-setinterval>setInterval()</a></code> identified by <var title="">handle</var>.</p>
61411 <p class=note>The <code><a href=#windowtimers>WindowTimers</a></code> interface adds to the
61412 <code><a href=#window>Window</a></code> interface and the <code>WorkerUtils</code>
61415 <p>Each object that implements the <code><a href=#windowtimers>WindowTimers</a></code>
61419 of the object that implements the <code><a href=#windowtimers>WindowTimers</a></code>
61429 <li><p>Add an entry to the <a href=#list-of-active-timeouts>list of active timeouts</a> for
61432 <li><p><a href=#get-the-timed-task>Get the timed task</a> <var title="">handle</var> in
61433 the <a href=#list-of-active-timeouts>list of active timeouts</a>, and let <var title="">task</var> be the result.</li>
61435 <li><p><a href=#get-the-timeout>Get the timeout</a>, and let <var title="">timeout</var> be the result.</li>
61437 <li><p>If the currently running <a href=#concept-task title=concept-task>task</a> is a task that was created by the
61438 <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout()</a></code>
61447 <p>If the <a href=#method-context>method context</a> is a <code><a href=#window>Window</a></code>
61448 object, wait until the <code><a href=#document>Document</a></code> associated with the
61449 <a href=#method-context>method context</a> has been <a href=#fully-active>fully active</a> for
61453 <p>Otherwise, if the <a href=#method-context>method context</a> is a
61458 that the <code><a href=#windowtimers>WindowTimers</a></code> interface is implemented by
61467 <li><p><a href=#queue-a-task title="queue a task">Queue</a> the <var title="">task</var> <a href=#concept-task title=concept-task>task</a>.</li>
61471 from the <a href=#list-of-active-timeouts>list of active timeouts</a> of the
61472 <code><a href=#windowtimers>WindowTimers</a></code> object on which the method was invoked,
61483 <li><p>Add an entry to the <a href=#list-of-active-intervals>list of active intervals</a> for
61486 <li><p><a href=#get-the-timed-task>Get the timed task</a> <var title="">handle</var> in
61487 the <a href=#list-of-active-intervals>list of active intervals</a>, and let <var title="">task</var> be the result.</li>
61489 <li><p><a href=#get-the-timeout>Get the timeout</a>, and let <var title="">timeout</var> be the result.</li>
61503 <p><i title="">Wait</i>: If the <a href=#method-context>method context</a> is a
61504 <code><a href=#window>Window</a></code> object, wait until the <code><a href=#document>Document</a></code>
61505 associated with the <a href=#method-context>method context</a> has been <a href=#fully-active>fully
61509 <p>Otherwise, if the <a href=#method-context>method context</a> is a
61514 that the <code><a href=#windowtimers>WindowTimers</a></code> interface is implemented by
61519 <li><p><a href=#queue-a-task title="queue a task">Queue</a> the <var title="">task</var> <a href=#concept-task title=concept-task>task</a>.</li>
61525 from the <a href=#list-of-active-intervals>list of active intervals</a> of the
61526 <code><a href=#windowtimers>WindowTimers</a></code> object on which the method was invoked,
61532 algorithm is running is implemented (a <code><a href=#window>Window</a></code> or
61542 has an internal [[Call]] method, then return a <a href=#concept-task title=concept-task>task</a> that checks if the entry for <var title="">handle</var> in <var title="">list</var> has been cleared,
61553 href=#refsECMA262>[ECMA262]</a></li>
61560 <p>If the <a href=#method-context>method context</a> is a <code><a href=#window>Window</a></code>
61561 object, let <var title="">global object</var> be the <a href=#method-context>method
61563 <a href=#browsing-context>browsing context</a> with which <var title="">global
61565 encoding</var> be the <a href="#document's-character-encoding" title="document's character
61566 encoding">character encoding</a> of the <code><a href=#document>Document</a></code>
61567 associated with <var title="">global object</var> (<a href=#sce-not-copy>this is a reference, not a copy</a>), and let
61568 <var title="">base URL</var> be the <a href=#document-base-url title="document base
61569 URL">base URL</a> of the <code><a href=#document>Document</a></code> associated with
61570 <var title="">global object</var> (<a href=#sbu-not-copy>this is
61573 <p>Otherwise, if the <a href=#method-context>method context</a> is a
61576 and <var title="">base URL</var> be the <a href="#script's-global-object">script's global
61577 object</a>, <a href="#script's-browsing-context">script's browsing context</a>,
61578 <a href="#script's-document">script's document</a>, <a href="#script's-url-character-encoding">script's URL character
61579 encoding</a>, and <a href="#script's-base-url">script's base URL</a> (respectively)
61580 of the <a href=#concept-script title=concept-script>script</a> that the
61582 <a href=#method-context>method context</a>.</p>
61585 that the <code><a href=#windowtimers>WindowTimers</a></code> interface is implemented by
61590 <li><p>Return a <a href=#concept-task title=concept-task>task</a> that checks
61591 if the entry for <var title="">handle</var> in <var title="">list</var> has been cleared, and if it has not, <a href=#create-a-script title="create a script">creates a script</a> using <var title="">script source</var> as the script source, <var title="">scripting language</var> as the scripting language, <var title="">global object</var> as the global object, <var title="">browsing context</var> as the browsing context, <var title="">document</var> as the document, <var title="">character
61601 be the result. <a href=#refsECMA262>[ECMA262]</a></li>
61604 result. <a href=#refsECMA262>[ECMA262]</a></li>
61615 </ol><hr><p>The <a href=#task-source>task source</a> for these <a href=#concept-task title=concept-task>tasks</a> is the <dfn id=timer-task-source>timer task
61635 <dl class=domintro><dt><var title="">window</var> . <code title=dom-alert><a href=#dom-alert>alert</a></code>(<var title="">message</var>)</dt>
61640 <p>A call to the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
61645 <dt><var title="">result</var> = <var title="">window</var> . <code title=dom-confirm><a href=#dom-confirm>confirm</a></code>(<var title="">message</var>)</dt>
61652 <p>A call to the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
61657 <dt><var title="">result</var> = <var title="">window</var> . <code title=dom-prompt><a href=#dom-prompt>prompt</a></code>(<var title="">message</var> [, <var title="">default</var>] )</dt>
61666 <p>A call to the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
61674 release the <a href=#storage-mutex>storage mutex</a> and show the given <var title="">message</var> to the user. The user agent may make the
61676 returning; if so, the user agent must <a href=#pause>pause</a> while the
61680 release the <a href=#storage-mutex>storage mutex</a> and show the given <var title="">message</var> to the user, and ask the user to respond with
61682 <a href=#pause>pause</a> as the method waits for the user's response. If
61687 method, when invoked, must release the <a href=#storage-mutex>storage mutex</a>,
61690 must then <a href=#pause>pause</a> as the method waits for the user's
61702 <dl class=domintro><dt><var title="">window</var> . <code title=dom-print><a href=#dom-print>print</a></code>()</dt>
61708 <p>A call to the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
61716 when invoked, must run the <a href=#printing-steps>printing steps</a>.</p>
61718 <p>User agents should also run the <a href=#printing-steps>printing steps</a>
61719 whenever the user asks for the opportunity to <a href=#obtain-a-physical-form>obtain a
61731 ignore any invocations of the <code title=dom-print><a href=#dom-print>print()</a></code> method.</p>
61742 <p>The user agent must <a href=#fire-a-simple-event>fire a simple event</a> named
61744 <code><a href=#window>Window</a></code> object of the <code><a href=#document>Document</a></code> that is
61745 being printed, as well as any <a href=#nested-browsing-context title="nested browsing
61756 <p>The user agent must release the <a href=#storage-mutex>storage mutex</a>.</p>
61763 <a href=#obtain-a-physical-form>obtain a physical form</a> (or the representation of a
61766 agent must <a href=#pause>pause</a> while the method is waiting. Even if
61776 <p>The user agent must <a href=#fire-a-simple-event>fire a simple event</a> named
61778 <code><a href=#window>Window</a></code> object of the <code><a href=#document>Document</a></code> that is
61779 being printed, as well as any <a href=#nested-browsing-context title="nested browsing
61796 <dl class=domintro><dt><var title="">result</var> = <var title="">window</var> . <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog</a></code>(<var title="">url</var> [, <var title="">argument</var>] )</dt>
61803 <p>A call to the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
61816 <p><a href=#resolve-a-url title="resolve a url">Resolve</a> <var title="">url</var> relative to the <a href=#entry-script>entry script</a>'s
61817 <a href="#script's-base-url" title="script's base URL">base URL</a>.</p>
61819 <p>If this fails, then throw a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception
61826 <p>Release the <a href=#storage-mutex>storage mutex</a>.</p>
61833 <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> is
61851 <ul><li>are part of the same <a href=#unit-of-related-browsing-contexts>unit of related browsing
61853 <code><a href=#window>Window</a></code> object on which the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method was
61856 <li>have an <a href=#active-document>active document</a> whose
61857 <a href=#origin>origin</a> is the <a href=#same-origin title="same origin">same</a>
61858 as the <a href=#origin>origin</a> of the <a href=#concept-script title=concept-script>script</a> that called the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method at
61883 <p>Create a new <a href=#auxiliary-browsing-context>auxiliary browsing context</a>, with the
61884 <a href=#opener-browsing-context>opener browsing context</a> being the browsing context of
61885 the <code><a href=#window>Window</a></code> object on which the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method was
61888 <p class=note>This <a href=#browsing-context>browsing context</a>'s
61889 <code><a href=#document>Document</a></code>s' <code><a href=#window>Window</a></code> objects all implement
61890 the <code><a href=#windowmodal>WindowModal</a></code> interface.</p>
61896 <p>Let the <a href=#dialog-arguments>dialog arguments</a> of the new browsing
61904 <p>Let the <a href
61905 <a href=#origin>origin</a> of the <a href=#concept-script title=concept-script>script</a> that called the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method.</p>
61911 <p><a href=#navigate>Navigate</a> the new <a href=#browsing-context>browsing context</a> to
61912 the <a href=#absolute-url>absolute URL</a> that resulted from <a href=#resolve-a-url title="resolve a url">resolving</a> <var title="">url</var>
61913 earlier, with <a href=#replacement-enabled>replacement enabled</a>, and with the <a href="#script's-browsing-context" title="script's browsing context">browsing context</a> of the
61914 <a href=#concept-script title=concept-script>script</a> that invoked the method
61915 as the <a href=#source-browsing-context>source browsing context</a>.</p>
61921 <p><a href=#spin-the-event-loop>Spin the event loop</a> until the new <a href=#browsing-context>browsing
61923 indicate that the <a href=#browsing-context>browsing context</a> is to be
61937 <p>Return the <a href=#auxiliary-browsing-context>auxiliary browsing context</a>'s
61938 <a href=#return-value>return value</a>.</p>
61942 </ol><p>The <code><a href=#window>Window</a></code> objects of <code><a href=#document>Document</a></code>s hosted
61943 by <a href=#browsing-context title="browsing context">browsing contexts</a> created
61944 by the above algorithm must all have the <code><a href=#windowmodal>WindowModal</a></code>
61945 interface added to their <code><a href=#window>Window</a></code> interface:</p>
61950 readonly attribute any <a href=#dom-windowmodal-dialogarguments title=dom-WindowModal-dialogArguments>dialogArguments</a>;
61951 attribute DOMString <a href=#dom-windowmodal-returnvalue title=dom-WindowModal-returnValue>returnValue</a>;
61954 <dl class=domintro><dt><var title="">window</var> . <code title=dom-WindowModal-dialogArguments><a href=#dom-windowmodal-dialogarguments>dialogArguments</a></code></dt>
61959 passed to the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method.</p>
61963 <dt><var title="">window</var> . <code title=dom-WindowModal-returnValue><a href=#dom-windowmodal-returnvalue>returnValue</a></code> [ = <var title="">value</var> ]</dt>
61970 <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code>
61979 arguments' origin</dfn>. These values are set by the <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog()</a></code> method in the
61985 <a href=#active-document>active document</a>'s <a href=#origin>origin</a> is the <a href=#same-origin title="same origin">same</a> as the <a href="#dialog-arguments'-origin">dialog arguments'
61986 origin</a>. If it is, then the browsing context's <a href=#dialog-arguments>dialog
61988 <a href=#dialog-arguments>dialog arguments</a> are an object, then the empty string
61989 must be returned, and if the <a href=#dialog-arguments>dialog arguments</a> are not
61990 an object, then the stringification of the <a href=#dialog-arguments>dialog
61994 value</dfn>. The <a href=#return-value>return value</a> of a browsing context
61999 IDL attribute, on getting, must return the <a href=#return-value>return value</a>
62000 of its browsing context, and on setting, must set the <a href=#return-value>return
62005 <p class=note>The <code title=dom-window-close><a href=#dom-window-close>window.close()</a></code> method can be used to
62016 attribute of the <code><a href=#window>Window</a></code> interface must return an
62017 instance of the <code><a href=#navigator>Navigator</a></code> interface, which represents
62027 <a href=#navigator>Navigator</a> implements <a href=#navigatorid>NavigatorID</a>;
62028 <a href=#navigator>Navigator</a> implements <a href=#navigatoronline>NavigatorOnLine</a>;
62029 <a href=#navigator>Navigator</a> implements <a href=#navigatorabilities>NavigatorAbilities</a>;
62034 readonly attribute DOMString <a href=#dom-navigator-appname title=dom-navigator-appName>appName</a>;
62035 readonly attribute DOMString <a href=#dom-navigator-appversion title=dom-navigator-appVersion>appVersion</a>;
62036 readonly attribute DOMString <a href=#dom-navigator-platform title=dom-navigator-platform>platform</a>;
62037 readonly attribute DOMString <a href=#dom-navigator-useragent title=dom-navigator-userAgent>userAgent</a>;
62042 readonly attribute boolean <a href=#dom-navigator-online title=dom-navigator-onLine>onLine</a>;
62048 void <a href=#dom-navigator-registerprotocolhandler title=dom-navigator-registerProtocolHandler>registerProtocolHandler</a>(in DOMString scheme, in DOMString url, in DOMString title);
62049 void <a href=#dom-navigator-registercontenthandler title=dom-navigator-registerContentHandler>registerContentHandler</a>(in DOMString mimeType, in DOMString url, in DOMString title);
62050 void <a href=#dom-navigator-yieldforstorageupdates title=dom-navigator-yieldForStorageUpdates>yieldForStorageUpdates</a>();
62060 specifications can re-use parts of the <code><a href=#navigator>Navigator</a></code>
62090 <dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-appName><a href=#dom-navigator-appname>appName</a></code></dt>
62095 <dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-appVersion><a href=#dom-navigator-appversion>appVersion</a></code></dt>
62100 <dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-platform><a href=#dom-navigator-platform>platform</a></code></dt>
62105 <dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-userAgent><a href=#dom-navigator-useragent>userAgent</a></code></dt>
62152 scheme (<a href=#refsRFC5724>[RFC5724]</a>), so that if the user
62156 for content in a particular <a href=#mime-type>MIME type</a>. For example, the
62158 handler for <code>text/directory</code> files (<a href=#refsRFC2425>[RFC2425]</a>), so that if the user has no
62159 native application capable of handling vCards (<a href=#refsRFC2426>[RFC2426]</a>), his Web browser can instead
62163 <dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-registerProtocolHandler><a href=#dom-navigator-registerprotocolhandler>registerProtocolHandler</a></code>(<var title="">scheme</var>, <var title="">url</var>, <var title="">title</var>)</dt>
62164 <dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-registerContentHandler><a href=#dom-navigator-registercontenthandler>registerContentHandler</a></code>(<var title="">mimeType</var>, <var title="">url</var>, <var title="">title</var>)</dt>
62175 <p>Throws a <code><a href=#security_err>SECURITY_ERR</a></code> exception if the user agent
62179 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> if the "<code title="">%s</code>" string is missing in the URL.</p>
62201 <dl><dt><var title="">protocol</var> (<code title=dom-navigator-registerProtocolHandler><a href=#dom-navigator-registerprotocolhandler>registerProtocolHandler()</a></code> only)</dt>
62206 scheme must be compared in an <a href
62220 <dt><var title="">mimeType</var> (<code title=dom-navigator-registerContentHandler><a href=#dom-navigator-registercontenthandler>registerContentHandler()</a></code> only)</dt>
62224 <p>A <a href=#mime-type>MIME type</a>, such as
62226 <code>application/vnd.google-earth.kml+xml</code>. The <a href=#mime-type>MIME
62227 type</a> must be compared in an <a href=#ascii-case-insensitive>ASCII
62239 <p class=note>The type is compared to the <a href=#mime-type>MIME type</a>
62250 <p>A string used to build the <a href=#url>URL</a> of the page that
62255 with an escaped version of the <a href=#absolute-url>absolute URL</a> of the
62256 content in question (as defined below), then <a href=#resolve-a-url title="resolve
62257 a url">resolve</a> the resulting URL, relative to the <a href="#script's-base-url" title="script's base URL">base URL</a> of the <a href=#entry-script>entry
62258 script</a> at the time the <code title=dom-navigator-registerContentHandler><a href=#dom-navigator-registercontenthandler>registerContentHandler()</a></code>
62259 or <code title=dom-navigator-registerProtocolHandler><a href=#dom-navigator-registerprotocolhandler>registerProtocolHandler()</a></code>
62260 methods were invoked, and then <a href=#navigate>navigate</a> an
62261 appropriate <a href=#browsing-context>browsing context</a> to the resulting URL
62262 using the GET method (<a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
62265 <p>To get the escaped version of the <a href=#absolute-url>absolute URL</a> of
62267 character in that <a href=#absolute-url>absolute URL</a> that doesn't match the
62269 percent-encoded form of that character. <a href=#refsRFC3986>[RFC3986]</a></p>
62281 <pre><a href="chickenkïwi.soup">Download our Chicken Kïwi soup!</a></pre>
62284 was served with the <a href=#mime-type>MIME type</a>
62307 </dl><p>User agents should raise <code><a href=#security_err>SECURITY_ERR</a></code> exceptions if
62310 for <code>http</code> URLs or <code><a href=#text/html>text/html</a></code> content in a
62313 <p>User agents must raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if the
62315 not contain the exact literal string "<code>%s</code>", or if <a href=#resolve-a-url title="resolve a url">resolving</a> the <var title="">url</var>
62316 argument with the first occurrence of the string "<code title="">%s</code>" removed, relative to the <a href=#entry-script>entry
62317 script</a>'s <a href="#script's-base-url" title="script's base URL">base URL</a>, is
62325 methods are used, beyond the requirements on how to process the <var title="">url</var> value (see above). To some extent, the <a href=#navigate title=navigate>processing model for navigating across
62432 <p>The <code title=dom-navigator-registerContentHandler><a href=#dom-navigator-registercontenthandler>registerContentHandler()</a></code>
62440 the <code title=dom-navigator-registerContentHandler><a href=#dom-navigator-registercontenthandler>registerContentHandler()</a></code>
62450 "application/x-meowmeow" <a href=#mime-type>MIME type</a>, then it might
62463 <p>The <code title=dom-navigator-registerProtocolHandler><a href=#dom-navigator-registerprotocolhandler>registerProtocolHandler()</a></code>
62473 <dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>yieldForStorageUpdates</a></code>()</dt>
62477 <p>If a script uses the <code title=dom-document-cookie><a href=#dom-document-cookie>document.cookie</a></code> API, or the
62482 <a href=#refsWEBSTORAGE>[WEBSTORAGE]</a>
62486 <p>Calling the <code title=dom-navigator-yieldForStorageUpdates><a href=#dom-navigator-yieldforstorageupdates>navigator.yieldForStorageUpdates()</a></code>
62494 <a href=#refsWEBSTORAGE>[WEBSTORAGE]</a>
62503 method, when invoked, must, if the <a href=#storage-mutex>storage mutex</a> is
62504 owned by the <a href=#event-loop>event loop</a> of the <a href=#concept-task title=concept-task>task</a> that resulted in the method being
62505 called, release the <a href=#storage-mutex>storage mutex</a> so that it is once
62518 <p>All <a href=#html-elements>HTML elements</a> may have the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> content attribute set. The <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute is a <a href=#boolean-attribute>boolean
62521 <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute
62550 <p>The <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute must not be
62552 presentation. For example, it is incorrect to use <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> to hide panels in a tabbed dialog,
62557 — if something is marked <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>, it is hidden from all
62560 <!-- for example, "<a hidden href=#content>Skip to content</a>" would be inappropriate. -->
62563 <p>Elements that are not <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
62564 should not link to or refer to elements that are <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>.</p>
62568 <p>For example, it would be incorrect to use the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute to link to a
62569 section marked with the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
62574 refer to descriptions that are themselves <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>. Hiding a section means that it
62581 <p>Elements in a section hidden by the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute are still active,
62589 attribute must <a href=#reflect>reflect</a> the content attribute of the
62604 <dl class=domintro><dt><var title="">element</var> . <code title=dom-click><a href=#dom-click>click</a></code>()</dt>
62626 <li><p>If the element has a defined <a href=#activation-behavior>activation behavior</a>,
62627 <a href=#run-synthetic-click-activation-steps>run synthetic click activation steps</a> on the
62628 element. Otherwise, <a href=#fire-a-click-event>fire a <code>click</code> event</a> at
62639 <dl class=domintro><dt><var title="">element</var> . <code title=dom-scrollIntoView><a href=#dom-scrollintoview>scrollIntoView</a></code>( [ <var title="">top</var> ] )</dt>
62661 attention, e.g. because it is <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>, or is not <a href=#being-rendered>being
62708 document must be targeted at <a href=#the-body-element>the body element</a>.</p>
62710 <p>User agents may track focus for each <a href=#browsing-context>browsing
62711 context</a> or <code><a href=#document>Document</a></code> individually, or may support
62712 only one focused element per <a href=#top-level-browsing-context>top-level browsing context</a>
62716 <p>Which elements within a <a href=#top-level-browsing-context>top-level browsing context</a>
62718 <a href=#top-level-browsing-context>top-level browsing context</a> itself has the <i>system
62738 <p>The <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute, if
62739 specified, must have a value that is a <a href=#valid-integer>valid
62745 <a href=#rules-for-parsing-integers>rules for parsing integers</a>. The attribute's values have
62790 <ul><li>before any focusable element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has been
62793 <li>before any focusable element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has a value equal
62796 <li>after any element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has a value
62797 greater than zero but less than the value of the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute on the
62800 <li>after any element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has a value equal
62801 to the value of the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code>
62803 <a href=#tree-order>tree order</a> than the element,</li>
62805 <li>before any element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has a value equal
62806 to the value of the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code>
62808 <a href=#tree-order>tree order</a> than the element, and</li>
62810 <li>before any element whose <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute has a value
62811 greater than the value of the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute on the
62816 </dl><p>An element is <dfn id=specially-focusable>specially focusable</dfn> if the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute's definition above
62819 <p>An element that is <a href=#specially-focusable>specially focusable</a> but does not
62820 otherwise have an <a href=#activation-behavior>activation behavior</a> defined has an
62821 <a href=#activation-behavior>activation behavior</a> that does nothing.</p>
62824 because of its <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> attribute
62825 will fire a <code title=event-click><a href=#event-click>click</a></code> event in response
62830 attribute must <a href=#reflect>reflect</a> the value of the <code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code> content attribute. If the
62845 <a href=#specially-focusable>specially focusable</a>, but only if the element is either
62846 <a href=#being-rendered>being rendered</a> or <!-- CANVAS-FOCUS-FALLBACK --> is a
62847 descendant of a <code><a href=#the-canvas-element>canvas</a></code> element that
62848 <a href=#represents>represents</a> <a href=#embedded-content>embedded content</a>.</p>
62851 <a href=#focusable>focusable</a>, unless platform conventions dictate
62854 <ul><li><code><a href=#the-a-element>a</a></code> elements that have an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute</li>
62856 <li><code><a href=#the-link-element>link</a></code> elements that have an <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute</li>
62858 <li><code><a href=#the-button-element>button</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
62860 <li><code><a href=#the-input-element>input</a></code> elements whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute are not in the
62861 <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state and that
62862 are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
62864 <li><code><a href=#the-select-element>select</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
62866 <li><code><a href=#the-textarea-element>textarea</a></code> elements that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a></li>
62868 <li><code><a href=#the-command>command</a></code> elements that do not have a <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code> attribute</li>
62870 <li>Elements with a <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code>
62876 <code><a href=#the-area-element>area</a></code> element should be <a href=#focusable>focusable</a>, unless
62877 platform conventions dictate otherwise. (A single <code><a href=#the-area-element>area</a></code>
62884 element, then run the <a href=#unfocusing-steps>unfocusing steps</a> for that
62890 <a href=#top-level-browsing-context>top-level browsing context</a>.</p>
62892 <p>Some elements, most notably <code><a href=#the-area-element>area</a></code>, can correspond
62895 must get focus; otherwise, e.g. when using the <code title=dom-focus><a href=#dom-focus>focus()</a></code> method, the first such region in
62900 <li><p><a href=#fire-a-simple-event>Fire a simple event</a> named <code title=event-focus>focus</code> at the element.</li>
62902 </ol><p>User agents must synchronously run the <a href=#focusing-steps>focusing
62904 <a href=#focusable>focusable</a> element.</p>
62908 <ol><li><p>If the element is an <code><a href=#the-input-element>input</a></code> element, and the
62909 <code title=event-input-change><a href=#event-input-change>change</a></code> event applies to the
62910 element, and the element does not have a defined <a href=#activation-behavior>activation
62911 behavior</a>, and the user has changed the element's <a href=#concept-fe-value title=concept-fe-value>value</a> or its list of <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>
62913 <a href=#fire-a-simple-event>fire a simple event</a> that bubbles named <code title=event-change>change</code> at the element, then
62914 <a href=#broadcast-formchange-events>broadcast <code title=event-formchange>formchange</code>
62915 events</a> at the element's <a href=#form-owner>form owner</a>.</p>
62919 <li><p><a href=#fire-a-simple-event>Fire a simple event</a> named <code title=event-blur>blur</code> at the element.</li>
62922 <a href=#focusable>focusable</a> element, or stops being focused without
62924 agent should synchronously run the <a href=#focusing-steps>focusing steps</a> for
62925 <a href=#the-body-element>the body element</a>, if there is one; if there is not,
62926 then the user agent should synchronously run the <a href=#unfocusing-steps>unfocusing
62930 element is removed from its <code><a href=#document>Document</a></code>, or has a <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute added. It would also
62931 happen to an <code><a href=#the-input-element>input</a></code> element when the element gets <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>.</p>
62938 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-activeElement><a href=#dom-document-activeelement>activeElement</a></code></dt>
62946 <dt><var title="">document</var> . <code title=dom-document-hasFocus><a href=#dom-document-hasfocus>hasFocus</a></code>()</dt>
62954 <dt><var title="">window</var> . <code title=dom-window-focus><a href=#dom-window-focus>focus</a></code>()</dt>
62962 <dt><var title="">window</var> . <code title=dom-window-blur><a href=#dom-window-blur>blur</a></code>()</dt>
62973 attribute on <code><a href=#htmldocument>HTMLDocument</a></code> objects must return the
62975 <code><a href=#document>Document</a></code> is focused, this must return <a href=#the-body-element>the body
62979 on <code><a href=#htmldocument>HTMLDocument</a></code> objects must return true if the
62980 document's <a href=#browsing-context>browsing context</a> is focused, and all its
62981 <a href=#ancestor-browsing-context title="ancestor browsing context">ancestor browsing
62982 contexts</a> are also focused, and the <a href=#top-level-browsing-context>top-level browsing
62986 method on the <code><a href=#window>Window</a></code> object, when invoked, provides a
62988 interested in the contents of the <a href=#browsing-context>browsing context</a> of
62989 the <code><a href=#window>Window</a></code> object on which the method was invoked.</p>
62991 <p>User agents are encouraged to have this <code title=dom-window-focus><a href=#dom-window-focus>focus()</a></code> method trigger some kind of
62995 on the <code><a href=#window>Window</a></code> object, when invoked, provides a hint to
62997 currently interested in the contents of the <a href=#browsing-context>browsing
62998 context</a> of the <code><a href=#window>Window</a></code> object on which the method
63002 <p>User agents are encouraged to ignore calls to this <code title=dom-window-blur><a href=#dom-window-blur>blur()</a></code> method entirely.</p>
63004 <p class=note>Historically the <code title=dom-window-blur><a href=#dom-window-blur>focus()</a></code> and <code title=dom-window-blur><a href=#dom-window-blur>blur()</a></code> methods actually affected the
63013 <dl class=domintro><dt><var title="">element</var> . <code title=dom-focus><a href=#dom-focus>focus</a></code>()</dt>
63021 <dt><var title="">element</var> . <code title=dom-blur><a href=#dom-blur>blur</a></code>()</dt>
63047 <ol><li><p>If the element is marked as <i><a href=#locked-for-focus>locked for focus</a></i>, then abort
63050 <li><p>If the element is not <a href=#focusable>focusable</a>, then abort these
63055 <li><p>If the element is not already focused, run the <a href=#focusing-steps>focusing
63058 <li><p>Unmark the element as <i><a href=#locked-for-focus>locked for focus</a></i>.</li>
63061 invoked, should run the <a href=#focusing-steps>focusing steps</a> for <a href=#the-body-element>the
63063 should run the <a href=#unfocusing-steps>unfocusing steps</a> for the element on
63067 <p class=example>For example, if the <code title=dom-blur><a href=#dom-blur>blur()</a></code> method is unwisely being used to
63079 <p>All <a href=#html-elements>HTML elements</a> may have the <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute set. The
63080 <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> attribute's value is
63084 <p>If specified, the value must be an <a href=#ordered-set-of-unique-space-separated-tokens>ordered set of unique
63091 derived from the element's <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute as
63094 <ol><li><p>If the element has no <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> attribute, then skip to the
63097 <li><p>Otherwise, the user agent must <a href=#split-a-string-on-spaces title="split a string
63118 assign that combination of keys as the element's <a href=#assigned-access-key>assigned
63124 combination of its choosing as the element's <a href=#assigned-access-key>assigned access
63127 <li><p>If this step is reached, the element has no <a href=#assigned-access-key>assigned
63132 <a href=#assigned-access-key>assigned access key</a> unless the <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute is changed
63133 or the element is moved to another <code><a href=#document>Document</a></code>.</p>
63136 <a href=#assigned-access-key>assigned access key</a> for an element, if the element
63137 <a href=#concept-command title=concept-command>defines a command</a>, and the
63138 command's <a href=#command-facet-hiddenstate title=command-facet-HiddenState>Hidden
63139 State</a> facet is false (visible), and the command's <a href=#command-facet-disabledstate title=command-facet-DisabledState>Disabled State</a> facet is
63140 also false (enabled), then the user agent must trigger the <a href=#command-facet-action title=command-facet-Action>Action</a> of the command.</p>
63142 <p>User agents may expose elements that have an <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> attribute in other ways as
63151 attribute must <a href=#reflect>reflect</a> the <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute.</p>
63155 <a href=#assigned-access-key>assigned access key</a>, if any. If the element does not
63168 <a title="Consortium Activities" accesskey="A" href="/Consortium/activities">Activities</a> |
63169 <a title="Technical Reports and Recommendations" accesskey="T" href="/TR/">Technical Reports</a> |
63170 <a title="Alphabetical Site Index" accesskey="S" href="/Consortium/siteindex">Site Index</a> |
63171 <a title="About This Site" accesskey="B" href="/Consortium/">About Consortium</a> |
63172 <a title="Contact Consortium" accesskey="C" href="/Consortium/contact">Contact</a>
63219 string depends on what the <a href=#assigned-access-key>assigned access key</a> is, and
63228 <p>Every <a href=#browsing-context>browsing context</a> has <dfn id=the-selection title="the
63239 browsing context (though not by nested <a href=#browsing-context title="browsing
63262 <p>Mostly for historical reasons, in addition to the <a href=#browsing-context>browsing
63263 context</a>'s <a href=#the-selection title="the selection">selection</a>, each
63264 <code><a href=#the-textarea-element>textarea</a></code> and <code><a href=#the-input-element>input</a></code> element has an
63287 <p>The <code><a href=#the-select-element>select</a></code> element also has a selection, indicating
63295 pseudo-element. <a href="#refsSELECTORS">[SELECTORS]</a> <a
63296 href="#refsCSS">[CSS]</a> --></p>
63302 <dl class=domintro><dt><var title="">window</var> . <code title=dom-getSelection><a href=#dom-getselection>getSelection</a></code>()</dt>
63303 <dt><var title="">document</var> . <code title=dom-document-getSelection><a href=#dom-document-getselection>getSelection</a></code>()</dt>
63307 <p>Returns the <code><a href=#selection-0>Selection</a></code> object for the window, which
63315 the <code><a href=#window>Window</a></code> interface must return the
63316 <code><a href=#selection-0>Selection</a></code> object representing <a href=#the-selection>the
63317 selection</a> of that <code><a href=#window>Window</a></code> object's
63318 <a href=#browsing-context>browsing context</a>.
63321 method on the <code><a href=#htmldocument>HTMLDocument</a></code> interface must return the
63322 same <code><a href=#selection-0>Selection</a></code> object.</p>
63327 readonly attribute Node <a href=#dom-selection-anchornode title=dom-selection-anchorNode>anchorNode</a>;
63328 readonly attribute long <a href=#dom-selection-anchoroffset title=dom-selection-anchorOffset>anchorOffset</a>;
63329 readonly attribute Node <a href=#dom-selection-focusnode title=dom-selection-focusNode>focusNode</a>;
63330 readonly attribute long <a href=#dom-selection-focusoffset title=dom-selection-focusOffset>focusOffset</a>;
63331 readonly attribute boolean <a href=#dom-selection-iscollapsed title=dom-selection-isCollapsed>isCollapsed</a>;
63332 void <a href=#dom-selection-collapse title=dom-selection-collapse>collapse</a>(in Node parentNode, in long offset);
63333 void <a href=#dom-selection-collapsetostart title=dom-selection-collapseToStart>collapseToStart</a>();
63334 void <a href=#dom-selection-collapsetoend title=dom-selection-collapseToEnd>collapseToEnd</a>();
63335 void <a href=#dom-selection-selectallchildren title=dom-selection-selectAllChildren>selectAllChildren</a>(in Node parentNode);
63336 void <a href=#dom-selection-deletefromdocument title=dom-selection-deleteFromDocument>deleteFromDocument</a>();
63337 readonly attribute long <a href=#dom-selection-rangecount title=dom-selection-rangeCount>rangeCount</a>;
63338 Range <a href=#dom-selection-getrangeat title=dom-selection-getRangeAt>getRangeAt</a>(in long index);
63339 void <a href=#dom-selection-addrange title=dom-selection-addRange>addRange</a>(in Range range);
63340 void <a href=#dom-selection-removerange title=dom-selection-removeRange>removeRange</a>(in Range range);
63341 void <a href=#dom-selection-removeallranges title=dom-selection-removeAllRanges>removeAllRanges</a>();
63342 <a href=#dom-selection-tostring title=dom-selection-toString>stringifier</a> DOMString ();
63361 <p>The <code><a href=#selection-0>Selection</a></code> interface represents a list of
63362 <code><a href=#range>Range</a></code> objects. The first item in the list has index 0,
63363 and the last item has index <var title="">count</var>-1, where <var title="">count</var> is the number of ranges in the list. <a href=#refsDOMRANGE>[DOMRANGE]</a></p>
63365 <p>All of the members of the <code><a href=#selection-0>Selection</a></code> interface are
63366 defined in terms of operations on the <code><a href=#range>Range</a></code> objects
63368 as defined for the <code><a href=#range>Range</a></code> interface; this can therefore
63369 result in the members of the <code><a href=#selection-0>Selection</a></code> interface
63373 <dl class=domintro><dt><var title="">selection</var> . <code title=dom-selection-anchorNode><a href=#dom-selection-anchornode>anchorNode</a></code></dt>
63383 <dt><var title="">selection</var> . <code title=dom-selection-anchorOffset><a href=#dom-selection-anchoroffset>anchorOffset</a></code></dt>
63393 <dt><var title="">selection</var> . <code title=dom-selection-focusNode><a href=#dom-selection-focusnode>focusNode</a></code></dt>
63403 <dt><var title="">selection</var> . <code title=dom-selection-focusOffset><a href=#dom-selection-focusoffset>focusOffset</a></code></dt>
63413 <dt><var title="">collapsed</var> = <var title="">selection</var> . <code title=dom-selection-isCollapsed><a href=#dom-selection-iscollapsed>isCollapsed</a></code>()</dt>
63421 <dt><var title="">selection</var> . <code title=dom-selection-collapse><a href=#dom-selection-collapse>collapse</a></code>(<var title="">parentNode</var>, <var title="">offset</var>)</dt>
63427 <p>Throws a <code><a href=#wrong_document_err>WRONG_DOCUMENT_ERR</a></code> exception if the given node is in a different document.</p>
63431 <dt><var title="">selection</var> . <code title=dom-selection-collapseToStart><a href=#dom-selection-collapsetostart>collapseToStart</a></code>()</dt>
63437 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if there is no selection.</p>
63441 <dt><var title="">selection</var> . <code title=dom-selection-collapseToEnd><a href=#dom-selection-collapsetoend>collapseToEnd</a></code>()</dt>
63447 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception if there is no selection.</p>
63451 <dt><var title="">selection</var> . <code title=dom-selection-selectAllChildren><a href=#dom-selection-selectallchildren>selectAllChildren</a></code>(<var title="">parentNode</var>)</dt>
63457 <p>Throws a <code><a href=#wrong_document_err>WRONG_DOCUMENT_ERR</a></code> exception if the given node is in a different document.</p>
63461 <dt><var title="">selection</var> . <code title=dom-selection-deleteFromDocument><a href=#dom-selection-deletefromdocument>deleteFromDocument</a></code>()</dt>
63469 <dt><var title="">selection</var> . <code title=dom-selection-rangeCount><a href=#dom-selection-rangecount>rangeCount</a></code></dt>
63477 <dt><var title="">selection</var> . <code title=dom-selection-getRangeAt><a href=#dom-selection-getrangeat>getRangeAt</a></code>(<var title="">index</var>)</dt>
63483 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the value is out of range.</p>
63487 <dt><var title="">selection</var> . <code title=dom-selection-addRange><a href=#dom-selection-addrange>addRange</a></code>(<var title="">range</var>)</dt>
63495 <dt><var title="">selection</var> . <code title=dom-selection-removeRange><a href=#dom-selection-removerange>removeRange</a></code>(<var title="">range</var>)</dt>
63503 <dt><var title="">selection</var> . <code title=dom-selection-removeAllRanges><a href=#dom-selection-removeallranges>removeAllRanges</a></code>()</dt>
63514 attribute must return the value returned by the <code title=dom-Range-startContainer><a href=#dom-range-startcontainer>startContainer</a></code> attribute of the last
63515 <code><a href=#range>Range</a></code> object in the list, or null if the list is
63519 attribute must return the value returned by the <code title=dom-Range-startOffset><a href=#dom-range-startoffset>startOffset</a></code> attribute of the last <code><a href=#range>Range</a></code>
63523 attribute must return the value returned by the <code title=dom-Range-endContainer><a href=#dom-range-endcontainer>endContainer</a></code> attribute of the last
63524 <code><a href=#range>Range</a></code> object in the list, or null if the list is
63528 attribute must return the value returned by the <code title=dom-Range-endOffset><a href=#dom-range-endoffset>endOffset</a></code> attribute of the last <code><a href=#range>Range</a></code>
63533 exactly one range and its <code title=dom-Range-collapsed><a href=#dom-range-collapsed>collapsed</a></code> attribute
63537 method must raise a <code><a href=#wrong_document_err>WRONG_DOCUMENT_ERR</a></code> DOM exception if
63538 <var title="">parentNode</var>'s <code><a href=#document>Document</a></code> is not the
63539 <code><a href=#htmldocument>HTMLDocument</a></code> object with which the
63540 <code><a href=#selection-0>Selection</a></code> object is associated. Otherwise it is, and
63541 the method must remove all the ranges in the <code><a href=#selection-0>Selection</a></code>
63542 list, then create a new <code><a href=#range>Range</a></code> object, add it to the
63547 method must raise an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> DOM exception if
63548 there are no ranges in the list. Otherwise, it must invoke the <code title=dom-selection-collapse><a href=#dom-selection-collapse>collapse()</a></code> method with the
63549 <code title=dom-Range-startContainer><a href=#dom-range-startcontainer>startContainer</a></code> and <code title=dom-Range-startOffset><a href=#dom-range-startoffset>startOffset</a></code> values of the first <code><a href=#range>Range</a></code>
63553 method must raise an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> DOM exception if
63554 there are no ranges in the list. Otherwise, it must invoke the <code title=dom-selection-collapse><a href=#dom-selection-collapse>collapse()</a></code> method with the
63555 <code title=dom-Range-endContainer><a href=#dom-range-endcontainer>endContainer</a></code> and <code title=dom-Range-endOffset><a href=#dom-range-endoffset>endOffset</a></code> values of the last <code><a href=#range>Range</a></code>
63559 method must invoke the <code title=dom-selection-collapse><a href=#dom-selection-collapse>collapse()</a></code> method with the
63575 returned by the <code title=dom-selection-rangeCount><a href=#dom-selection-rangecount>rangeCount</a></code> attribute, then
63576 the method must raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> DOM
63584 example) will cause <a href=#dom-selection-tostring title=dom-selection-toString>stringification</a> to return the
63593 the <code title=dom-selection-rangeCount><a href=#dom-selection-rangecount>rangeCount</a></code>
63594 attribute returns 0 after the <code title=dom-selection-removeAllRanges><a href=#dom-selection-removeallranges>removeAllRanges()</a></code>
63600 method of the <code><a href=#range>Range</a></code> object on each of the ranges of the
63624 <p>The <code><a href=#the-input-element>input</a></code> and <code><a href=#the-textarea-element>textarea</a></code> elements define
63628 <pre class="idl extract"> void <a href=#dom-textarea/input-select title=dom-textarea/input-select>select</a>();
63629 attribute unsigned long <a href=#dom-textarea/input-selectionstart title=dom-textarea/input-selectionStart>selectionStart</a>;
63630 attribute unsigned long <a href=#dom-textarea/input-selectionend title=dom-textarea/input-selectionEnd>selectionEnd</a>;
63631 void <a href=#dom-textarea/input-setselectionrange title=dom-textarea/input-setSelectionRange>setSelectionRange</a>(in unsigned long start, in unsigned long end);</pre>
63635 <code><a href=#the-input-element>input</a></code> and <code><a href=#the-textarea-element>textarea</a></code> text fields.</p>
63637 <dl class=domintro><dt><var title="">element</var> . <code title=dom-textarea/input-select><a href=#dom-textarea/input-select>select</a></code>()</dt>
63665 <dt><var title="">element</var> . <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange</a></code>(<var title="">start</var>, <var title="">end</var>)</dt>
63676 <code><a href=#the-input-element>input</a></code> elements while they don't apply, they must raise
63677 an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception. Otherwise, they must
63690 <p>On setting, it must act as if the <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
63692 and the current value of the <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code>
63694 <code title=dom-textarea/input-selectionEnd><a href=#dom-textarea/input-selectionend>selectionEnd</a></code> is
63705 <p>On setting, it must act as if the <code title=dom-textarea/input-setSelectionRange><a href=#dom-textarea/input-setselectionrange>setSelectionRange()</a></code>
63706 method had been called, with the current value of the <code title=dom-textarea/input-selectionStart><a href=#dom-textarea/input-selectionstart>selectionStart</a></code>
63731 <p>...where <var title="">control</var> is the <code><a href=#the-input-element>input</a></code>
63732 or <code><a href=#the-textarea-element>textarea</a></code> element.</p>
63743 <h3 id=contenteditable><span class=secno>8.7 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
63746 attribute is an <a href=#enumerated-attribute>enumerated attribute</a> whose keywords are
63759 <p>Specifically, if an <a href=#html-elements title="HTML elements">HTML
63760 element</a> has a <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63761 the true state, or it has its <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63762 the inherit state and if its nearest ancestor <a href=#html-elements title="HTML
63763 elements">HTML element</a> with the <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63765 true state, or if it and its ancestors all have their <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63766 the inherit state but the <code><a href=#document>Document</a></code> has <code title=dom-document-designMode><a href=#designMode>designMode</a></code> enabled, then the
63770 <p>Otherwise, either the <a href=#html-elements title="HTML elements">HTML
63771 element</a> has a <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63772 the false state, or its <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute is set
63773 to the inherit state and its nearest ancestor <a href=#html-elements title="HTML
63774 elements">HTML element</a> with the <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63776 false state, or all its ancestors have their <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute set to
63777 the inherit state and the <code><a href=#document>Document</a></code> itself has <code title=dom-document-designMode><a href=#designMode>designMode</a></code> disabled; either
63782 <dl class=domintro><dt><var title="">element</var> . <code title=dom-contentEditable><a href=#dom-contenteditable>contentEditable</a></code> [ = <var title="">value</var> ]</dt>
63787 on the state of the <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute.</p>
63791 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if the new value
63796 <dt><var title="">element</var> . <code title=dom-isContentEditable><a href=#dom-iscontenteditable>isContentEditable</a></code></dt>
63810 otherwise. On setting, if the new value is an <a href=#ascii-case-insensitive>ASCII
63812 if the new value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
63815 value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string
63818 attribute setter must raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception.</p>
63822 <a href=#editable>editable</a>, and false otherwise.</p>
63824 <p>If an element is <a href=#editable>editable</a> and its parent element is
63825 not, or if an element is <a href=#editable>editable</a> and it has no parent
63828 focusable (which typically means they enter the <a href=#attr-tabindex title=attr-tabindex>tab order</a>). An editing host can contain
63835 is. It may also have a <a href=#the-selection title="the
63867 <dd><p>User agents must allow users to change <a href=#the-selection>the
63884 <p>If the caret is positioned somewhere where <a href=#phrasing-content>phrasing
63885 content</a> is not allowed (e.g. inside an empty <code><a href=#the-ol-element>ol</a></code>
63904 <code><a href=#the-p-element>p</a></code> elements before and after the <code><a href=#the-dl-element>dl</a></code>
63905 element, as children of the <code><a href=#the-section-element>section</a></code> element.</p>
63930 break, the user agent must insert a <code><a href=#the-br-element>br</a></code> element.</p>
63932 <p>If the caret is positioned somewhere where <a href=#phrasing-content>phrasing
63933 content</a> is not allowed (e.g. in an empty <code><a href=#the-ol-element>ol</a></code>
63934 element), then the user agent must not insert the <code><a href=#the-br-element>br</a></code>
63953 and deleting a <a href=#the-selection title="the selection">selection</a> whose
63977 user agents should use the <code><a href=#the-i-element>i</a></code> element to represent the
63978 semantic. The <code><a href=#the-em-element>em</a></code> element should be used only if the
63983 user agents should use the <code><a href=#the-b-element>b</a></code> element to represent the
63984 semantic. The <code><a href=#the-strong-element>strong</a></code> element should be used only if
63998 may be done using the <a href=#dnd>drag and drop</a> mechanism. User
64006 <dd><p>When an <a href=#editable>editable</a> form control is edited, the
64008 its default value. For <code><a href=#the-input-element>input</a></code> elements this means
64009 updating the <code title=dom-input-defaultValue><a href=#dom-input-defaultvalue>defaultValue</a></code> IDL attribute as
64010 well as the <code title=dom-input-value><a href=#dom-input-value>value</a></code> IDL
64011 attribute; for <code><a href=#the-select-element>select</a></code> elements it means updating the
64012 <code><a href=#the-option-element>option</a></code> elements' <code title=dom-option-defaultSelected><a href=#dom-option-defaultselected>defaultSelected</a></code> IDL
64013 attribute as well as the <code title=dom-option-selected><a href=#dom-option-selected>selected</a></code> IDL attribute; for
64014 <code><a href=#the-textarea-element>textarea</a></code> elements this means updating the <code title=dom-textarea-defaultValue><a href=#dom-textarea-defaultvalue>defaultValue</a></code> IDL attribute
64015 as well as the <code title=dom-textarea-value><a href=#dom-textarea-value>value</a></code> IDL
64022 request to delete the content of <a href=#the-selection>the selection</a> followed
64025 <p>User agents may add <a href=#dom-changes>DOM changes</a> entries to the
64026 <a href=#undo-transaction-history>undo transaction history</a> of the <a href=#editing-host>editing
64027 host</a>'s <code><a href=#document>Document</a></code> object each time an action is
64031 or programmatically (e.g. by <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> commands),
64047 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-designMode><a href=#designMode>designMode</a></code> [ = <var title="">value</var> ]</dt>
64060 <p>The <code title=dom-document-designMode><a href=#designMode>designMode</a></code> IDL
64061 attribute on the <code><a href=#document>Document</a></code> object takes two values,
64063 is set, the new value must be compared in an <a href=#ascii-case-insensitive>ASCII
64065 the "<code title="">on</code>" value, then <code title=dom-document-designMode><a href=#designMode>designMode</a></code> must be enabled,
64066 and if it matches the "<code title="">off</code>" value, then <code title=dom-document-designMode><a href=#designMode>designMode</a></code> must be
64069 <p>When <code title=dom-document-designMode><a href=#designMode>designMode</a></code> is
64074 or the state is changed. Initially, documents must have their <code title=dom-document-designMode><a href=#designMode>designMode</a></code> disabled.</p>
64086 <code><a href=#the-textarea-element>textarea</a></code> elements), or in elements in an <a href=#editing-host>editing
64087 host</a> (using <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code>).</p>
64111 attribute is an <a href=#enumerated-attribute>enumerated attribute</a> whose keywords are
64120 href=#attr-spellcheck>spellcheck</a></code> state. The <i>false</i>
64127 <dl class=domintro><dt><var title="">element</var> . <code title=dom-spellcheck><a href=#dom-spellcheck>spellcheck</a></code> [ = <var title="">value</var> ]</dt>
64132 on the state of the <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> attribute.</p>
64136 <p>Throws a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception if the new value
64147 otherwise. On setting, if the new value is an <a href=#ascii-case-insensitive>ASCII
64149 if the new value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
64152 value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string
64155 attribute setter must raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception.</p>
64157 <p class=note>The <code title=dom-spellcheck><a href=#dom-spellcheck>spellcheck</a></code>
64159 <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> content attribute,
64162 <p>On setting, if the new value is true, then the element's <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> content attribute must be
64169 <ul><li>The value of <code><a href=#the-input-element>input</a></code> elements to which the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code> attribute applies,
64170 whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attributes are not
64171 in the <a href=#password-state title=attr-input-type-password>Password</a>
64172 state, and that are not <i title=concept-input-immutable><a href=#concept-input-immutable>immutable</a></i> (i.e. that do not
64173 have the <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>
64174 attribute specified and that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>).</li>
64176 <li>The value of <code><a href=#the-textarea-element>textarea</a></code> elements that do not have a
64177 <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code> attribute and
64178 that are not <a href=#concept-fe-disabled title=concept-fe-disabled>disabled</a>.</li>
64180 <li>Text in <a href=#text-node title="text node">text nodes</a> that are
64181 children of <a href=#editable>editable</a> elements.</li>
64183 <li>Text in attributes of <a href=#editable>editable</a> elements.</li>
64185 </ul><p>For text that is part of a <a href=#text-node>text node</a>, the element
64189 element. For the values of <code><a href=#the-input-element>input</a></code> and
64190 <code><a href=#the-textarea-element>textarea</a></code> elements, it is the element itself.</p>
64206 a <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> content
64213 <li>Otherwise, if there is an ancestor element with a <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> content attribute that is
64215 ancestor's <code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code> content
64221 <li>Otherwise, if the element's <a href=#concept-spellcheck-default title=concept-spellcheck-default>default behavior</a> is <a href=#concept-spellcheck-default-true title=concept-spellcheck-default-true>true-by-default</a>,
64224 <li>Otherwise, if the element's <a href=#concept-spellcheck-default title=concept-spellcheck-default>default behavior</a> is <a href=#concept-spellcheck-default-false title=concept-spellcheck-default-false>false-by-default</a>,
64241 <code><a href=#the-input-element>input</a></code> element attributes such as <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code> to ensure that the
64259 value on the <code><a href=#the-input-element>input</a></code> element causes the attribute to be
64361 <a href=#the-selection>the selection</a> or element that was selected for the
64379 <p>To make an element draggable is simple: give the element a <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> attribute, and set an event
64380 listener for <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> that
64385 the <code><a href=#datatransfer>DataTransfer</a></code> object and set the allowed effects
64410 events. First, the <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code>
64413 has to be canceled. Second, the <code title=event-dragover><a href=#event-dragover>dragover</a></code> event, which is used to
64416 on the <code title=dom-DataTransfer-DropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code>
64419 the <code title=event-drop><a href=#event-drop>drop</a></code> event, which allows the
64421 so that the <code title=dom-DataTransfer-DropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute's
64461 the display, the <code title=event-dragend><a href=#event-dragend>dragend</a></code> event
64485 <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>8.9.2 </span>The <code><a href=#dragevent>DragEvent</a></code> and <code><a href=#datatransfer>DataTransfer</a></code> interfaces</h4>
64488 all use the <code><a href=#dragevent>DragEvent</a></code> interface.</p>
64491 readonly attribute <a href=#datatransfer>DataTransfer</a> <a href=#dom-dragevent-datatransfer title=dom-DragEvent-dataTransfer>dataTransfer</a>;
64493 void <a href=#dom-dragevent-initdragevent title=dom-DragEvent-initDragEvent>initDragEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dummyArg<!-- used to be viewArg, back when we had views -->, in long detailArg, in long screenXArg, in long screenYArg, in long clientXArg, in long clientYArg, in boolean ctrlKeyArg, in boolean altKeyArg, in boolean shiftKeyArg, in boolean metaKeyArg, in unsigned short buttonArg, in EventTarget relatedTargetArg, in <a href=#datatransfer>DataTransfer</a> dataTransferArg);
64496 <dl class=domintro><dt><var title="">event</var> . <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code></dt>
64500 <p>Returns the <code><a href=#datatransfer>DataTransfer</a></code> object for the event.</p>
64509 <var title="">dummyArg</var> argument must be ignored. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
64512 attribute of the <code><a href=#dragevent>DragEvent</a></code> interface represents the
64518 attribute DOMString <a href=#dom-datatransfer-dropeffect title=dom-DataTransfer-dropEffect>dropEffect</a>;
64519 attribute DOMString <a href=#dom-datatransfer-effectallowed title=dom-DataTransfer-effectAllowed>effectAllowed</a>;
64521 readonly attribute DOMStringList <a href=#dom-datatransfer-types title=dom-DataTransfer-types>types</a>;
64522 void <a href=#dom-datatransfer-cleardata title=dom-DataTransfer-clearData>clearData</a>(in optional DOMString format);
64523 void <a href=#dom-datatransfer-setdata title=dom-DataTransfer-setData>setData</a>(in DOMString format, in DOMString data);
64524 DOMString <a href=#dom-datatransfer-getdata title=dom-DataTransfer-getData>getData</a>(in DOMString format);
64525 readonly attribute <span>FileList</span> <a href=#dom-datatransfer-files title=dom-DataTransfer-files>files</a>;
64527 void <a href=#dom-datatransfer-setdragimage title=dom-DataTransfer-setDragImage>setDragImage</a>(in Element image, in long x, in long y);
64528 void <a href=#dom-datatransfer-addelement title=dom-DataTransfer-addElement>addElement</a>(in Element element);
64531 <p><code><a href=#datatransfer>DataTransfer</a></code> objects can hold pieces of data, each
64533 <a href=#mime-type title="MIME type">MIME types</a>, with some values
64536 identified by strings that are <a href=#converted-to-ascii-lowercase>converted to ASCII
64539 <dl class=domintro><dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> [ = <var title="">value</var> ]</dt>
64545 <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code>
64554 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code> [ = <var title="">value</var> ]</dt>
64566 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-types><a href=#dom-datatransfer-types>types</a></code></dt>
64571 were set in the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code>
64577 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-clearData><a href=#dom-datatransfer-cleardata>clearData</a></code>( [ <var title="">format</var> ] )</dt>
64586 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-setData><a href=#dom-datatransfer-setdata>setData</a></code>(<var title="">format</var>, <var title="">data</var>)</dt>
64594 <dt><var title="">data</var> = <var title="">dataTransfer</var> . <code title=dom-DataTransfer-getData><a href=#dom-datatransfer-getdata>getData</a></code>(<var title="">format</var>)</dt>
64602 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-files><a href=#dom-datatransfer-files>files</a></code></dt>
64610 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-setDragImage><a href=#dom-datatransfer-setdragimage>setDragImage</a></code>(<var title="">element</var>, <var title="">x</var>, <var title="">y</var>)</dt>
64618 <dt><var title="">dataTransfer</var> . <code title=dom-DataTransfer-addElement><a href=#dom-datatransfer-addelement>addElement</a></code>(<var title="">element</var>)</dt>
64628 <p>When a <code><a href=#datatransfer>DataTransfer</a></code> object is created, it must be
64631 <ul><li>The <code><a href=#datatransfer>DataTransfer</a></code> object must initially contain no
64634 <li>The <code><a href=#datatransfer>DataTransfer</a></code> object's <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code>
64637 <li>The <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code>
64651 initialize the <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute
64652 during the <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code> and <code title=event-dragover><a href=#event-dragover>dragover</a></code> events.</p>
64659 attribute must return a <a href=#live>live</a> <code>DOMStringList</code>
64661 <code><a href=#datatransfer>DataTransfer</a></code> object in the corresponding <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event. The same object must
64670 <code><a href=#datatransfer>DataTransfer</a></code> object of all data (for all formats).</p>
64672 <p class=note>The <code title=dom-DataTransfer-clearData><a href=#dom-datatransfer-cleardata>clearData()</a></code> method does
64673 not affect whether any files were included in the drag, so the <code title=dom-DataTransfer-types><a href=#dom-datatransfer-types>types</a></code> attribute's list might
64674 still not be empty after calling <code title=dom-DataTransfer-clearData><a href=#dom-datatransfer-cleardata>clearData()</a></code> (it would
64678 <p>When called with an argument, the <code title=dom-DataTransfer-clearData><a href=#dom-datatransfer-cleardata>clearData(<var title="">format</var>)</a></code> method must clear the
64679 <code><a href=#datatransfer>DataTransfer</a></code> object of any data associated with the
64680 given <var title="">format</var>, <a href=#converted-to-ascii-lowercase>converted to ASCII
64687 <code><a href=#datatransfer>DataTransfer</a></code> object, labeled as being of the type <var title="">format</var>, <a href=#converted-to-ascii-lowercase>converted to ASCII
64695 <a href=#converted-to-ascii-lowercase>converted to ASCII lowercase</a>, if any, and must return
64705 return the empty string. <a href=#refsRFC2483>[RFC2483]</a></p>
64709 the files that are stored in the <code><a href=#datatransfer>DataTransfer</a></code>
64710 object. There is one such object per <code><a href=#datatransfer>DataTransfer</a></code>
64716 <p>The <dfn id=dom-datatransfer-setdragimage title=dom-DataTransfer-setDragImage><code>setDragImage(<var title="">element</var>, <var title="">x</var>, <var title="">y</var>)</code></dfn> method sets which element to use <a href=#base-dnd-feedback>to generate the drag feedback</a>. The
64718 <code><a href=#element>Element</a></code>; if it is an <code><a href=#the-img-element>img</a></code> element, then the
64725 specifying how the user agent is to <a href=#base-dnd-feedback>render the drag feedback</a>. It adds an
64726 element to the <code><a href=#datatransfer>DataTransfer</a></code> object.</p>
64728 <p class=note>The difference between <code title=dom-DataTransfer-setDragImage><a href=#dom-datatransfer-setdragimage>setDragImage()</a></code> and
64729 <code title=dom-DataTransfer-addElement><a href=#dom-datatransfer-addelement>addElement()</a></code> is
64746 <code><a href=#dragevent>DragEvent</a></code> interface defined above, must have the
64767 <th> <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code> </th>
64768 <th> <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> </th>
64771 <td><a href=#source-node>Source node</a></td>
64774 <td>Contains <a href=#source-node>source node</a> unless a selection is being dragged, in which case it is empty; <code title=dom-datatransfer-files><a href=#dom-datatransfer-files>files</a></code> returns any files included in the drag operation</td>
64779 <td><a href=#source-node>Source node</a></td>
64783 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64787 <td><a href=#immediate-user-selection>Immediate user selection</a> or <a href=#the-body-element>the body element</a></td>
64791 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64792 <td><a href=#dropEffect-initialization>Based on <code>effectAllowed</code> value</a></td>
64793 <td>Reject <a href=#immediate-user-selection>immediate user selection</a> as potential <a href=#current-target-element title="current target element">target element</a></td>
64795 <td><a href=#current-target-element title="current target element">Previous target element</a></td>
64799 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64803 <td><a href=#current-target-element>Current target element</a></td>
64807 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64808 <td><a href=#dropEffect-initialization>Based on <code>effectAllowed</code> value</a></td>
64809 <td>Reset the <a href=#current-drag-operation>current drag operation</a> to "none"</td>
64811 <td><a href=#current-target-element>Current target element</a></td>
64814 <td><code title=dom-datatransfer-getdata><a href=#dom-datatransfer-getdata>getData()</a></code> returns data set in <code title=dom-dragstart>dragstart</code> event; <code title=dom-datatransfer-files><a href=#dom-datatransfer-files>files</a></code> returns any files included in the drag operation</td>
64815 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64816 <td><a href=#current-drag-operation>Current drag operation</a></td>
64819 <td><a href=#source-node>Source node</a></td>
64823 <td><a href=#effectAllowed-initialization>Same as last event</a></td>
64824 <td><a href=#current-drag-operation>Current drag operation</a></td>
64826 </table><p class=note>"Empty" in the table above means that the <code title=dom-datatransfer-getdata><a href=#dom-datatransfer-getdata>getData()</a></code> and <code title=dom-dataTransfer-files><a href=#dom-datatransfer-files>files</a></code> attributes act as if
64831 <p>The <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code>
64832 object's contents are empty (the <code title=dom-datatransfer-getdata><a href=#dom-datatransfer-getdata>getData()</a></code> and <code title=dom-dataTransfer-files><a href=#dom-datatransfer-files>files</a></code> attributes act as if
64833 there is no data being dragged) except for <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> events and <code title=event-drop><a href=#event-drop>drop</a></code> events, for which the contents are
64836 <p id=effectAllowed-initialization>The <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code>
64838 <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> events, and to
64844 <p id=dropEffect-initialization>The <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute must
64845 be set to "<code title="">none</code>" for <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code>, <code title=event-drag><a href=#event-drag>drag</a></code>, and <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code> events (except when stated
64847 value corresponding to the <a href=#current-drag-operation>current drag operation</a> for
64848 <code title=event-drop><a href=#event-drop>drop</a></code> and <code title=event-dragend><a href=#event-dragend>dragend</a></code> events, and to a value based on
64849 the <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code>
64851 following table, for the remaining events (<code title=event-dragenter><a href=#event-dragenter>dragenter</a></code> and <code title=event-dragover><a href=#event-dragover>dragover</a></code>):</p>
64853 <table><thead><tr><th><code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code></th>
64854 <th><code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code></th>
64867 <tr><td><code title="">uninitialized</code> when what is being dragged is an <code><a href=#the-a-element>a</a></code> element with an <code>href</code> attribute</td>
64883 the IDL attribute <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> set
64888 <p class=note><code><a href=#the-img-element>img</a></code> elements and <code><a href=#the-a-element>a</a></code>
64889 elements with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
64890 attribute have their <code title=dom-draggable><a href=#dom-draggable>draggable</a></code>
64894 <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event must then be
64895 fired at the <a href=#source-node>source node</a>.</p>
64899 <a href=#source-node>source node</a> is the text node that the user started the
64903 selection", then the <a href=#source-node>source node</a> is the first text node
64905 being dragged, then the <a href=#source-node>source node</a> is the element that
64908 <p>Multiple events are fired on the <a href=#source-node>source node</a> during
64913 <a href=#list-of-dragged-nodes>list of dragged nodes</a> contains, in <a href=#tree-order>tree
64916 <a href=#list-of-dragged-nodes>list of dragged nodes</a> contains only the <a href=#source-node>source
64919 <hr><p>If it is a selection that is being dragged, the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> member of the
64921 containing just the <a href=#source-node>source node</a>. Script can use the
64922 <code title=dom-DataTransfer-addElement><a href=#dom-datatransfer-addelement>addElement()</a></code> method
64926 <p>The <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code>
64932 must add the text of the selection to the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> member,
64940 files to the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> member's
64941 <code title=dom-datatransfer-files><a href=#dom-datatransfer-files>files</a></code> attribute's
64943 outside a <a href=#browsing-context>browsing context</a>, for example from a file
64944 system manager application, and thus the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event is actually implied
64953 <p>The user agent must take the <a href=#list-of-dragged-nodes>list of dragged nodes</a>
64954 and <a href=#extracting-json title="extracting JSON">extract the microdata from those
64956 string to the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> member,
64993 <ol><li><p>Let <var title="">urls</var> be an empty list of <a href=#absolute-url title="absolute URL">absolute URLs</a>.</li>
64999 <dl><dt>If the node is an <code><a href=#the-a-element>a</a></code> element with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code></dt>
65001 <dd>Add to <var title="">urls</var> the result of <a href=#resolve-a-url title="resolve a url">resolving</a> the element's <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> content attribute relative to
65004 <dt>If the node is an <code><a href=#the-img-element>img</a></code> element with an <code title=attr-img-src><a href=#attr-img-src>src</a></code></dt>
65006 <dd>Add to <var title="">urls</var> the result of <a href=#resolve-a-url title="resolve a url">resolving</a> the element's <code title=attr-img-src><a href=#attr-img-src>src</a></code> content attribute relative to the
65021 <li><p>Add <var title="">url string</var> to the <code title=dom-DragEvent-dataTransfer><a href
65042 <ol><li>The element specified in the last call to the <code title=dom-DataTransfer-setDragImage><a href=#dom-datatransfer-setdragimage>setDragImage()</a></code> method
65043 of the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code>
65044 object of the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event,
65050 the image respectively. <a href=#refsCSS>[CSS]</a></li>
65052 <li>The elements that were added to the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> object, both
65054 using the <code title=dom-DataTransfer-addElement><a href=#dom-datatransfer-addelement>addElement()</a></code>
65059 </ol><p>The user agent must take a note of <a href=#dom-datatransfer-setdata title=dom-DataTransfer-setData>the data that was placed</a> in
65060 the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code>
65061 object. This data will be made available again when the <code title=event-drop><a href=#event-drop>drop</a></code> event is fired.</p>
65066 made during the drag-and-drop operation, and add them to its <a href=#undo>undo history</a> as one atomic operation once the
65074 However, the <a href=#immediate-user-selection>immediate user selection</a> is not
65079 The <a href=#immediate-user-selection>immediate user selection</a> changes as the user
65082 <a href=#current-target-element>current target element</a> changes when the <a href=#immediate-user-selection>immediate
65086 <p>Both the <a href=#current-target-element>current target element</a> and the
65087 <a href=#immediate-user-selection>immediate user selection</a> can be null, which means no
65091 <a href=#current-target-element>current target element</a> is initially null.</p>
65100 operation is ongoing, <a href=#queue-a-task>queue a task</a> to perform the
65114 <p>The user agent must fire a <code title=event-drag><a href=#event-drag>drag</a></code>
65115 event at the <a href=#source-node>source node</a>. If this event is canceled,
65116 the user agent must set the <a href=#current-drag-operation>current drag operation</a> to
65123 <p>Next, if the <code title=event-drag><a href=#event-drag>drag</a></code> event was not
65130 <p>First, if the user is indicating a different <a href=#immediate-user-selection>immediate
65132 is the first iteration), and if this <a href=#immediate-user-selection>immediate user
65133 selection</a> is not the same as the <a href=#current-target-element>current target
65134 element</a>, then the <a href=#current-target-element>current target element</a> must
65137 <dl class=switch><dt>If the new <a href=#immediate-user-selection>immediate user selection</a> is null, or
65140 <dd><p>The user agent must set the <a href=#current-target-element>current target
65147 <p>The user agent must fire a <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code> event at the
65148 <a href=#immediate-user-selection>immediate user selection</a>.</p>
65150 <p>If the event is canceled, then the <a href=#current-target-element>current target
65151 element</a> must be set to the <a href=#immediate-user-selection>immediate user
65156 <dl class=switch><dt>If the <a href=#current-target-element>current target element</a> is a text
65157 field (e.g. <code><a href=#the-textarea-element>textarea</a></code>, or an <code><a href=#the-input-element>input</a></code>
65158 element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code>
65159 attribute is in the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state) or an
65160 <a href=#editable>editable</a> element</dt>
65162 <dd><p>The <a href=#current-target-element>current target element</a> must be set to
65163 the <a href=#immediate-user-selection>immediate user selection</a> anyway.</dd>
65165 <dt>If the <a href=#current-target-element>current target element</a> is
65166 <a href=#the-body-element>the body element</a></dt>
65168 <dd><p>The <a href=#current-target-element>current target element</a> is left
65173 <dd><p>The user agent must fire a <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code> event at <a href=#the-body-element>the
65174 body element</a>, and the <a href=#current-target-element>current target
65175 element</a> must be set to <a href=#the-body-element>the body element</a>,
65177 <a href=#the-body-element>the body element</a> is null, then the <a href=#current-target-element>current
65179 it wouldn't be set to the <code><a href=#document>Document</a></code>
65188 <p>If the previous step caused the <a href=#current-target-element>current target
65191 a <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code> event at the
65198 <p>If the <a href=#current-target-element>current target element</a> is a DOM element,
65199 the user agent must fire a <code title=event-dragover><a href=#event-dragover>dragover</a></code> event at this <a href=#current-target-element>current
65202 <p>If the <code title=event-dragover><a href=#event-dragover>dragover</a></code> event is
65205 <dl class=switch><dt>If the <a href=#current-target-element>current target element</a> is a text field
65206 (e.g. <code><a href=#the-textarea-element>textarea</a></code>, or an <code><a href=#the-input-element>input</a></code> element
65207 whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
65208 the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state) or an
65209 <a href=#editable>editable</a> element</dt>
65211 <dd><p>The user agent must set the <a href=#current-drag-operation>current drag
65217 <dd><p>The user agent must reset the <a href=#current-drag-operation>current drag
65220 </dl><p>Otherwise (if the <code title=event-dragover><a href=#event-dragover>dragover</a></code> event <em>is</em>
65221 canceled), the <a href=#current-drag-operation>current drag operation</a> must be set
65222 based on the values the <code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code> and
65223 <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code>
65224 attributes of the <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> object
65227 <table><thead><tr><th><code title=dom-DataTransfer-effectAllowed><a href=#dom-datatransfer-effectallowed>effectAllowed</a></code></th>
65228 <th><code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code></th>
65241 </table><p>Then, regardless of whether the <code title=event-dragover><a href=#event-dragover>dragover</a></code> event was canceled or
65243 to match the <a href=#current-drag-operation>current drag operation</a>, as
65260 <p>Otherwise, if the <a href=#current-target-element>current target element</a> is not a
65273 interface), or if the <code title=event-drag><a href=#event-drag>drag</a></code> event
65279 <p>If the <a href=#current-drag-operation>current drag operation</a> is none (no drag
65282 the <a href=#current-target-element>current target element</a> is null, then the drag
65283 operation failed. If the <a href=#current-target-element>current target element</a> is
65284 a DOM element, the user agent must fire a <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code> event at it; otherwise,
65293 <a href=#current-target-element>current target element</a> is a DOM element, the user
65294 agent must fire a <code title=event-drop><a href=#event-drop>drop</a></code> event at
65298 <p>When the target is a DOM element, the <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute
65299 of the event's <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> object
65300 must be given the value representing the <a href=#current-drag-operation>current drag
65302 object must be set up so that the <code title=dom-DataTransfer-getData><a href=#dom-datatransfer-getdata>getData()</a></code> method will
65303 return the data that was added during the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event, and the <code title=dom-datatransfer-files><a href=#dom-datatransfer-files>files</a></code> attribute will
65307 <p>If the event is canceled, the <a href=#current-drag-operation>current drag
65308 operation</a> must be set to the value of the <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute
65309 of the event's <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> object as
65316 <dl class=switch><dt>If the <a href=#current-target-element>current target element</a> is a text field
65317 (e.g. <code><a href=#the-textarea-element>textarea</a></code>, or an <code><a href=#the-input-element>input</a></code> element
65318 whose <code title=attr-input-type><a href
65319 the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state) or an
65320 <a href=#editable>editable</a> element</dt>
65324 <a href=#editable>editable</a> element in a manner consistent with
65331 <dd>Reset the <a href=#current-drag-operation>current drag operation</a> to
65338 <p>Finally, the user agent must fire a <code title=event-dragend><a href=#event-dragend>dragend</a></code> event at the <a href=#source-node>source
65339 node</a>, with the <code title=dom-DataTransfer-dropEffect><a href=#dom-datatransfer-dropeffect>dropEffect</a></code> attribute
65340 of the event's <code title=dom-DragEvent-dataTransfer><a href=#dom-dragevent-datatransfer>dataTransfer</a></code> object
65341 being set to the value corresponding to the <a href=#current-drag-operation>current drag
65344 <p class=note>The <a href=#current-drag-operation>current drag operation</a> can
65345 change during the processing of the <code title=event-drop><a href=#event-drop>drop</a></code> event, if one was fired.</p>
65350 <dl class=switch><dt>If the <a href=#current-target-element>current target element</a> is a text field
65351 (e.g. <code><a href=#the-textarea-element>textarea</a></code>, or an <code><a href=#the-input-element>input</a></code> element
65352 whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
65353 the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state), and
65354 a <code title=event-drop><a href=#event-drop>drop</a></code> event was fired in the
65355 previous step, and the <a href=#current-drag-operation>current drag operation</a> is
65362 <dt>If the <a href=#current-target-element>current target element</a> is a text field
65363 (e.g. <code><a href=#the-textarea-element>textarea</a></code>, or an <code><a href=#the-input-element>input</a></code> element
65364 whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
65365 the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a> state), and
65366 a <code title=event-drop><a href=#event-drop>drop</a></code> event was fired in the
65367 previous step, and the <a href=#current-drag-operation>current drag operation</a> is
65391 <code><a href=#document>Document</a></code> object the nodes involved are from; the events
65405 <p>If the drag is initiated in another application, the <a href=#source-node>source
65409 if the dragged data had been added to the <code><a href=#datatransfer>DataTransfer</a></code>
65410 object when the drag started, even though no <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event was actually fired;
65414 <p>All the format strings must be <a href=#converted-to-ascii-lowercase>converted to ASCII
65415 lowercase</a>. If the platform conventions do not use <a href=#mime-type title="MIME type">MIME types</a> to label the dragged data, the
65434 <p>All <a href=#html-elements>HTML elements</a> may have the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute set. The
65435 <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> attribute is an
65436 <a href=#enumerated-attribute>enumerated attribute</a>. It has three states. The first
65446 <dl class=domintro><dt><var title="">element</var> . <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> [ = <var title="">value</var> ]</dt>
65453 <p>Can be set, to override the default and set the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute.</p>
65463 elements whose <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL
65466 <p>If an element's <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code>
65467 content attribute has the state <i>true</i>, the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL attribute must return
65470 <p>Otherwise, if the element's <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute has the
65471 state <i>false</i>, the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL attribute must return
65474 <p>Otherwise, the element's <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute has the
65475 state <i>auto</i>. If the element is an <code><a href=#the-img-element>img</a></code> element,
65476 or, if the element is an <code><a href=#the-a-element>a</a></code> element with an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> content attribute, the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL attribute must return
65479 <p>Otherwise, the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> DOM
65482 <p>If the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL attribute
65483 is set to the value false, the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute must be
65484 set to the literal value <code title="">false</code>. If the <code title=dom-draggable><a href=#dom-draggable>draggable</a></code> IDL attribute is set to the
65485 value true, the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code>
65530 href="#contenteditable-delete">a selection delete operation</a>.</p>
65577 <code><a href=#datatransfer>DataTransfer</a></code> object during the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event available to scripts
65578 until the <code title=event-drop><a href=#event-drop>drop</a></code> event, because
65586 unsuccessful (canceled) and the <code title=event-drop><a href=#event-drop>drop</a></code>
65607 history</dfn> with each <code><a href=#htmldocument>HTMLDocument</a></code> object.</p>
65609 <p>The <a href=#undo-transaction-history>undo transaction history</a> is a list of
65610 entries. The entries are of two types: <a href=#dom-changes>DOM changes</a> and
65611 <a href=#undo-object title="undo object">undo objects</a>.</p>
65613 <p>Each <dfn id=dom-changes>DOM changes</dfn> entry in the <a href=#undo-transaction-history>undo transaction
65617 <ul><li>Changes to the content attributes of an <code><a href=#element>Element</a></code>
65621 the <code><a href=#htmldocument>HTMLDocument</a></code> object (<code title=dom-Node-parentNode><a href=#dom-node-parentnode>parentNode</a></code>, <code title=dom-Node-childNodes><a href=#dom-node-childnodes>childNodes</a></code>).</li>
65623 <li>Changes to internal state, such as a form control's <a href=#concept-fe-value title=concept-fe-value>value</a> or <a href=#concept-input-checked-dirty-flag title=concept-input-checked-dirty-flag>dirty checkedness
65628 example, a Web mail application could use an <a href=#undo-object>undo
65633 <p>Broadly speaking, <a href=#dom-changes>DOM changes</a> entries are handled by
65634 the UA in response to user edits of form controls and <a href=#editing-host title="editing host">editing hosts</a> on the page, and
65635 <a href=#undo-object>undo object</a> entries are handled by script in response
65642 <h4 id=the-undomanager-interface><span class=secno>8.10.2 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
65644 <p>To manage <a href=#undo-object>undo object</a> entries in the <a href=#undo-transaction-history>undo
65645 transaction history</a>, the <code><a href=#undomanager>UndoManager</a></code>
65649 readonly attribute unsigned long <a href=#dom-undomanager-length title=dom-UndoManager-length>length</a>;
65650 getter any <a href=#dom-undomanager-item title=dom-UndoManager-item>item</a>(in unsigned long index);
65651 readonly attribute unsigned long <a href=#dom-undomanager-position title=dom-UndoManager-position>position</a>;
65652 unsigned long <a href=#dom-undomanager-add title=dom-UndoManager-add>add</a>(in any data, in DOMString title);
65653 void <a href=#dom-undomanager-remove title=dom-UndoManager-remove>remove</a>(in unsigned long index);
65654 void <a href=#dom-undomanager-clearundo title=dom-UndoManager-clearUndo>clearUndo</a>();
65655 void <a href=#dom-undomanager-clearredo title=dom-UndoManager-clearRedo>clearRedo</a>();
65658 <dl class=domintro><dt><var title="">window</var> . <code title=dom-undoManager><a href=#dom-undomanager>undoManager</a></code></dt>
65662 <p>Returns the <code><a href=#undomanager>UndoManager</a></code> object.</p>
65666 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></code></dt>
65673 <dt><var title="">data</var> = <var title="">undoManager</var> . <code title=dom-UndoManager-item><a href=#dom-undomanager-item>item</a></code>(<var title="">index</var>)</dt>
65683 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-position><a href=#dom-undomanager-position>position</a></code></dt>
65690 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-add><a href=#dom-undomanager-add>add</a></code>(<var title="">data</var>, <var title="">title</var>)</dt>
65697 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-remove><a href=#dom-undomanager-remove>remove</a></code>(<var title="">index</var>)</dt>
65702 <p>Throws an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception if the given index is out of range.</p>
65706 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-clearUndo><a href=#dom-undomanager-clearundo>clearUndo</a></code>()</dt>
65713 <dt><var title="">undoManager</var> . <code title=dom-UndoManager-clearRedo><a href=#dom-undomanager-clearredo>clearRedo</a></code>()</dt>
65723 attribute of the <code><a href=#window>Window</a></code> interface must return the
65724 object implementing the <code><a href=#undomanager>UndoManager</a></code> interface for that
65725 <code><a href=#window>Window</a></code> object's associated
65726 <code><a href=#htmldocument>HTMLDocument</a></code> object.</p>
65728 <p><code><a href=#undomanager>UndoManager</a></code> objects represent their document's
65729 <a href=#undo-transaction-history>undo transaction history</a>. Only <a href=#undo-object>undo object</a>
65731 <a href=#dom-changes>DOM changes</a> entries are absent from the <a href=#undo-transaction-history>undo
65735 attribute must return the number of <a href=#undo-object>undo object</a> entries
65736 in the <a href=#undo-transaction-history>undo transaction history</a>. This is the <var title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></var>.</p>
65739 properties</span> are the numbers in the range zero to <span title=""><var title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></var>-1</span>, unless the
65740 <var title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></var> is zero, in which
65743 <p>The <dfn id=dom-undomanager-item title=dom-UndoManager-item><code>item(<var title="">n</var>)</code></dfn> method must return the <var title="">n</var>th <a href=#undo-object>undo object</a> entry in the <a href=#undo-transaction-history>undo
65746 <p>The <a href=#undo-transaction-history>undo transaction history</a> has a <dfn id=undo-position title="undo
65748 entries in the <a href=#undo-transaction-history>undo transaction history</a>'s list where
65755 attribute must return the index of the <a href=#undo-object>undo object</a>
65756 entry nearest to the <a href=#undo-position>undo position</a>, on the "redo"
65757 side. If there are no <a href=#undo-object>undo object</a> entries on the "redo"
65758 side, then the attribute must return the same as the <code title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></code> attribute. If there are
65759 no <a href=#undo-object>undo object</a> entries on the "undo" side of the
65760 <a href=#undo-position>undo position</a>, the <code title=dom-UndoManager-position><a href=#dom-undomanager-position>position</a></code> attribute returns
65763 <p class=note>Since the <a href=#undo-transaction-history>undo transaction history</a>
65764 contains both <a href=#undo-object>undo object</a> entries and <a href=#dom-changes>DOM
65765 changes</a> entries, but the <code title=dom-UndoManager-position><a href=#dom-undomanager-position>position</a></code> attribute only
65766 returns indices relative to <a href=#undo-object>undo object</a> entries, it is
65768 without the value of the <code title=dom-UndoManager-position><a href=#dom-undomanager-position>position</a></code> attribute
65774 passed as an argument into the <a href=#undo-transaction-history>undo transaction history</a>
65775 immediately before the <a href=#undo-position>undo position</a>, optionally
65777 method is called <a href=#undo:-moving-back-in-the-undo-transaction-history title=do-undo>during an undo
65779 immediately <em>after</em> the <a href=#undo-position>undo position</a>.</p>
65781 <p>If the method is called and there is neither <a href=#undo:-moving-back-in-the-undo-transaction-history title=do-undo>an undo operation in progress</a> nor <a href=#redo:-moving-forward-in-the-undo-transaction-history title=do-redo>a redo operation in progress</a> then any entries
65782 in the <a href=#undo-transaction-history>undo transaction history</a> after the <a href=#undo-position>undo
65783 position</a> must be removed (as if <code title=dom-UndoManager-clearRedo><a href=#dom-undomanager-clearredo>clearRedo()</a></code> had been
65786 <p>The <dfn id=dom-undomanager-remove title=dom-UndoManager-remove><code>remove(<var title="">index</var>)</code></dfn> method must remove the <a href=#undo-object>undo
65788 the index is less than zero or greater than or equal to <code title=dom-UndoManager-length><a href=#dom-undomanager-length>length</a></code> then the method must
65789 raise an <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception. <a href=#dom-changes>DOM
65793 method must remove all entries in the <a href=#undo-transaction-history>undo transaction
65794 history</a> before the <a href=#undo-position>undo position</a>, be they
65795 <a href=#dom-changes>DOM changes</a> entries or <a href=#undo-object>undo object</a>
65799 method must remove all entries in the <a href=#undo-transaction-history>undo transaction
65800 history</a> after the <a href=#undo-position>undo position</a>, be they
65801 <a href=#dom-changes>DOM changes</a> entries or <a href=#undo-object>undo object</a>
65811 <p>When the user invokes an undo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
65812 called with the <code title=command-undo><a href=#command-undo>undo</a></code> command, the
65815 <p>If the <a href=#undo-position>undo position</a> is at the start of the
65816 <a href=#undo-transaction-history>undo transaction history</a>, then the user agent must do
65819 <p>If the entry immediately before the <a href=#undo-position>undo position</a> is
65820 a <a href=#dom-changes>DOM changes</a> entry, then the user agent must remove
65821 that <a href=#dom-changes>DOM changes</a> entry, reverse the DOM changes that
65823 problems, add a new <a href=#dom-changes>DOM changes</a> entry (consisting of
65824 the opposite of those DOM changes) to the <a href=#undo-transaction-history>undo transaction
65825 history</a> on the other side of the <a href=#undo-position>undo
65830 then the user agent must simply remove the <a href=#dom-changes>DOM changes</a>
65833 <p>If the entry immediately before the <a href=#undo-position>undo position</a> is
65834 an <a href=#undo-object>undo object</a> entry, then the user agent must first
65835 remove that <a href=#undo-object>undo object</a> entry from the <a href=#undo-transaction-history>undo
65836 transaction history</a>, and then must fire an <code title=event-undo><a href=#event-undo>undo</a></code> event at the <code><a href=#window>Window</a></code>
65837 object, using the <a href=#undo-object>undo object</a> entry's associated undo
65840 <p>Any calls to <code title=dom-undoManager-add><a href=#dom-undomanager-add>add()</a></code> while
65848 <p>When the user invokes a redo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
65849 called with the <code title=command-redo><a href=#command-redo>redo</a></code> command, the
65852 <p>This is mostly the opposite of an <a href=#undo:-moving-back-in-the-undo-transaction-history title=do-undo>undo
65856 <p>If the <a href=#undo-position>undo position</a> is at the end of the <a href=#undo-transaction-history>undo
65859 <p>If the entry immediately after the <a href=#undo-position>undo position</a> is
65860 a <a href=#dom-changes>DOM changes</a> entry, then the user agent must remove
65861 that <a href=#dom-changes>DOM changes</a> entry, reverse the DOM changes that
65863 problems, add a new <a href=#dom-changes>DOM changes</a> entry (consisting of
65864 the opposite of those DOM changes) to the <a href=#undo-transaction-history>undo transaction
65865 history</a> on the other side of the <a href=#undo-position>undo
65870 then the user agent must simply remove the <a href=#dom-changes>DOM changes</a>
65873 <p>If the entry immediately after the <a href=#undo-position>undo position</a> is
65874 an <a href=#undo-object>undo object</a> entry, then the user agent must first
65875 remove that <a href=#undo-object>undo object</a> entry from the <a href=#undo-transaction-history>undo
65876 transaction history</a>, and then must fire a <code title=event-redo><a href=#event-redo>redo</a></code> event at the <code><a href=#window>Window</a></code>
65877 object, using the <a href=#undo-object>undo object</a> entry's associated undo
65883 <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>8.10.5 </span>The <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface and the <code title=event-undo><a href=#event-undo>undo</a></code> and <code title=event-redo><a href=#event-redo>redo</a></code> events</h4>
65885 <pre class=idl>interface <dfn id=undomanagerevent>UndoManagerEvent</dfn> : <a href=#event>Event</a> {
65886 readonly attribute any <a href=#dom-undomanagerevent-data title=dom-UndoManagerEvent-data>data</a>;
65887 void <a href=#dom-undomanagerevent-initundomanagerevent title=dom-UndoManagerEvent-initUndoManagerEvent>initUndoManagerEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg);
65890 <dl class=domintro><dt><var title="">event</var> . <code title=dom-UndoManagerEvent-data><a href=#dom-undomanagerevent-data>data</a></code></dt>
65894 <p>Returns the data that was passed to the <code title=dom-undomanager-add><a href=#dom-undomanager-add>add()</a></code> method.</p>
65902 similarly-named method in the DOM Events interfaces. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
65905 attribute represents the <a href=#undo-object>undo object</a> for the event.</p>
65910 <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface, with the <code title=dom-UndoManagerEvent-data><a href=#dom-undomanagerevent-data>data</a></code> field containing the
65911 relevant <a href=#undo-object>undo object</a>.</p>
65922 <a href=#undo-transaction-history>undo transaction history</a>, it could manipulate the
65923 <a href=#undo-transaction-history>undo transaction history</a> in ways not described above,
65925 appears to have separate <a href=#undo-transaction-history title="undo transaction history">undo
65929 <a href=#undo-transaction-history>undo transaction history</a> (such as providing a
65931 based upon the single <a href=#undo-transaction-history>undo transaction history</a>
65943 <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-execCommand><a href=#execCommand>execCommand</a></code>(<var title="">commandId</var> [, <var title="">showUI</var> [, <var title="">value</var> ] ] )</dt>
65953 <dt><var title="">document</var> . <code title=dom-document-queryCommandEnabled><a href=#dom-document-querycommandenabled>queryCommandEnabled</a></code>(<var title="">commandId</var>)</dt>
65961 <dt><var title="">document</var> . <code title=dom-document-queryCommandIndeterm><a href=#dom-document-querycommandindeterm>queryCommandIndeterm</a></code>(<var title="">commandId</var>)</dt>
65969 <dt><var title="">document</var> . <code title=dom-document-queryCommandState><a href=#dom-document-querycommandstate>queryCommandState</a></code>(<var title="">commandId</var>)</dt>
65977 <dt><var title="">document</var> . <code title=dom-document-queryCommandSupported><a href=#dom-document-querycommandsupported>queryCommandSupported</a></code>(<var title="">commandId</var>)</dt>
65985 <dt><var title="">document</var> . <code title=dom-document-queryCommandValue><a href=#dom-document-querycommandvalue>queryCommandValue</a></code>(<var title="">commandId</var>)</dt>
65996 <code><a href=#htmldocument>HTMLDocument</a></code> interface allows scripts to perform
65997 actions on the <a href=#the-selection title="the selection">current selection</a>
66006 <p>When <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code>
66018 has a selection that is entirely within an <a href=#editing-host>editing
66020 <a href=#editing-host>editing host</a>.</p>
66048 values must be compared to the argument in an <a href=#ascii-case-insensitive>ASCII
66054 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66055 semantics</a> of the <em><code><a href=#the-b-element>b</a></code></em> element (or, again,
66058 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66063 <code><a href=#the-b-element>b</a></code> element. False otherwise.</dd>
66074 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66075 semantics</a> of the <em><code><a href=#the-a-element>a</a></code></em> element (or, again,
66077 the UA). If the user agent creates an <code><a href=#the-a-element>a</a></code> element or
66078 modifies an existing <code><a href=#the-a-element>a</a></code> element, then if the <var title="">showUI</var> argument is present and has the value false,
66080 used as the <a href=#url>URL</a> of the link. Otherwise, the user agent
66082 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66092 had performed <a href=#contenteditable-delete>a backspace
66094 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66115 <p>If <var title="">value</var> is (now) an <a href=#ascii-case-insensitive>ASCII
66118 <a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>, then,
66120 <a href=#formatblock-candidate><code title="">formatBlock</code> candidate</a>
66122 <a href=#phrasing-content>phrasing content</a>, and, if that element is
66123 <a href=#editable>editable</a>, is not an <a href=#editing-host>editing host</a>, and
66125 contain any <a href=#flow-content>flow content</a>, replace it with an
66135 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66145 had performed <a href=#contenteditable-delete>a forward delete
66147 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66159 as if the user had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66160 semantics</a> of the <em><code><a href=#the-img-element>img</a></code></em> element (or, again,
66162 the UA). If the user agent creates an <code><a href=#the-img-element>img</a></code> element or
66163 modifies an existing <code><a href=#the-img-element>img</a></code> element, then if the <var title="">showUI</var> argument is present and has the value false,
66165 used as the <a href=#url>URL</a> of the image. Otherwise, the user
66167 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66179 <ol><li><p>If the document is an <a href=#xml-documents title="XML documents">XML
66180 document</a>, then throw an <code><a href=#invalid_access_err>INVALID_ACCESS_ERR</a></code>
66185 that <a href=#contenteditable-delete>the selection be
66187 <li><p>Invoke the <a href=#html-fragment-parsing-algorithm>HTML fragment parsing algorithm</a>
66188 with an arbitrary orphan <code><a href=#the-body-element-0>body</a></code> element owned by the
66189 same <code><a href=#document>Document</a></code> as the <i><a href=#context>context</a></i> element and with
66190 the <var title="">value</var> argument as <i><a href=#the-input-element>input</a></i>.</li>
66195 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66204 had <a href=#contenteditable-br>requested a line
66206 href=#ready-for-editing-host-commands>ready for
66215 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66216 semantics</a> of the <code><a href=#the-ol-element>ol</a></code> element (or unwrapped, or, if
66219 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66228 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66229 semantics</a> of the <code><a href=#the-ul-element>ul</a></code> element (or unwrapped, or, if
66232 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66241 had performed a <a href=#contenteditable-breakBlock>break
66243 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66252 had <a href=#contenteditable-insertText>inserted text</a>
66254 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66263 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66264 semantics</a> of the <em><code><a href=#the-i-element>i</a></code></em> element (or, again,
66267 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66272 <code><a href=#the-i-element>i</a></code> element. False otherwise.</dd>
66279 <dd class=impl><strong>Action</strong>: The user agent must <a href=#redo:-moving-forward-in-the-undo-transaction-history title=do-redo>move forward one step</a> in its <a href=#undo-transaction-history>undo
66281 <a href=#undo-position>undo position</a> is at the end of the <a href=#undo-transaction-history>undo
66283 <a href=#undo>undo history</a>.</dd>
66284 <dd><strong>Enabled When</strong>: The <a href=#undo-position>undo position</a>
66285 is not at the end of the <a href=#undo-transaction-history>undo transaction
66295 <a href=#editing-host>editing host</a> is selected. If no <a href=#editing-host>editing
66306 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66307 semantics</a> of the <em><code><a href=#the-sub-and-sup-elements>sub</a></code></em> element (or, again,
66310 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66315 <code><a href=#the-sub-and-sup-elements>sub</a></code> element. False otherwise.</dd>
66323 had requested that the selection <a href=#contenteditable-wrapSemantic>be wrapped in the
66324 semantics</a> of the <code><a href=#the-sub-and-sup-elements>sup</a></code> element (or unwrapped, or, if
66327 <dd><strong>Enabled When</strong>: The document is <a href=#ready-for-editing-host-commands>ready for
66332 <code><a href=#the-sub-and-sup-elements>sup</a></code> element. False otherwise.</dd>
66339 <dd class=impl><strong>Action</strong>: The user agent must <a href=#undo:-moving-back-in-the-undo-transaction-history title=do-undo>move back one step</a> in its <a href=#undo-transaction-history>undo
66341 <a href=#undo-position>undo position</a> is at the start of the <a href=#undo-transaction-history>undo
66343 <a href=#undo>undo history</a>.</dd>
66344 <dd><strong>Enabled When</strong>: The <a href=#undo-position>undo position</a>
66345 is not at the start of the <a href=#undo-transaction-history>undo transaction
66354 <code><a href=#the-a-element>a</a></code> elements that have <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes and that are partially
66357 that is entirely within an <a href=#editing-host>editing host</a> and that
66359 <code><a href=#the-a-element>a</a></code> element that has an <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute.</dd>
66404 sockets</span>, <a href=#web-messaging>cross-document messaging</a>, and
66405 <a href=#channel-messaging>channel messaging</a> use the <dfn id=event-message title=event-message><code>message</code></dfn> event.
66407 <a href=#refsEVENTSOURCE>[EVENTSOURCE]</a>
66408 <a href=#refsWEBSOCKET>[WEBSOCKET]</a>
66414 <pre class=idl>interface <dfn id=messageevent>MessageEvent</dfn> : <a href=#event>Event</a> {
66415 readonly attribute any <a href=#dom-messageevent-data title=dom-MessageEvent-data>data</a>;
66416 readonly attribute DOMString <a href=#dom-messageevent-origin title=dom-MessageEvent-origin>origin</a>;
66417 readonly attribute DOMString <a href=#dom-messageevent-lasteventid title=dom-MessageEvent-lastEventId>lastEventId</a>;
66418 readonly attribute <a href=#windowproxy>WindowProxy</a> <a href=#dom-messageevent-source title=dom-MessageEvent-source>source</a>;
66419 readonly attribute <a href=#messageportarray>MessagePortArray</a> <a href=#dom-messageevent-ports title=dom-MessageEvent-ports>ports</a>;
66420 void <a href=#dom-messageevent-initmessageevent title=dom-MessageEvent-initMessageEvent>initMessageEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg, in DOMString originArg, in DOMString lastEventIdArg, in <a href=#windowproxy>WindowProxy</a> sourceArg, in <a href=#messageportarray>MessagePortArray</a> portsArg);
66423 <dl class=domintro><dt><var title="">event</var> . <code title=dom-MessageEvent-data><a href=#dom-messageevent-data>data</a></code></dt>
66431 <dt><var title="">event</var> . <code title=dom-MessageEvent-origin><a href=#dom-messageevent-origin>origin</a></code></dt>
66436 events</span> and <a href=#web-messaging>cross-document messaging</a>.</p>
66440 <dt><var title="">event</var> . <code title=dom-MessageEvent-lastEventId><a href=#dom-messageevent-lasteventid>lastEventId</a></code></dt>
66449 <dt><var title="">event</var> . <code title=dom-MessageEvent-source><a href=#dom-messageevent-source>source</a></code></dt>
66453 <p>Returns the <code><a href=#windowproxy>WindowProxy</a></code> of the source window, for
66454 <a href=#web-messaging>cross-document messaging</a>.</p>
66458 <dt><var title="">event</var> . <code title=dom-MessageEvent-ports><a href=#dom-messageevent-ports>ports</a></code></dt>
66462 <p>Returns the <code><a href=#messageportarray>MessagePortArray</a></code> sent with the
66463 message, for <a href=#web-messaging>cross-document messaging</a> and
66464 <a href=#channel-messaging>channel messaging</a>.</p>
66472 similarly-named method in the DOM Events interfaces. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
66479 <a hrefhref=#origin>origin</a> of
66489 represents, in <a href=#web-messaging>cross-document messaging</a>, the
66490 <code><a href=#windowproxy>WindowProxy</a></code> of the <a href=#browsing-context>browsing context</a> of the
66491 <code><a href=#window>Window</a></code> object from which the message came.</p>
66494 attribute represents, in <a href=#web-messaging>cross-document messaging</a> and
66495 <a href=#channel-messaging>channel messaging</a> the <code><a href=#messageportarray>MessagePortArray</a></code>
66499 dispatches a <code title=event-message><a href=#event-message>message</a></code> event in the
66500 algorithms described in the following sections, the <code title=dom-MessageEvent-lastEventId><a href=#dom-messageevent-lasteventid>lastEventId</a></code> attribute
66501 must be the empty string, the <code title=dom-MessageEvent-origin><a href=#dom-messageevent-origin>origin</a></code> attribute must be the
66502 empty string, the <code title=dom-MessageEvent-source><a href=#dom-messageevent-source>source</a></code> attribute must be
66503 null, and the <code title=dom-MessageEvent-ports><a href=#dom-messageevent-ports>ports</a></code>
66533 <p>The <a href=#task-source>task source</a> for the <a href=#concept-task title=concept-task>tasks</a> in <a href=#web-messaging>cross-document
66545 <p>For example, if document A contains an <code><a href=#the-iframe-element>iframe</a></code>
66547 <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code> on the
66548 <code><a href=#window>Window</a></code> object of document B, then a message event will
66550 <code><a href=#window>Window</a></code> of document A. The script in document A might
66592 <p>Authors should check the <code title=dom-MessageEvent-origin><a href=#dom-messageevent-origin>origin</a></code> attribute to ensure
66597 <p>Furthermore, even after checking the <code title=dom-MessageEvent-origin><a href=#dom-messageevent-origin>origin</a></code> attribute, authors
66601 information sent using the <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code> method could
66615 of one <a href=#origin>origin</a> to post arbitrary events (using <code title="">dispatchEvent()</code> or otherwise) to objects in other
66616 origins (those that are not the <a href=#same-origin title="same
66630 <dl class=domintro><dt><var title="">window</var> . <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage</a></code>(<var title="">message</var>, <var title="">targetOrigin</var> [, <var title="">ports</var> ])</dt>
66644 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> if the <var title="">ports</var> array is not null and it contains either null
66652 arguments) on a <code><a href=#window>Window</a></code> object, the user agent must
66659 SOLIDUS character (/), nor an <a href=#absolute-url>absolute URL</a> with a
66660 <code title=url-host-specific><a href=#url-host-specific><host-specific></a></code>
66662 character (/), then throw a <code><a href=#syntax_err>SYNTAX_ERR</a></code> exception and
66670 obtaining a <a href=#structured-clone>structured clone</a> of the <var title="">message</var> argument. If this throws an exception, then
66679 <code><a href=#messageport>MessagePort</a></code> object is listed in <var title="">ports</var> more than once, or any of the
66680 <code><a href=#messageport>MessagePort</a></code> objects listed in <var title="">ports</var> have already been cloned once before, then
66681 throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception and abort these
66692 by <a href=#clone-a-port title="clone a port">cloning</a> the port with the
66693 <code><a href=#window>Window</a></code> object on which the method was invoked as the
66705 <p>Return from the <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code> method, but
66714 <code><a href=#document>Document</a></code> of the <code><a href=#window>Window</a></code> object on which
66715 the method was invoked does not have the <a href=#same-origin>same origin</a>
66716 as the <a href=#entry-script>entry script</a>'s <a href="#script's-document" title="script's
66720 an <a href=#absolute-url>absolute URL</a>, and the <code><a href=#document>Document</a></code> of the
66721 <code><a href=#window>Window</a></code> object on which the method was invoked does
66722 not have the <a href=#same-origin>same origin</a> as <var title="">targetOrigin</var>, then abort these steps silently.</p>
66732 <p>Create an event that uses the <code><a href=#messageevent>MessageEvent</a></code>
66733 interface, with the event name <code title=event-message><a href=#event-message>message</a></code>, which does not bubble, is
66734 not cancelable, and has no default action. The <code title=dom-MessageEvent-data><a href=#dom-messageevent-data>data</a></code> attribute must be set to
66735 the value of <var title="">message clone</var>, the <code title=dom-MessageEvent-origin><a href=#dom-messageevent-origin>origin</a></code> attribute must be
66736 set to the <a href=#unicode-serialization-of-an-origin title="Unicode serialization of an
66737 origin">Unicode serialization</a> of the <a href=#origin>origin</a> of
66738 the script that invoked the method, the <code title=dom-MessageEvent-source><a href=#dom-messageevent-source>source</a></code> attribute must be
66739 set to the <a href="#script's-global-object">script's global object</a>'s
66740 <code><a href=#windowproxy>WindowProxy</a></code> object, and the <code title=dom-MessageEvent-ports><a href=#dom-messageevent-ports>ports</a></code> attribute must be set
66749 <p><a href=#queue-a-task>Queue a task</a> to dispatch the event created in the
66750 previous step at the <code><a href=#window>Window</a></code> object on which the
66751 method was invoked. The <a href=#task-source>task source</a> for this <a href=#concept-task title=concept-task>task</a> is the <a href=#posted-message-task-source>posted message task
66767 <a href=#browsing-context title="browsing context">browsing contexts</a>) to
66768 communicate directly, authors can use <a href=#channel-messaging>channel
66781 sent to the remote code, e.g. using <code title=dom-window-postMessage><a href=#dom-window-postmessage>postMessage()</a></code>:</p>
66785 <p>To send messages, the <code title=dom-MessagePort-postMessage><a href=#dom-messageport-postmessage>postMessage()</a></code> method on
66790 <p>To receive messages, one listens to <code title=event-message><a href=#event-message>message</a></code> events:</p>
66801 <pre class=idl>[<a href=#dom-messagechannel title=dom-MessageChannel>Constructor</a>]
66803 readonly attribute <a href=#messageport>MessagePort</a> <a href=#dom-channel-port1 title=dom-channel-port1>port1</a>;
66804 readonly attribute <a href=#messageport>MessagePort</a> <a href=#dom-channel-port2 title=dom-channel-port2>port2</a>;
66807 <dl class=domintro><dt><var title="">channel</var> = new <code title=dom-MessageChannel><a href=#dom-messagechannel>MessageChannel</a></code>()</dt>
66811 <p>Returns a new <code><a href=#messagechannel>MessageChannel</a></code> object with two new <code><a href=#messageport>MessagePort</a></code> objects.</p>
66819 <p>Returns the first <code><a href=#messageport>MessagePort</a></code> object.</p>
66827 <p>Returns the second <code><a href=#messageport>MessagePort</a></code> object.</p>
66836 <ol><li><p><a href=#create-a-new-messageport-object>Create a new <code>MessagePort</code> object</a>
66837 owned by the <a href="#script's-global-object">script's global object</a>, and let <var title="">port1</var> be that object.</li>
66839 <li><p><a href
66840 owned by the <a href="#script's-global-object">script's global object</a>, and let <var title="">port2</var> be that object.</li>
66842 <li><p><a href=#entangle>Entangle</a> the <var title="">port1</var> and <var title="">port2</var> objects.</li>
66844 <li><p>Instantiate a new <code><a href=#messagechannel>MessageChannel</a></code> object, and
66847 <li><p>Let the <code title=dom-channel-port1><a href=#dom-channel-port1>port1</a></code>
66850 <li><p>Let the <code title=dom-channel-port2><a href=#dom-channel-port2>port2</a></code>
66855 </ol><p>This constructor must be visible when the <a href="#script's-global-object">script's global
66856 object</a> is either a <code><a href=#window>Window</a></code> object or an object
66862 <code><a href=#messagechannel>MessageChannel</a></code> object was created.</p>
66877 --> void <a href=#dom-messageport-postmessage title=dom-MessagePort-postMessage>postMessage</a>(in any message, in optional <a href=#messageportarray>MessagePortArray</a> ports);<!--
66879 void <a href=#dom-messageport-start title=dom-MessagePort-start>start</a>();
66880 void <a href=#dom-messageport-close title=dom-MessagePort-close>close</a>();
66883 attribute <a href=#function>Function</a> <a href=#handler-messageport-onmessage title=handler-MessagePort-onmessage>onmessage</a>;
66885 <a href=#messageport>MessagePort</a> implements <a href=#eventtarget>EventTarget</a>;</pre>
66902 <p>Throws an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> if the <var title="">ports</var> array is not null and it contains either null
66907 <dt><var title="">port</var> . <code title=dom-MessagePort-start><a href=#dom-messageport-start>start</a></code>()</dt>
66915 <dt><var title="">port</var> . <code title=dom-MessagePort-close><a href=#dom-messageport-close>close</a></code>()</dt>
66925 <p>Each <code><a href=#messageport>MessagePort</a></code> object can be entangled with
66926 another (a symmetric relationship). Each <code><a href=#messageport>MessagePort</a></code>
66927 object also has a <a href=#task-source>task source</a> called the <dfn id=port-message-queue>port
66928 message queue</dfn>, initial empty. A <a href=#port-message-queue>port message
66935 <code>MessagePort</code> object</dfn> owned by a <a href="#script's-global-object">script's
66937 instantiate a new <code><a href=#messageport>MessagePort</a></code> object, and let its owner
66941 <code><a href=#messageport>MessagePort</a></code> objects, it must run the following
66950 two ports of a <code><a href=#messagechannel>MessageChannel</a></code> object, then that
66951 <code><a href=#messagechannel>MessageChannel</a></code> object no longer represents an actual
66958 <code><a href=#messagechannel>MessageChannel</a></code> object that represents this
66962 a new <code><a href=#messageport>MessagePort</a></code> object. These steps must be run
66965 <ol><li><p><a href=#create-a-new-messageport-object>Create a new <code>MessagePort</code> object</a>
66969 <li><p>Move all the events in the <a href=#port-message-queue>port message queue</a>
66970 of <var title="">original port</var> to the <a href=#port-message-queue>port message
66972 <var title="">new port</var>'s <a href=#port-message-queue>port message queue</a> in
66983 <li><p><a href=#entangle>Entangle</a> the <var title="">remote port</var>
67007 <code><a href=#messageport>MessagePort</a></code> object is listed in <var title="">ports</var> more than once, if any of the
67008 <code><a href=#messageport>MessagePort</a></code> objects listed in <var title="">ports</var> have already been cloned once before, or if
67010 (if any), then throw an <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code>
67020 <li><p>Create an event that uses the <code><a href=#messageevent>MessageEvent</a></code>
67021 interface, with the name <code title=event-message><a href=#event-message>message</a></code>, which does not bubble, is not
67028 obtaining a <a href=#structured-clone>structured clone</a> of <var title="">message</var>. If this throws an exception, then throw
67031 <li><p>Let the <code title=dom-MessageEvent-data><a href=#dom-messageevent-data>data</a></code>
67043 obtain a new port by <a href=#clone-a-port title="clone a port">cloning</a>
67053 <li><p>Let the <code title=dom-MessageEvent-ports><a href=#dom-messageevent-ports>ports</a></code>
67059 <li><p>Add the event to the <a href=#port-message-queue>port message queue</a> of <var title="">target port</var>.</li>
67122 method must enable its port's <a href=#port-message-queue>port message queue</a>, if it
67125 <p>When a port's <a href=#port-message-queue>port message queue</a> is enabled, the
67126 <a href=#event-loop>event loop</a> must use it as one of its <a href=#task-source title="task
67129 <p class=note>If the <code><a href=#document>Document</a></code> of the port's event
67130 listeners' <a href="#script's-global-object" title="script's global object">global object</a>
67131 is not <a href=#fully-active>fully active</a>, then the messages are lost.</p>
67140 <hr><p>The following are the <a href=#event-handlers>event handlers</a> (and their
67141 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
67143 all objects implementing the <code><a href=#messageport>MessagePort</a></code> interface:</p>
67145 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
67146 <tbody><tr><td><dfn id=handler-messageport-onmessage title=handler-MessagePort-onmessage><code>onmessage</code></dfn> <td> <code title=event-message><a href=#event-message>message</a></code>
67147 </table><p>The first time a <code><a href=#messageport>MessagePort</a></code> object's <code title=handler-MessagePort-onmessage><a href=#handler-messageport-onmessage>onmessage</a></code> IDL attribute
67148 is set, the port's <a href=#port-message-queue>port message queue</a> must be enabled,
67149 as if the <code title=dom-MessagePort-start><a href=#dom-messageport-start>start()</a></code> method
67159 <p>When a <code><a href=#messageport>MessagePort</a></code> object <var title="">o</var> is
67161 entangled <code><a href=#messageport>MessagePort</a></code> object has a strong reference to
67178 <p>Furthermore, a <code><a href=#messageport>MessagePort</a></code> object must not be
67179 garbage collected while there exists a message in a <a href=#task-queue>task
67181 <code><a href
67182 <code><a href=#messageport>MessagePort</a></code> object's <a href=#port-message-queue>port message queue</a> is
67183 open and there exists a <code title=event-message><a href=#event-message>message</a></code>
67194 <code><a href=#messageport>MessagePort</a></code> objects to disentangle them, so that their
67195 resources can be recollected. Creating many <code><a href=#messageport>MessagePort</a></code>
67209 labeled with an <a href=#html-mime-type>HTML MIME type</a>. Rules for XML resources
67210 are discussed in the section below entitled "<a href=#the-xhtml-syntax>The XHTML
67230 <li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
67231 <a href=#space-character title="space character">space characters</a>.</li>
67233 <li>A <a href=#syntax-doctype title=syntax-doctype>DOCTYPE</a>.
67235 <li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
67236 <a href=#space-character title="space character">space characters</a>.</li>
67238 <li>The root element, in the form of an <code><a href=#the-html-element-0>html</a></code> <a href=#syntax-elements title=syntax-elements>element</a>.</li>
67240 <li>Any number of <a href=#syntax-comments title=syntax-comments>comments</a> and
67241 <a href=#space-character title="space character">space characters</a>.</li>
67246 <p>In addition, there are some restrictions on how <a href=#character-encoding-declaration title="character encoding declaration">character encoding
67252 <p>Space characters before the root <code><a href=#the-html-element-0>html</a></code> element, and
67253 space characters at the start of the <code><a href=#the-html-element-0>html</a></code> element and
67254 before the <code><a href=#the-head-element-0>head</a></code> element, will be dropped when the
67256 <code><a href=#the-html-element-0>html</a></code> element will be parsed as if they were at the end
67257 of the <code><a href=#the-body-element-0>body</a></code> element. Thus, space characters around the
67262 <code><a href=#the-html-element-0>html</a></code> element's start tag (if it is not <a href=#syntax-tag-omission title=syntax-tag-omission>omitted</a>), and after any comments
67263 that are inside the <code><a href=#the-html-element-0>html</a></code> element but before the
67264 <code><a href=#the-head-element-0>head</a></code> element.</p>
67290 <ol class=brief><li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title=""><!DOCTYPE</code>".</li>
67291 <li>One or more <a href=#space-character title="space character">space characters</a>.</li>
67292 <li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">HTML</code>".</li>
67293 <li>Optionally, a <a href=#doctype-legacy-string>DOCTYPE legacy string</a> or an <a href=#obsolete-permitted-doctype-string>obsolete permitted DOCTYPE string</a> (defined below).</li>
67294 <li>Zero or more <a href=#space-character title="space character">space characters</a>.</li>
67305 <ol class=brief><li>One or more <a href=#space-character title="space character">space characters</a>.</li>
67306 <li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">SYSTEM</code>".</li>
67307 <li>One or more <a href=#space-character title="space character">space characters</a>.</li>
67309 <li>The literal string "<code><a href=#about:legacy-compat>about:legacy-compat</a></code>".</li>
67316 <p>The <a href=#doctype-legacy-string>DOCTYPE legacy string</a> should not be used unless
67325 <ol class=brief><li>One or more <a href=#space-character title="space character">space characters</a>.</li>
67326 <li>A string that is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">PUBLIC</code>".</li>
67327 <li>One or more <a href=#space-character title="space character">space characters</a>.</li>
67331 <li>If the cell in the second column of the <i>selected row</i> is not blank, one or more <a href=#space-character title="space character">space characters</a>.</li>
67336 Allowed values for public and system identifiers in an <a href=#obsolete-permitted-doctype-string>obsolete permitted DOCTYPE string</a>.
67352 </table><p>A <a href=#syntax-doctype title=syntax-doctype>DOCTYPE</a> containing an
67353 <a href=#obsolete-permitted-doctype-string>obsolete permitted DOCTYPE string</a> is an <dfn id=obsolete-permitted-doctype>obsolete
67354 permitted DOCTYPE</dfn>. Authors should not use <a href=#obsolete-permitted-doctype title="obsolete permitted DOCTYPE">obsolete permitted
67362 <p>There are five different kinds of <dfn id=syntax-elements title=syntax-elements>elements</dfn>: <a href=#void-elements>void elements</a>,
67363 <a href=#raw-text-elements>raw text elements</a>, <a href=#rcdata-elements>RCDATA elements</a>,
67364 <a href=#foreign-elements>foreign elements</a>, and <a href=#normal-elements>normal elements</a>.</p>
67368 <dd><code><a href=#the-area-element>area</a></code>, <code><a href=#the-base-element>base</a></code>, <code><a href=#the-br-element>br</a></code>,
67369 <code><a href=#the-col-element>col</a></code>, <code><a href=#the-command>command</a></code>, <code><a href=#the-embed-element>embed</a></code>,
67370 <code><a href=#the-hr-element>hr</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href=#the-input-element>input</a></code>,
67371 <code><a href=#the-keygen-element>keygen</a></code>, <code><a href=#the-link-element>link</a></code>, <code><a href=#meta>meta</a></code>,
67372 <code><a href=#the-param-element>param</a></code>, <code><a href=#the-source-element>source</a></code>, <code><a href=#the-track-element>track</a></code>,
67373 <code><a href=#the-wbr-element>wbr</a></code></dd>
67377 <dd><code><a href=#script>script</a></code>, <code><a href=#the-style-element>style</a></code></dd> <!-- iframe and
67382 <dd><code><a href=#the-textarea-element>textarea</a></code>, <code><a href=#the-title-element-0>title</a></code></dd>
67386 <dd>Elements from the <a href=#mathml-namespace>MathML namespace</a>
67387 and the <a href=#svg-namespace>SVG namespace</a>.</dd>
67391 <dd>All other allowed <a href=#html-elements>HTML elements</a> are normal
67395 and end of elements in the markup. <a href=#raw-text-elements title="raw text
67396 elements">Raw text</a>, <a href=#rcdata-elements title="RCDATA
67397 elements">RCDATA</a>, and <a href=#normal-elements title="normal
67398 elements">normal</a> elements have a <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> to indicate where they
67399 begin, and an <a href=#syntax-end-tag title=syntax-end-tag>end tag</a> to
67401 <a href=#normal-elements>normal elements</a> can be <a href=#syntax-tag-omission title=syntax-tag-omission>omitted</a>, as described
67402 later. Those that cannot be omitted must not be omitted. <a href=#void-elements>Void
67404 specified for <a href=#void-elements>void elements</a>. <a href=#foreign-elements>Foreign
67410 start tag (which <a href=#syntax-tag-omission title=syntax-tag-omission>might be implied,
67412 <a href=#syntax-tag-omission title=syntax-tag-omission>might be implied in certain
67420 <p><a href=#void-elements>Void elements</a> can't have any contents (since there's
67424 <p><a href=#raw-text-elements>Raw text elements</a> can have <a href=#syntax-text title=syntax-text>text</a>, though it has <a href=#cdata-rcdata-restrictions>restrictions</a> described
67427 <p><a href=#rcdata-elements>RCDATA elements</a> can have <a href=#syntax-text title=syntax-text>text</a> and <a href=#syntax-charref title=syntax-charref>character references</a>, but the text
67428 must not contain an <a href=#syntax-ambiguous-ampersand title=syntax-ambiguous-ampersand>ambiguous ampersand</a>.
67429 There are also <a href=#cdata-rcdata-restrictions>further
67432 <p><a href=#foreign-elements>Foreign elements</a> whose start tag is marked as
67435 tag). <a href=#foreign-elements>Foreign elements</a> whose start tag is <em>not</em>
67436 marked as self-closing can have <a href=#syntax-text title=syntax-text>text</a>, <a href=#syntax-charref title=syntax-charref>character references</a>, <a href=#syntax-cdata title=syntax-cdata>CDATA sections</a>, other <a href=#syntax-elements title=syntax-elements>elements</a>, and <a href=#syntax-comments title=syntax-comments>comments</a>, but the text must not
67437 contain the character U+003C LESS-THAN SIGN (<) or an <a href=#syntax-ambiguous-ampersand title=syntax-ambiguous-ampersand>ambiguous ampersand</a>.</p>
67442 declarations, even in <a href=#foreign-elements>foreign elements</a>.</p>
67463 <p><a href=#normal-elements>Normal elements</a> can have <a href=#syntax-text title=syntax-text>text</a>, <a href=#syntax-charref title=syntax-charref>character references</a>, other <a href=#syntax-elements title=syntax-elements>elements</a>, and <a href=#syntax-comments title=syntax-comments>comments</a>, but the text must not
67464 contain the character U+003C LESS-THAN SIGN (<) or an <a href=#syntax-ambiguous-ampersand title=syntax-ambiguous-ampersand>ambiguous ampersand</a>. Some
67465 <a href=#normal-elements>normal elements</a> also have <a href=#element-restrictions>yet more restrictions</a> on what
67475 Z. In the HTML syntax, tag names, even those for <a href=#foreign-elements>foreign
67490 <a href=#syntax-tag-name title=syntax-tag-name>tag name</a>.</li>
67493 first be one or more <a href=#space-character title="space character">space
67496 <li>Then, the start tag may have a number of attributes, the <a href=#syntax-attributes title=syntax-attributes>syntax for which</a> is described
67498 <a href=#space-character title="space character">space characters</a>.</li>
67500 <li>After the attributes, or after the <a href=#syntax-tag-name title=syntax-tag-name>tag name</a> if there are no attributes,
67501 there may be one or more <a href=#space-character title="space character">space
67503 a space. See the <a href=#syntax-attributes title=syntax-attributes>attributes
67506 <li>Then, if the element is one of the <a href=#void-elements>void elements</a>,
67507 or if the element is a <a href=#foreign-elements title="foreign elements">foreign
67509 (/). This character has no effect on <a href=#void-elements>void elements</a>,
67510 but on <a href=#foreign-elements>foreign elements</a> it marks the start tag as
67528 <a href=#syntax-tag-name title=syntax-tag-name>tag name</a>.</li>
67530 <li>After the tag name, there may be one or more <a href=#space-character title="space
67542 one or more characters other than the <a href=#space-character title="space
67548 <a href=#foreign-elements>foreign elements</a>, may be written with any mix of lower-
67549 and uppercase letters that are an <a href=#ascii-case-insensitive>ASCII
67553 mixture of <a href=#syntax-text title=syntax-text>text</a> and <a href=#syntax-charref title=syntax-charref>character references</a>, except with the
67554 additional restriction that the text cannot contain an <a href=#syntax-ambiguous-ampersand title=syntax-ambiguous-ampersand>ambiguous ampersand</a>.</p>
67562 <p>Just the <a href=#syntax-attribute-name title=syntax-attribute-name>attribute
67567 <p>In the following example, the <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code> attribute is given with
67575 followed by another attribute, then there must be a <a href=#space-character>space
67584 <p>The <a href=#syntax-attribute-name title=syntax-attribute-name>attribute name</a>,
67585 followed by zero or more <a href=#space-character title="space character">space
67587 character, followed by zero or more <a href=#space-character title="space
67588 character">space characters</a>, followed by the <a href=#syntax-attribute-value title=syntax-attribute-value>attribute value</a>, which, in
67590 must not contain any literal <a href=#space-character title="space character">space
67629 <p>In the following example, the <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute is given
67638 character (/) allowed in step 6 of the <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> syntax above, then there
67639 must be a <a href=#space-character>space character</a> separating the two.</p>
67647 <p>The <a href=#syntax-attribute-name title=syntax-attribute-name>attribute name</a>,
67648 followed by zero or more <a href=#space-character title="space character">space
67650 character, followed by zero or more <a href=#space-character title="space
67652 APOSTROPHE character ('), followed by the <a href=#syntax-attribute-value title=syntax-attribute-value>attribute value</a>, which, in
67660 <p>In the following example, the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is given with the
67668 be followed by another attribute, then there must be a <a href=#space-character>space
67677 <p>The <a href=#syntax-attribute-name title=syntax-attribute-name>attribute name</a>,
67678 followed by zero or more <a href=#space-character title="space character">space
67680 character, followed by zero or more <a href=#space-character title="space
67682 QUOTATION MARK character ("), followed by the <a href=#syntax-attribute-value title=syntax-attribute-value>attribute value</a>, which, in
67690 <p>In the following example, the <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute is given with the
67698 be followed by another attribute, then there must be a <a href=#space-character>space
67704 whose names are an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
67707 <hr><p>When a <a href=#foreign-elements title="foreign elements">foreign element</a> has
67714 <tbody><tr><td> <code title="">actuate</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:actuate</code>
67715 <tr><td> <code title="">arcrole</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:arcrole</code>
67716 <tr><td> <code title="">href</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:href</code>
67717 <tr><td> <code title="">role</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:role</code>
67718 <tr><td> <code title="">show</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:show</code>
67719 <tr><td> <code title="">title</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:title</code>
67720 <tr><td> <code title="">type</code> <td> <a href=#xlink-namespace>XLink namespace</a> <td> <code title="">xlink:type</code>
67721 <tr><td> <code title="">base</code> <td> <a href=#xml-namespace>XML namespace</a> <!-- attr-xml-base --> <td> <code title="">xml:base</code>
67722 <tr><td> <code title="">lang</code> <td> <a href=#xml-namespace>XML namespace</a> <td> <code title="">xml:lang</code>
67723 <tr><td> <code title="">space</code> <td> <a href=#xml-namespace>XML namespace</a> <td> <code title="">xml:space</code>
67724 <tr><td> <code title="">xmlns</code> <td> <a href=#xmlns-namespace>XMLNS namespace</a> <td> <code title="">xmlns</code>
67725 <tr><td> <code title="">xlink</code> <td> <a href=#xmlns-namespace>XMLNS namespace</a> <td> <code title="">xmlns:xlink</code>
67726 </table><p>No other namespaced attribute can be expressed in <a href=#syntax>the
67734 <p class=note>Omitting an element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> does not mean the element
67736 document always has a root <code><a href=#the-html-element-0>html</a></code> element, even if the
67741 <p>An <code><a href=#the-html-element-0>html</a></code> element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> may be omitted if the
67742 first thing inside the <code><a href=#the-html-element-0>html</a></code> element is not a <a href=#syntax-comments title=syntax-comments>comment</a>.</p>
67745 <p>An <code><a href=#the-html-element-0>html</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67746 tag</a> may be omitted if the <code><a href=#the-html-element-0>html</a></code> element is not
67747 immediately followed by a <a href=#syntax-comments title=syntax-comments>comment</a>.</p>
67750 <p>A <code><a href=#the-head-element-0>head</a></code> element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> may be omitted if the
67752 <code><a href=#the-head-element-0>head</a></code> element is an element.</p>
67755 <p>A <code><a href=#the-head-element-0>head</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67756 tag</a> may be omitted if the <code><a href=#the-head-element-0>head</a></code> element is not
67757 immediately followed by a <a href=#space-character>space character</a> or a <a href=#syntax-comments title=syntax-comments>comment</a>.</p>
67760 <p>A <code><a href=#the-body-element-0>body</a></code> element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> may be omitted if the
67761 element is empty, or if the first thing inside the <code><a href=#the-body-element-0>body</a></code>
67762 element is not a <a href=#space-character>space character</a> or a <a href=#syntax-comments title=syntax-comments>comment</a>, except if the first thing
67763 inside the <code><a href=#the-body-element-0>body</a></code> element is a <code><a href=#script>script</a></code> or
67764 <code><a href=#the-style-element>style</a></code> element. <!-- Note that even if the </head> end
67770 <p>A <code><a href=#the-body-element-0>body</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67771 tag</a> may be omitted if the <code><a href=#the-body-element-0>body</a></code> element is not
67772 immediately followed by a <a href=#syntax-comments title=syntax-comments>comment</a>.</p>
67775 <p>A <code><a href=#the-li-element>li</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67776 tag</a> may be omitted if the <code><a href=#the-li-element>li</a></code> element is
67777 immediately followed by another <code><a href=#the-li-element>li</a></code> element or if there
67781 <p>A <code><a href=#the-dt-element>dt</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67782 tag</a> may be omitted if the <code><a href=#the-dt-element>dt</a></code> element is
67783 immediately followed by another <code><a href=#the-dt-element>dt</a></code> element or a
67784 <code><a href=#the-dd-element>dd</a></code> element.</p>
67787 <p>A <code><a href=#the-dd-element>dd</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67788 tag</a> may be omitted if the <code><a href=#the-dd-element>dd</a></code> element is
67789 immediately followed by another <code><a href=#the-dd-element>dd</a></code> element or a
67790 <code><a href=#the-dt-element>dt</a></code> element, or if there is no more content in the
67794 <p>A <code><a href=#the-p-element>p</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67795 tag</a> may be omitted if the <code><a href=#the-p-element>p</a></code> element is
67796 immediately followed by an <code><a href=#the-address-element>address</a></code>,
67797 <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-blockquote-element>blockquote</a></code>,
67798 <!--v2DATAGRID <code>datagrid</code>,--> <code><a href=#dir>dir</a></code>,
67799 <code><a href=#the-div-element>div</a></code>, <code><a href=#the-dl-element>dl</a></code>, <code><a href=#the-fieldset-element>fieldset</a></code>,
67800 <code><a href=#the-footer-element>footer</a></code>, <code><a href=#the-form-element>form</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>,
67801 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>,
67802 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>, <code><a href=#the-header-element>header</a></code>, <code><a href=#the-hgroup-element>hgroup</a></code>,
67803 <code><a href=#the-hr-element>hr</a></code>, <code><a href=#menus>menu</a></code>, <code><a href=#the-nav-element>nav</a></code>,
67804 <code><a href=#the-ol-element>ol</a></code>, <code><a href=#the-p-element>p</a></code>, <code><a href=#the-pre-element>pre</a></code>,
67805 <code><a href=#the-section-element>section</a></code>, <code><a href=#the-table-element>table</a></code>, or <code><a href=#the-ul-element>ul</a></code>,
67807 the parent element is not an <code><a href=#the-a-element>a</a></code> element.</p>
67810 <p>An <code><a href=#the-rt-element>rt</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67811 tag</a> may be omitted if the <code><a href=#the-rt-element>rt</a></code> element is
67812 immediately followed by an <code><a href=#the-rt-element>rt</a></code> or <code><a href=#the-rp-element>rp</a></code>
67816 <p>An <code><a href=#the-rp-element>rp</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67817 tag</a> may be omitted if the <code><a href=#the-rp-element>rp</a></code> element is
67818 immediately followed by an <code><a href=#the-rt-element>rt</a></code> or <code><a href=#the-rp-element>rp</a></code>
67824 <p>An <code><a href=#the-optgroup-element>optgroup</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end tag</a> may be omitted if the
67825 <code><a href=#the-optgroup-element>optgroup</a></code> element <!--has an ancestor
67827 another <code><a href=#the-optgroup-element>optgroup</a></code> element, or if <!--all of the elements
67841 <p>An <code><a href=#the-option-element>option</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67842 tag</a> may be omitted if the <code><a href=#the-option-element>option</a></code> element is
67843 immediately followed by another <code><a href=#the-option-element>option</a></code> element, or if
67844 it is immediately followed by an <code><a href=#the-optgroup-element>optgroup</a></code> element, or
67848 <p>A <code><a href=#the-colgroup-element>colgroup</a></code> element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> may be omitted if the
67849 first thing inside the <code><a href=#the-colgroup-element>colgroup</a></code> element is a
67850 <code><a href=#the-col-element>col</a></code> element, and if the element is not immediately
67851 preceded by another <code><a href=#the-colgroup-element>colgroup</a></code> element whose <a href=#syntax-end-tag title=syntax-end-tag>end tag</a> has been omitted. (It can't be
67855 <p>A <code><a href=#the-colgroup-element>colgroup</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end tag</a> may be omitted if the
67856 <code><a href=#the-colgroup-element>colgroup</a></code> element is not immediately followed by a
67857 <a href=#space-character>space character</a> or a <a href=#syntax-comments title=syntax-comments>comment</a>.</p>
67860 <p>A <code><a href=#the-thead-element>thead</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67861 tag</a> may be omitted if the <code><a href=#the-thead-element>thead</a></code> element is
67862 immediately followed by a <code><a href=#the-tbody-element>tbody</a></code> or <code><a href=#the-tfoot-element>tfoot</a></code>
67866 <p>A <code><a href=#the-tbody-element>tbody</a></code> element's <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> may be omitted if the
67867 first thing inside the <code><a href=#the-tbody-element>tbody</a></code> element is a
67868 <code><a href=#the-tr-element>tr</a></code> element, and if the element is not immediately
67869 preceded by a <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, or
67870 <code><a href=#the-tfoot-element>tfoot</a></code> element whose <a href=#syntax-end-tag title=syntax-end-tag>end
67875 <p>A <code><a href=#the-tbody-element>tbody</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67876 tag</a> may be omitted if the <code><a href=#the-tbody-element>tbody</a></code> element is
67877 immediately followed by a <code><a href=#the-tbody-element>tbody</a></code> or <code><a href=#the-tfoot-element>tfoot</a></code>
67881 <p>A <code><a href=#the-tfoot-element>tfoot</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67882 tag</a> may be omitted if the <code><a href=#the-tfoot-element>tfoot</a></code> element is
67883 immediately followed by a <code><a href=#the-tbody-element>tbody</a></code> element, or if there is
67887 <p>A <code><a href=#the-tr-element>tr</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67888 tag</a> may be omitted if the <code><a href=#the-tr-element>tr</a></code> element is
67889 immediately followed by another <code><a href=#the-tr-element>tr</a></code> element, or if there
67893 <p>A <code><a href=#the-td-element>td</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67894 tag</a> may be omitted if the <code><a href=#the-td-element>td</a></code> element is
67895 immediately followed by a <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code>
67899 <p>A <code><a href=#the-th-element>th</a></code> element's <a href=#syntax-end-tag title=syntax-end-tag>end
67900 tag</a> may be omitted if the <code><a href=#the-th-element>th</a></code> element is
67901 immediately followed by a <code><a href=#the-td-element>td</a></code> or <code><a href=#the-th-element>th</a></code>
67904 <p><strong>However</strong>, a <a href=#syntax-start-tag title=syntax-start-tag>start
67913 <p>A <code><a href=#the-table-element>table</a></code> element must not contain <code><a href=#the-tr-element>tr</a></code>
67915 <code><a href=#the-table-element>table</a></code> elements according to the content models
67916 described in this specification. (If a <code><a href=#the-tr-element>tr</a></code> element is
67917 put inside a <code><a href=#the-table-element>table</a></code> in the markup, it will in fact imply
67918 a <code><a href=#the-tbody-element>tbody</a></code> start tag before it.)</p>
67920 <p>A single <a href=#syntax-newlines title=syntax-newlines>newline</a> may be
67921 placed immediately after the <a href=#syntax-start-tag title=syntax-start-tag>start
67922 tag</a> of <code><a href=#the-pre-element>pre</a></code> and <code><a href=#the-textarea-element>textarea</a></code>
67924 otherwise optional <a href=#syntax-newlines title=syntax-newlines>newline</a>
67926 with a <a href=#syntax-newlines title=syntax-newlines>newline</a> (because
67931 <p>The following two <code><a href=#the-pre-element>pre</a></code> blocks are equivalent:</p>
67939 <p>The text in <a href=#raw-text-elements title="raw text elements">raw text</a> and
67940 <a href=#rcdata-elements>RCDATA elements</a> must not contain any occurrences of the
67955 not contain control characters other than <a href=#space-character title="space
67968 <p>Where <a href=#syntax-charref title=syntax-charref>character references</a>
67971 represents a <a href=#syntax-newlines title=syntax-newlines>newline</a>.</p>
67976 <p>In certain cases described in other sections, <a href=#syntax-text title=syntax-text>text</a> may be mixed with <dfn id=syntax-charref title=syntax-charref>character references</dfn>. These can be used
67978 <a href=#syntax-text title=syntax-text>text</a>.</p>
67987 <a href=#named-character-references>named character references</a> section, using the same
68019 control characters other than <a href=#space-character title="space character">space
68029 the <a href=#named-character-references>named character references</a> section.</p>
68040 sequence, the CDATA section may have <a href=#syntax-text title=syntax-text>text</a>, with the additional restriction
68071 have <a href=#syntax-text title=syntax-text>text</a>, with the additional
68090 are covered by the next section, entitled "<a href=#the-xhtml-syntax>The XHTML
68093 <p>For <a href=#html-documents>HTML documents</a>, user agents must use the parsing
68145 determined to be in <a href=#syntax>the HTML syntax</a>, then it is an
68146 <a href=#html-documents title="HTML documents">HTML document</a>.</p>
68157 <a href=#tokenization>tokenization</a> stage followed by a <a href=#tree-construction>tree
68158 construction</a> stage. The output is a <code><a href=#document>Document</a></code>
68161 <p class=note>Implementations that <a href=#non-scripted>do not
68163 <code><a href=#document>Document</a></code> object, but the DOM tree in such cases is
68167 comes from the network, but <a href=#dynamic-markup-insertion title="dynamic markup
68168 insertion">it can also come from script</a>, e.g. using the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> API.</p>
68213 specification. This section does not apply to XML documents. <a href=#refsXML>[XML]</a></p>
68234 available to the user agent (e.g. the <a href=#content-type title=Content-Type>Content-Type metadata</a> of the document)
68239 that encoding is <i>tentative</i> or <i>certain</i>, is <a href=#meta-charset-during-parse>used during the parsing</a> to
68240 determine whether to <a href=#change-the-encoding>change the encoding</a>. If no
68243 all, then the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> is
68247 supported, return that encoding with the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68266 that row, with the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68344 <li><p><i>Attributes</i>: <a href=#concept-get-attributes-when-sniffing title=concept-get-attributes-when-sniffing>Get an
68369 <dd><p>Apply the <a href=#algorithm-for-extracting-an-encoding-from-a-content-type>algorithm for extracting an encoding
68394 <li><p>Return the encoding given by <var title="">charset</var>, with <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68407 <li><p>Repeatedly <a href=#concept-get-attributes-when-sniffing title=concept-get-attributes-when-sniffing>get an
68600 visited, then return that encoding, with the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68610 encoding, then return that encoding, with the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68611 <i>tentative</i>, and abort these steps. <a href=#refsUNIVCHARDET>[UNIVCHARDET]</a></p>
68618 this common encoding. <a href=#refsPPUTF8>[PPUTF8]</a> <a href=#refsUTF8DET>[UTF8DET]</a></p>
68625 default character encoding, with the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a>
68639 are identified by BCP 47 language tags. <a href=#refsBCP47>[BCP47]</a></p>
68738 </ol><p>The <a href="#document's-character-encoding">document's character encoding</a> must immediately
68743 <p class=note>This algorithm is a <a href=#willful-violation>willful violation</a>
68745 assumed to be ISO-8859-1 in the absence of a <a href=#character-encoding-declaration>character
68748 absence of a <a href=#character-encoding-declaration>character encoding declaration</a> to the
68750 desire to be maximally compatible with legacy content. <a href=#refsHTTP>[HTTP]</a> <a href=#refsRFC2046>[RFC2046]</a></p>
68761 <p>User agents must support the <a href=#preferred-mime-name>preferred MIME name</a> of
68764 support. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
68768 equal, user agents must remove any leading or trailing <a href=#space-character title="space character">space characters</a> in both names, and
68769 then perform the comparison in an <a href=#ascii-case-insensitive>ASCII
68783 <a href=#refsEUCKR>[EUCKR]</a>
68784 <a href=#refsWIN949>[WIN949]</a>
68786 <a href=#refsRFC1345>[RFC1345]</a>
68787 <a href=#refsGBK>[GBK]</a>
68789 <a href=#refsRFC1345>[RFC1345]</a>
68790 <a href=#refsGBK>[GBK]</a>
68792 <a href=#refsRFC1345>[RFC1345]</a>
68793 <a href=#refsWIN1252>[WIN1252]</a>
68795 <a href=#refsRFC1345>[RFC1345]</a>
68796 <a href=#refsWIN1254>[WIN1254]</a>
68798 <a href=#refsISO885911>[ISO885911]</a>
68799 <a href=#refsWIN874>[WIN874]</a>
68801 <a href=#refsRFC1345>[RFC1345]</a>
68802 <a href=#refsWIN949>[WIN949]</a>
68804 <a href=#refsSHIFTJIS>[SHIFTJIS]</a>
68805 <a href=#refsWIN31J>[WIN31J]</a>
68807 <a href=#refsTIS620>[TIS620]</a>
68808 <a href=#refsWIN874>[WIN874]</a>
68810 <a href=#refsRFC1345>[RFC1345]</a>
68811 <a href=#refsWIN1252>[WIN1252]</a>
68813 encodings according to the table above is a <a href=#willful-violation>willful
68815 by a desire for compatibility with legacy content. <a href=#refsCHARMOD>[CHARMOD]</a></p>
68821 BE is a <a href=#willful-violation>willful violation</a> of RFC 2781, motivated by a
68822 desire for compatibility with legacy content. <a href=#refsRFC2781>[RFC2781]</a></p>
68825 encodings. <a href=#refsCESU8>[CESU8]</a> <a href=#refsUTF7>[UTF7]</a> <a href=#refsBOCU1>[BOCU1]</a> <a href=#refsSCSU>[SCSU]</a></p>
68860 <a href=#misinterpreted-for-compatibility>misinterpreted for compatibility</a> is a <a href=#parse-error>parse
68868 the byte order is a <a href=#willful-violation>willful violation</a> of Unicode,
68877 <a href=#parse-error title="parse error">parse errors</a>.</p>
68888 U+10FFFE, and U+10FFFF are <a href=#parse-error title="parse error">parse
68898 <a href=#tokenization>tokenization</a> stage.</p>
68902 the <i><a href=#next-input-character>next input character</a></i> is the first character in the
68904 to have been <i><a href=#consumed>consumed</a></i>.</p>
68908 inserted using <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> is actually
68915 representing the end of the <a href=#the-input-stream>input stream</a>. If the parser
68916 is a <a href=#script-created-parser>script-created parser</a>, then the end of the
68917 <a href=#the-input-stream>input stream</a> is reached when an <dfn id=explicit-eof-character>explicit "EOF"
68918 character</dfn> (inserted by the <code title=dom-document-close><a href=#dom-document-close>document.close()</a></code> method) is
68927 if the <a href=#encoding-sniffing-algorithm>encoding sniffing algorithm</a> described above
68933 the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> to
68936 <a href=#encoding-sniffing-algorithm>encoding sniffing algorithm</a> determined to be the
68942 input stream is a UTF-16 encoding, then set the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> to
68955 <a href="#document's-character-encoding">document's character encoding</a> and the encoding used to
68956 convert the input stream to the new encoding, set the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> to
68959 <li>Otherwise, <a href=#navigate>navigate</a> to the document again, with
68960 <a href=#replacement-enabled>replacement enabled</a>, and using the same <a href=#source-browsing-context>source
68961 browsing context</a>, but this time skip the <a href=#encoding-sniffing-algorithm>encoding
68963 new encoding and the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> to
68969 other than HTTP GET (<a href=#concept-http-equivalent-get title=concept-http-equivalent-get>or
68970 equivalent</a> for non-HTTP URLs), then instead set the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> to
68987 <p>Initially, the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-initial-insertion-mode title="insertion mode: initial">initial</a>". It can change to
68988 "<a href=#the-before-html-insertion-mode title="insertion mode: before html">before html</a>",
68989 "<a href=#the-before-head-insertion-mode title="insertion mode: before head">before head</a>",
68990 "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>", "<a href=#parsing-main-inheadnoscript title="insertion mode: in head noscript">in head noscript</a>",
68991 "<a href=#the-after-head-insertion-mode title="insertion mode: after head">after head</a>", "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>", "<a href=#parsing-main-incdata title="insertion mode: text">text</a>",
68992 "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>", "<a href=#parsing-main-intabletext title="insertion mode: in table text">in table text</a>", "<a href=#parsing-main-incaption title="insertion mode: in caption">in caption</a>", "<a href=#parsing-main-incolgroup title="insertion mode: in column group">in column group</a>",
68993 "<a href=#parsing-main-intbody title="insertion mode: in table body">in table body</a>",
68994 "<a href=#parsing-main-intr title="insertion mode: in row">in row</a>", "<a href=#parsing-main-intd title="insertion mode: in cell">in cell</a>", "<a href=#parsing-main-inselect title="insertion mode: in select">in select</a>", "<a href=#parsing-main-inselectintable title="insertion mode: in select in table">in select in
68995 table</a>", "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in
68996 foreign content</a>", "<a href=#parsing-main-afterbody title="insertion mode: after
68997 body">after body</a>", "<a href=#parsing-main-inframeset title="insertion mode: in
68998 frameset">in frameset</a>", "<a href=#parsing-main-afterframeset title="insertion mode: after
68999 frameset">after frameset</a>", "<a href=#the-after-after-body-insertion-mode title="insertion mode:
69000 after after body">after after body</a>", and "<a href=#the-after-after-frameset-insertion-mode title="insertion mode: after after frameset">after after
69002 the <a href=#tree-construction>tree construction</a> stage. The insertion mode affects
69006 <p>Seven of these modes, namely "<a href=#parsing-main-inhead title="insertion mode: in
69007 head">in head</a>", "<a href=#parsing-main-inbody title="insertion mode: in body">in
69008 body</a>", "<a href=#parsing-main-intable title="insertion mode: in table">in
69009 table</a>", "<a href=#parsing-main-intbody title="insertion mode: in table body">in table
69010 body</a>", "<a href=#parsing-main-intr title="insertion mode: in row">in row</a>",
69011 "<a href=#parsing-main-intd title="insertion mode: in cell">in cell</a>", and "<a href=#parsing-main-inselect title="insertion mode: in select">in select</a>", are special, in
69017 <a href=#insertion-mode>insertion mode</a>'s section, but must leave the
69018 <a href=#insertion-mode>insertion mode</a> unchanged unless the rules in <var title="">m</var> themselves switch the <a href=#insertion-mode>insertion mode</a>
69021 <p>When the insertion mode is switched to "<a href=#parsing-main-incdata title="insertion
69022 mode: text">text</a>" or "<a href=#parsing-main-intabletext title="insertion mode: in table
69027 <p>When the insertion mode is switched to "<a href=#parsing-main-inforeign title="insertion
69030 is used within the rules for the "<a href=#parsing-main-inforeign title="insertion mode: in
69043 <a href=#stack-of-open-elements>stack of open elements</a>.</li>
69047 true and set <var title="">node</var> to the <var title="">context</var> element. (<a href=#fragment-case>fragment case</a>)</li>
69049 <li>If <var title="">node</var> is a <code><a href=#the-select-element>select</a></code> element,
69050 href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inselect title="insertion mode: in select">in select</a>" and jump to the
69051 step labeled <i title="">end</i>. (<a href=#fragment-case>fragment case</a>)</li>
69053 <li>If <var title="">node</var> is a <code><a href=#the-td-element>td</a></code> or
69054 <code><a href=#the-th-element>th</a></code> element and <var title="">last</var> is false, then
69055 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intd title="insertion
69058 <li>If <var title="">node</var> is a <code><a href=#the-tr-element>tr</a></code> element, then
69059 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intr title="insertion
69062 <li>If <var title="">node</var> is a <code><a href=#the-tbody-element>tbody</a></code>,
69063 <code><a href=#the-thead-element>thead</a></code>, or <code><a href=#the-tfoot-element>tfoot</a></code> element, then switch the
69064 <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intbody title="insertion mode: in
69067 <li>If <var title="">node</var> is a <code><a href=#the-caption-element>caption</a></code> element,
69068 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incaption title="insertion mode: in caption">in caption</a>" and jump to
69071 <li>If <var title="">node</var> is a <code><a href=#the-colgroup-element>colgroup</a></code> element,
69072 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incolgroup title="insertion mode: in column group">in column group</a>" and
69073 jump to the step labeled <i title="">end</i>. (<a href=#fragment-case>fragment
69076 <li>If <var title="">node</var> is a <code><a href=#the-table-element>table</a></code> element,
69077 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>" and jump to the
69080 <li>If <var title="">node</var> is a <code><a href=#the-head-element-0>head</a></code> element,
69081 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" ("<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>"! <em> not "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>"</em>!) and jump to
69082 the step labeled <i title="">end</i>. (<a href=#fragment-case>fragment
69095 <li>If <var title="">node</var> is a <code><a href=#the-body-element-0>body</a></code> element,
69096 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" and jump to the
69099 <li>If <var title="">node</var> is a <code><a href=#frameset>frameset</a></code> element,
69100 then switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inframeset title="insertion mode: in frameset">in frameset</a>" and jump to
69101 the step labeled <i title="">end</i>. (<a href=#fragment-case>fragment
69104 <li>If <var title="">node</var> is an <code><a href=#the-html-element-0>html</a></code> element,
69106 pointer</span> is null,--> switch the <a href=#insertion-mode>insertion mode</a>
69107 to "<a href=#the-before-head-insertion-mode title="insertion mode: before head">before
69110 Then, <!-- in either case, --> jump to the step labeled <i title="">end</i>. (<a href=#fragment-case>fragment case</a>)</li> <!-- if the
69114 <li>If <var title="">node</var> is an element from the <a href=#mathml-namespace>MathML
69115 namespace</a> or the <a href=#svg-namespace>SVG namespace</a>, then set the
69119 <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inbody title="insertion mode: in
69120 body">in body</a>" and jump to the step labeled <i title="">end</i>. (<a href=#fragment-case>fragment case</a>)</li>
69122 <li>Let <var title="">node</var> now be the node before <var title="">node</var> in the <a href=#stack-of-open-elements>stack of open
69128 <a href=#secondary-insertion-mode>secondary insertion mode</a> to whatever the
69129 <a href=#insertion-mode>insertion mode</a> is set to, and switch the
69130 <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inforeign title="insertion mode: in
69139 stack is manipulated in a random access fashion as part of <a href=#adoptionAgency>the handling for misnested tags</a>).</p>
69141 <p>The "<a href=#the-before-html-insertion-mode title="insertion mode: before html">before
69142 html</a>" <a href=#insertion-mode>insertion mode</a> creates the
69143 <code><a href=#the-html-element-0>html</a></code> root element node, which is then added to the
69146 <p>In the <a href=#fragment-case>fragment case</a>, the <a href=#stack-of-open-elements>stack of open
69147 elements</a> is initialized to contain an <code><a href=#the-html-element-0>html</a></code>
69148 element that is created as part of <a href=#html-fragment-parsing-algorithm title="html fragment
69149 parsing algorithm">that algorithm</a>. (The <a href=#fragment-case>fragment
69150 case</a> skips the "<a href=#the-before-html-insertion-mode title="insertion mode: before
69151 html">before html</a>" <a href=#insertion-mode>insertion mode</a>.)</p>
69153 <p>The <code><a href=#the-html-element-0>html</a></code> node, however it is created, is the topmost
69155 <a href=#stop-parsing title="stop parsing">finishes</a>.</p>
69160 <p>The <dfn id=current-table>current table</dfn> is the last <code><a href=#the-table-element>table</a></code>
69161 element in the <a href=#stack-of-open-elements>stack of open elements</a>, if there is
69162 one. If there is no <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of
69163 open elements</a> (<a href=#fragment-case>fragment case</a>), then the
69164 <a href=#current-table>current table</a> is the first element in the <a href=#stack-of-open-elements>stack
69165 of open elements</a> (the <code><a href=#the-html-element-0>html</a></code> element).</p>
69171 parsing rules: <code><a href=#the-address-element>address</a></code>, <code><a href=#the-area-element>area</a></code>,
69172 <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-base-element>base</a></code>,
69173 <code><a href=#basefont>basefont</a></code>, <code><a href=#bgsound>bgsound</a></code>,
69174 <code><a href=#the-blockquote-element>blockquote</a></code>, <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-br-element>br</a></code>,
69175 <code><a href=#the-button-element>button</a></code>, <code><a href=#center>center</a></code>, <code><a href=#the-col-element>col</a></code>,
69176 <code><a href=#the-colgroup-element>colgroup</a></code>, <code><a href=#the-command>command</a></code>, <!--v2DDATAGRID
69177 <code>datagrid</code>-->, <code><a href=#the-dd-element>dd</a></code>, <code><a href=#the-details-element>details</a></code>,
69178 <code><a href=#dir>dir</a></code>, <code><a href=#the-div-element>div</a></code>, <code><a href=#the-dl-element>dl</a></code>,
69179 <code><a href=#the-dt-element>dt</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-fieldset-element>fieldset</a></code>,
69180 <code><a href=#the-figure-element>figure</a></code>, <code><a href=#the-footer-element>footer</a></code>, <code><a href=#the-form-element>form</a></code>,
69181 <code><a href=#frame>frame</a></code>, <code><a href=#frameset>frameset</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>,
69182 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>,
69183 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>, <code><a href=#the-head-element-0>head</a></code>, <code><a href=#the-header-element>header</a></code>,
69184 <code><a href=#the-hgroup-element>hgroup</a></code>, <code><a href=#the-hr-element>hr</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <!--
69187 <code><a href=#the-img-element>img</a></code>, <code><a href=#the-input-element>input</a></code>, <code><a href=#isindex-0>isindex</a></code>,
69188 <code><a href=#the-li-element>li</a></code>, <code><a href=#the-link-element>link</a></code>, <code><a href=#listing>listing</a></code>,
69189 <code><a href=#menus>menu</a></code>, <code><a href=#meta>meta</a></code>, <code><a href=#the-nav-element>nav</a></code>,
69190 <code><a href=#noembed>noembed</a></code>, <code><a href=#noframes>noframes</a></code>, <code><a href=#the-noscript-element>noscript</a></code>,
69191 <code><a href=#the-ol-element>ol</a></code>, <code><a href=#the-p-element>p</a></code>, <code><a href=#the-param-element>param</a></code>,
69192 <code><a href=#plaintext>plaintext</a></code>, <code><a href=#the-pre-element>pre</a></code>, <code><a href=#script>script</a></code>,
69193 <code><a href=#the-section-element>section</a></code>, <code><a href=#the-select-element>select</a></code>, <code><a href=#the-style-element>style</a></code>,
69194 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-textarea-element>textarea</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>,
69195 <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-title-element-0>title</a></code>, <code><a href=#the-tr-element>tr</a></code>,
69196 <code><a href=#the-ul-element>ul</a></code>, <code><a href=#the-wbr-element>wbr</a></code>, and <code><a href=#xmp>xmp</a></code>.</dd>
69199 <dd><p>The following HTML elements introduce new <a href=#has-an-element-in-scope title="has
69201 parsing: <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-caption-element>caption</a></code>,
69202 <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#the-object-element>object</a></code>,
69203 <code><a href=#the-table-element>table</a></code>, <code><a href=#the-td-element>td</a></code>, <code><a href=#the-th-element>th</a></code>, and SVG's
69208 <a href=#list-of-active-formatting-elements>list of active formatting elements</a>: <code><a href=#the-a-element>a</a></code>,
69209 <code><a href=#the-b-element>b</a></code>, <code><a href=#big>big</a></code>, <code><a href=#the-code-element>code</a></code>,
69210 <code><a href=#the-em-element>em</a></code>, <code><a href=#font>font</a></code>, <code><a href=#the-i-element>i</a></code>,
69211 <code><a href=#nobr>nobr</a></code>, <code><a href=#s>s</a></code>, <code><a href=#the-small-element>small</a></code>,
69212 <code><a href=#strike>strike</a></code>, <code><a href=#the-strong-element>strong</a></code>, <code><a href=#tt>tt</a></code>, and
69213 <code><a href=#u>u</a></code>.</dd>
69219 </dl><p>The <a href=#stack-of-open-elements>stack of open elements</a> is said to <dfn id=has-an-element-in-the-specific-scope title="has an element in the specific scope">have an element in a
69223 <ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
69234 entry in the <a href=#stack-of-open-elements>stack of open elements</a> and return to step
69237 <code><a href=#the-html-element-0>html</a></code> element — is reached.)</li>
69239 </ol><p>The <a href=#stack-of-open-elements>stack of open elements</a> is said to <dfn id=has-an-element-in-scope title="has an element in scope">have an element in scope</dfn> when
69240 it <a href=#has-an-element-in-the-specific-scope>has an element in the specific scope</a> consisting
69243 <ul class=brief><li><code><a href=#the-applet-element>applet</a></code> in the HTML namespace</li>
69244 <li><code><a href=#the-caption-element>caption</a></code> in the HTML namespace</li>
69245 <li><code><a href=#the-html-element-0>html</a></code> in the HTML namespace</li> <!-- (This can only happen if the <var title="">node</var> is the topmost node of the <span>stack of open elements</span>, and prevents the next step from being invoked if there are no more elements in the stack.) -->
69246 <li><code><a href=#the-table-element>table</a></code> in the HTML namespace</li>
69247 <li><code><a href=#the-td-element>td</a></code> in the HTML namespace</li>
69248 <li><code><a href=#the-th-element>th</a></code> in the HTML namespace</li>
69249 <li><code><a href=#the-button-element>button</a></code> in the HTML namespace</li>
69250 <li><code><a href=#the-marquee-element>marquee</a></code> in the HTML namespace</li>
69251 <li><code><a href=#the-object-element>object</a></code> in the HTML namespace</li>
69253 </ul><p>The <a href
69254 item scope</dfn> when it <a href=#has-an-element-in-the-specific-scope>has an element in the specific
69257 <ul class=brief><li>All the element types listed above for the <i><a href=#has-an-element-in-scope>has an element
69259 <li><code><a href=#the-ol-element>ol</a></code> in the HTML namespace</li>
69260 <li><code><a href=#the-ul-element>ul</a></code> in the HTML namespace</li>
69261 </ul><p>The <a href=#stack-of-open-elements>stack of open elements</a> is said to <dfn id=has-an-element-in-table-scope title="has an element in table scope">have an element in <em>table
69262 scope</em></dfn> when it <a href=#has-an-element-in-the-specific-scope>has an element in the specific
69265 <ul class=brief><li><code><a href=#the-html-element-0>html</a></code> in the HTML namespace</li> <!-- (This can only happen if the <var title="">node</var> is the topmost node of the <span>stack of open elements</span>, and prevents the next step from being invoked if there are no more elements in the stack.) -->
69266 <li><code><a href=#the-table-element>table</a></code> in the HTML namespace</li>
69268 <a href=#stack-of-open-elements>stack of open elements</a> are moved to a new location in,
69269 or removed from, the <code><a href=#document>Document</a></code> tree. In particular, the
69274 <p class=note>In some cases (namely, when <a href=#adoptionAgency>closing misnested formatting elements</a>),
69281 empty. It is used to handle mis-nested <a href=#formatting title=formatting>formatting element tags</a>.</p>
69283 <p>The list contains elements in the <a href=#formatting>formatting</a>
69285 entering <code><a href=#the-applet-element>applet</a></code> elements, buttons, <code><a href=#the-object-element>object</a></code>
69287 prevent formatting from "leaking" <em>into</em> <code><a href=#the-applet-element>applet</a></code>
69288 elements, buttons, <code><a href=#the-object-element>object</a></code> elements, marquees, and
69292 element being <a href=#has-an-element-in-scope title="has an element in scope">in
69295 <p>In addition, each element in the <a href=#list-of-active-formatting-elements>list of active formatting
69304 <ol><li>If there are no entries in the <a href=#list-of-active-formatting-elements>list of active formatting
69308 <li>If the last (most recently added) entry in the <a href=#list-of-active-formatting-elements>list of
69310 element that is in the <a href=#stack-of-open-elements>stack of open elements</a>, then
69314 element in the <a href=#list-of-active-formatting-elements>list of active formatting
69318 <a href=#list-of-active-formatting-elements>list of active formatting elements</a>, then jump to step
69322 <var title="">entry</var> in the <a href=#list-of-active-formatting-elements>list of active formatting
69326 that is also in the <a href=#stack-of-open-elements>stack of open elements</a>, go to step
69330 <var title="">entry</var> in the <a href=#list-of-active-formatting-elements>list of active formatting
69333 <li><a href=#create-an-element-for-the-token>Create an element for the token</a> for which the
69336 <li>Append <var title="">new element</var> to the <a href=#current-node>current
69337 node</a> and push it onto the <a href=#stack-of-open-elements>stack of open
69338 elements</a> so that it is the new <a href=#current-node>current
69345 <a href=#list-of-active-formatting-elements>list of active formatting elements</a> is not the last
69353 <a href=#list-of-active-formatting-elements>list of active formatting elements</a> always consists of
69364 entry in the <a href=#list-of-active-formatting-elements>list of active formatting elements</a>.</li>
69366 <li>Remove <var title="">entry</var> from the <a href=#list-of-active-formatting-elements>list of active
69381 <p>Once a <code><a href=#the-head-element-0>head</a></code> element has been parsed (whether
69382 implicitly or explicitly) the <a href=#head-element-pointer><code title="">head</code>
69385 <p>The <a href=#form-element-pointer><code title="">form</code> element pointer</a>
69386 points to the last <code><a href=#the-form-element>form</a></code> element that was opened and
69394 <p>The <dfn id=scripting-flag>scripting flag</dfn> is set to "enabled" if <a href=#concept-n-script title=concept-n-script>scripting was enabled</a> for the
69395 <code><a href=#document>Document</a></code> with which the parser is associated when the
69398 <p class=note>The <a href=#scripting-flag>scripting flag</a> can be enabled even
69399 when the parser was originally created for the <a href=#html-fragment-parsing-algorithm>HTML fragment
69400 parsing algorithm</a>, even though <code><a href=#script>script</a></code> elements
69415 <a href=#data-state>data state</a>. Most states consume a single character,
69425 <a href=#insertion-mode>insertion mode</a> and the <a href=#stack-of-open-elements>stack of open
69445 <a href=#tree-construction>tree construction</a> stage. The tree construction stage
69448 <code><a href=#script>script</a></code> element can result in scripts executing and
69449 using the <a href=#dynamic-markup-insertion>dynamic markup insertion</a> APIs to insert
69455 tree construction stage, that is a <a href=#parse-error>parse error</a>.</p>
69458 <a href=#parse-error>parse error</a>.</p>
69461 flag</i> set, that is a <a href=#parse-error>parse error</a>.</p>
69470 check the <a href=#parser-pause-flag>parser pause flag</a>. If it is true, then the
69484 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69487 <dd>Switch to the <a href=#character-reference-in-data-state>character reference in data
69491 <dd>Switch to the <a href=#tag-open-state>tag open state</a>.</dd>
69497 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69498 token. Stay in the <a href=#data-state>data state</a>.</dd>
69502 <p>Attempt to <a href=#consume-a-character-reference>consume a character reference</a>, with no
69503 <a href=#additional-allowed-character>additional allowed character</a>.</p>
69510 <p>Finally, switch to the <a href=#data-state>data state</a>.</p>
69515 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69518 <dd>Switch to the <a href=#character-reference-in-rcdata-state>character reference in RCDATA
69522 <dd>Switch to the <a href=#rcdata-less-than-sign-state>RCDATA less-than sign state</a>.</dd>
69528 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69529 token. Stay in the <a href=#rcdata-state>RCDATA state</a>.</dd>
69533 <p>Attempt to <a href=#consume-a-character-reference>consume a character reference</a>, with no
69534 <a href=#additional-allowed-character>additional allowed character</a>.</p>
69541 <p>Finally, switch to the <a href=#rcdata-state>RCDATA state</a>.</p>
69546 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69549 <dd>Switch to the <a href=#rawtext-less-than-sign-state>RAWTEXT less-than sign state</a>.</dd>
69555 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69556 token. Stay in the <a href=#rawtext-state>RAWTEXT state</a>.</dd>
69560 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69563 <dd>Switch to the <a href=#script-data-less-than-sign-state>script data less-than sign state</a>.</dd>
69569 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69570 token. Stay in the <a href=#script-data-state>script data state</a>.</dd>
69574 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69580 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69581 token. Stay in the <a href=#plaintext-state>PLAINTEXT state</a>.</dd>
69585 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69588 <dd>Switch to the <a href=#markup-declaration-open-state>markup declaration open state</a>.</dd>
69591 <dd>Switch to the <a href=#end-tag-open-state>end tag open state</a>.</dd>
69595 lowercase version of the <a href=#current-input-character>current input character</a> (add 0x0020 to the
69596 character's code point), then switch to the <a href=#tag-name-state>tag name
69602 <a href=#current-input-character>current input character</a>, then switch to the <a href=#tag-name-state>tag
69607 <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#bogus-comment-state>bogus
69611 <dd><a href=#parse-error>Parse error</a>. Emit a U+003C LESS-THAN SIGN
69612 character token and reconsume the <a href=#current-input-character>current input
69613 character</a> in the <a href=#data-state>data state</a>.</dd>
69617 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69621 version of the <a href=#current-input-character>current input character</a> (add 0x0020 to
69622 the character's code point), then switch to the <a href=#tag-name-state>tag name
69628 <a href=#current-input-character>current input character</a>, then switch to the <a href=#tag-name-state>tag
69633 <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#data-state>data
69637 <dd><a href=#parse-error>Parse error</a>. Emit a U+003C LESS-THAN SIGN
69639 the EOF character in the <a href=#data-state>data state</a>.</dd>
69642 <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#bogus-comment-state>bogus
69647 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69654 <dd>Switch to the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
69657 <dd>Switch to the <a href=#self-closing-start-tag-state>self-closing start tag state</a>.</dd>
69660 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
69664 <dd>Append the lowercase version of the <a href=#current-input-character>current input
69666 current tag token's tag name. Stay in the <a href=#tag-name-state>tag name
69670 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
69671 <a href=#data-state>data state</a>.</dd>
69674 <dd>Append the <a href=#current-input-character>current input character</a> to the current
69675 tag token's tag name. Stay in the <a href=#tag-name-state>tag name state</a>.</dd>
69680 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69683 <dd>Set the <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Switch
69684 to the <a href=#rcdata-end-tag-open-state>RCDATA end tag open state</a>.</dd>
69688 <a href=#current-input-character>current input character</a> in the <a href=#rcdata-state>RCDATA
69694 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69698 lowercase version of the <a href=#current-input-character>current input character</a> (add
69699 0x0020 to the character's code point). Append the <a href=#current-input-character>current
69700 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69701 switch to the <a href=#rcdata-end-tag-name-state>RCDATA end tag name state</a>. (Don't emit
69707 <a href=#current-input-character>current input character</a>. Append the <a href=#current-input-character>current
69708 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69709 switch to the <a href=#rcdata-end-tag-name-state>RCDATA end tag name state</a>. (Don't emit
69715 character token, and reconsume the <a href=#current-input-character>current input
69716 character</a> in the <a href=#rcdata-state>RCDATA state</a>.</dd>
69721 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69728 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69729 token</a>, then switch to the <a href=#before-attribute-name-state>before attribute name
69734 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69735 token</a>, then switch to the <a href=#self-closing-start-tag-state>self-closing start tag
69740 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69742 <a href=#data-state>data state</a>. Otherwise, treat it as per the "anything
69746 <dd>Append the lowercase version of the <a href=#current-input-character>current input
69748 current tag token's tag name. Append the <a href=#current-input-character>current input
69749 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69750 <a href=#rcdata-end-tag-name-state>RCDATA end tag name state</a>.</dd>
69753 <dd>Append the <a href=#current-input-character>current input character</a> to the current
69754 tag token's tag name. Append the <a href=#current-input-character>current input
69755 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69756 <a href=#rcdata-end-tag-name-state>RCDATA end tag name state</a>.</dd>
69761 the <var><a href=#temporary-buffer>temporary buffer</a></var> (in the order they were added to
69762 the buffer), and reconsume the <a href=#current-input-character>current input character</a>
69763 in the <a href=#rcdata-state>RCDATA state</a>.</dd>
69768 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69771 <dd>Set the <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Switch
69772 to the <a href=#rawtext-end-tag-open-state>RAWTEXT end tag open state</a>.</dd>
69776 <a href=#current-input-character>current input character</a> in the <a href=#rawtext-state>RAWTEXT
69782 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69786 lowercase version of the <a href=#current-input-character>current input character</a> (add
69787 0x0020 to the character's code point). Append the <a href=#current-input-character>current
69788 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69789 switch to the <a href=#rawtext-end-tag-name-state>RAWTEXT end tag name state</a>. (Don't emit
69795 <a href=#current-input-character>current input character</a>. Append the <a href=#current-input-character>current
69796 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69797 switch to the <a href=#rawtext-end-tag-name-state>RAWTEXT end tag name state</a>. (Don't emit
69803 character token, and reconsume the <a href=#current-input-character>current input
69804 character</a> in the <a href=#rawtext-state>RAWTEXT state</a>.</dd>
69809 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69816 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69817 token</a>, then switch to the <a href=#before-attribute-name-state>before attribute name
69822 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69823 token</a>, then switch to the <a href=#self-closing-start-tag-state>self-closing start tag
69828 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69830 <a href=#data-state>data state</a>. Otherwise, treat it as per the "anything
69834 <dd>Append the lowercase version of the <a href=#current-input-character>current input
69836 current tag token's tag name. Append the <a href=#current-input-character>current input
69837 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69838 <a href=#rawtext-end-tag-name-state>RAWTEXT end tag name state</a>.</dd>
69841 <dd>Append the <a href=#current-input-character>current input character</a> to the current
69842 tag token's tag name. Append the <a href=#current-input-character>current input
69843 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69844 <a href=#rawtext-end-tag-name-state>RAWTEXT end tag name state</a>.</dd>
69849 the <var><a href=#temporary-buffer>temporary buffer</a></var> (in the order they were added to
69850 the buffer), and reconsume the <a href=#current-input-character>current input character</a>
69851 in the <a href=#rawtext-state>RAWTEXT state</a>.</dd>
69855 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69858 <dd>Set the <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Switch
69859 to the <a href=#script-data-end-tag-open-state>script data end tag open state</a>.</dd>
69863 EXCLAMATION MARK character token. Switch to the <a href=#script-data-escape-start-state>script data
69868 <a href=#current-input-character>current input character</a> in the <a href=#script-data-state>script data
69874 <p>Consume the <a href
69878 lowercase version of the <a href=#current-input-character>current input character</a> (add
69879 0x0020 to the character's code point). Append the <a href=#current-input-character>current
69880 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69881 switch to the <a href=#script-data-end-tag-name-state>script data end tag name state</a>. (Don't emit
69887 <a href=#current-input-character>current input character</a>. Append the <a href=#current-input-character>current
69888 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
69889 switch to the <a href=#script-data-end-tag-name-state>script data end tag name state</a>. (Don't emit
69895 character token, and reconsume the <a href=#current-input-character>current input
69896 character</a> in the <a href=#script-data-state>script data state</a>.</dd>
69901 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69908 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69909 token</a>, then switch to the <a href=#before-attribute-name-state>before attribute name
69914 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69915 token</a>, then switch to the <a href=#self-closing-start-tag-state>self-closing start tag
69920 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
69922 <a href=#data-state>data state</a>. Otherwise, treat it as per the "anything
69926 <dd>Append the lowercase version of the <a href=#current-input-character>current input
69928 current tag token's tag name. Append the <a href=#current-input-character>current input
69929 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69930 <a href=#script-data-end-tag-name-state>script data end tag name state</a>.</dd>
69933 <dd>Append the <a href=#current-input-character>current input character</a> to the current
69934 tag token's tag name. Append the <a href=#current-input-character>current input
69935 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
69936 <a href=#script-data-end-tag-name-state>script data end tag name state</a>.</dd>
69941 the <var><a href=#temporary-buffer>temporary buffer</a></var> (in the order they were added to
69942 the buffer), and reconsume the <a href=#current-input-character>current input character</a>
69943 in the <a href=#script-data-state>script data state</a>.</dd>
69947 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69951 <a href=#script-data-escape-start-dash-state>script data escape start dash state</a>.</dd>
69954 <dd>Reconsume the <a href=#current-input-character>current input character</a> in the
69955 <a href=#script-data-state>script data state</a>.</dd>
69959 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69963 <a href=#script-data-escaped-dash-dash-state>script data escaped dash dash state</a>.</dd>
69966 <dd>Reconsume the <a href=#current-input-character>current input character</a> in the
69967 <a href=#script-data-state>script data state</a>.</dd>
69971 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69975 <a href=#script-data-escaped-dash-state>script data escaped dash state</a>.</dd>
69978 <dd><p>Switch to the <a href=#script-data-escaped-less-than-sign-state>script data escaped less-than sign
69982 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
69983 <a href=#data-state>data state</a>.</dd>
69986 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
69987 token. Stay in the <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
69991 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
69995 <a href=#script-data-escaped-dash-dash-state>script data escaped dash dash state</a>.</dd>
69998 <dd><p>Switch to the <a href=#script-data-escaped-less-than-sign-state>script data escaped less-than sign
70002 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70003 <a href=#data-state>data state</a>.</dd>
70006 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70007 token. Switch to the <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
70011 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70015 <a href=#script-data-escaped-dash-dash-state>script data escaped dash dash state</a>.</dd>
70018 <dd><p>Switch to the <a href=#script-data-escaped-less-than-sign-state>script data escaped less-than sign
70023 <a href=#script-data-state>script data state</a>.</dd>
70026 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70027 <a href=#data-state>data state</a>.</dd>
70030 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70031 token. Switch to the <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
70035 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70038 <dd>Set the <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Switch
70039 to the <a href=#script-data-escaped-end-tag-open-state>script data escaped end tag open state</a>.</dd>
70043 <a href=#current-input-character>current input character</a> as a character token. Set the
70044 <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Append the
70045 lowercase version of the <a href=#current-input-character>current input character</a> (add
70046 0x0020 to the character's code point) to the <var><a href=#temporary-buffer>temporary
70047 buffer</a></var>. Switch to the <a href=#script-data-double-escape-start-state>script data double escape start
70052 <a href=#current-input-character>current input character</a> as a character token. Set the
70053 <var><a href=#temporary-buffer>temporary buffer</a></var> to the empty string. Append the
70054 <a href=#current-input-character>current input character</a> to the <var><a href=#temporary-buffer>temporary
70055 buffer</a></var>. Switch to the <a href=#script-data-double-escape-start-state>script data double escape start
70060 <a href=#current-input-character>current input character</a> in the <a href=#script-data-escaped-state>script data
70065 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70069 lowercase version of the <a href=#current-input-character>current input character</a> (add
70070 0x0020 to the character's code point). Append the <a href=#current-input-character>current
70071 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
70072 switch to the <a href=#script-data-escaped-end-tag-name-state>script data escaped end tag name
70078 <a href=#current-input-character>current input character</a>. Append the <a href=#current-input-character>current
70079 input character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Finally,
70080 switch to the <a href=#script-data-escaped-end-tag-name-state>script data escaped end tag name
70086 character token, and reconsume the <a href=#current-input-character>current input
70087 character</a> in the <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
70091 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70098 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
70099 token</a>, then switch to the <a href=#before-attribute-name-state>before attribute name
70104 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
70105 token</a>, then switch to the <a href=#self-closing-start-tag-state>self-closing start tag
70110 <dd>If the current end tag token is an <a href=#appropriate-end-tag-token>appropriate end tag
70112 <a href=#data-state>data state</a>. Otherwise, treat it as per the "anything
70116 <dd>Append the lowercase version of the <a href=#current-input-character>current input
70118 current tag token's tag name. Append the <a href=#current-input-character>current input
70119 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
70120 <a href=#script-data-escaped-end-tag-name-state>script data escaped end tag name state</a>.</dd>
70123 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70124 tag token's tag name. Append the <a href=#current-input-character>current input
70125 character</a> to the <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the
70126 <a href=#script-data-escaped-end-tag-name-state>script data escaped end tag name state</a>.</dd>
70131 the <var><a href=#temporary-buffer>temporary buffer</a></var> (in the order they were added to
70132 the buffer), and reconsume the <a href=#current-input-character>current input character</a>
70133 in the <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
70137 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70146 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70147 token. If the <var><a href=#temporary-buffer>temporary buffer</a></var> is the string "<code title="">script</code>", then switch to the <a href=#script-data-double-escaped-state>script data
70148 double escaped state</a>. Otherwise, switch to the <a href=#script-data-escaped-state>script
70152 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70153 token. Append the lowercase version of the <a href=#current-input-character>current input
70155 <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the <a href=#script-data-double-escape-start-state>script data double
70159 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70160 href=#current-input-character>current input character</a> to the
70161 <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the <a href=#script-data-double-escape-start-state>script data double
70165 <dd>Reconsume the <a href=#current-input-character>current input character</a> in the
70166 <a href=#script-data-escaped-state>script data escaped state</a>.</dd>
70170 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70174 <a href=#script-data-double-escaped-dash-state>script data double escaped dash state</a>.</dd>
70178 <a href=#script-data-double-escaped-less-than-sign-state>script data double escaped less-than sign
70182 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70183 <a href=#data-state>data state</a>.</dd>
70186 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70187 token. Stay in the <a href=#script-data-double-escaped-state>script data double escaped
70192 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70196 <a href=#script-data-double-escaped-dash-dash-state>script data double escaped dash dash state</a>.</dd>
70200 <a href=#script-data-double-escaped-less-than-sign-state>script data double escaped less-than sign
70204 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70205 <a href=#data-state>data state</a>.</dd>
70208 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70209 token. Switch to the <a href=#script-data-double-escaped-state>script data double escaped
70214 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70218 <a href=#script-data-double-escaped-dash-dash-state>script data double escaped dash dash state</a>.</dd>
70222 <a href=#script-data-double-escaped-less-than-sign-state>script data double escaped less-than sign
70227 <a href=#script-data-state>script data state</a>.</dd>
70230 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70231 <a href=#data-state>data state</a>.</dd>
70234 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70235 token. Switch to the <a href=#script-data-double-escaped-state>script data double escaped
70240 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70243 <dd>Emit a U+002F SOLIDUS character token. Set the <var><a href=#temporary-buffer>temporary
70244 buffer</a></var> to the empty string. Switch to the <a href=#script-data-double-escape-end-state>script data
70248 <dd>Reconsume the <a href=#current-input-character>current input character</a> in the
70249 <a href=#script-data-double-escaped-state>script data double escaped state</a>.</dd>
70253 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70262 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70263 token. If the <var><a href=#temporary-buffer>temporary buffer</a></var> is the string "<code title="">script</code>", then switch to the <a href=#script-data-escaped-state>script data
70264 escaped state</a>. Otherwise, switch to the <a href=#script-data-double-escaped-state>script data
70268 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70269 token. Append the lowercase version of the <a href=#current-input-character>current input
70271 <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the <a href=#script-data-double-escape-end-state>script data double
70275 <dd>Emit the <a href=#current-input-character>current input character</a> as a character
70276 token. Append the <a href=#current-input-character>current input character</a> to the
70277 <var><a href=#temporary-buffer>temporary buffer</a></var>. Stay in the <a href=#script-data-double-escape-end-state>script data double
70281 <dd>Reconsume the <a href=#current-input-character>current input character</a> in the
70282 <a href=#script-data-double-escaped-state>script data double escaped state</a>.</dd>
70286 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70293 <dd>Stay in the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
70296 <dd>Switch to the <a href=#self-closing-start-tag-state>self-closing start tag state</a>.</dd>
70299 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
70304 attribute's name to the lowercase version of the <a href=#current-input-character>current input
70306 value to the empty string. Switch to the <a href=#attribute-name-state>attribute name
70313 <dd><a href=#parse-error>Parse error</a>. Treat it as per the "anything else"
70317 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70318 <a href=#data-state>data state</a>.</dd>
70322 attribute's name to the <a href=#current-input-character>current input character</a>, and its value to
70323 the empty string. Switch to the <a href=#attribute-name-state>attribute name
70328 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70335 <dd>Switch to the <a href=#after-attribute-name-state>after attribute name state</a>.</dd>
70338 <dd>Switch to the <a href=#self-closing-start-tag-state>self-closing start tag state</a>.</dd>
70341 <dd>Switch to the <a href=#before-attribute-value-state>before attribute value state</a>.</dd>
70344 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
70348 <dd>Append the lowercase version of the <a href=#current-input-character>current input
70350 current attribute's name. Stay in the <a href=#attribute-name-state>attribute name
70356 <dd><a href=#parse-error>Parse error</a>. Treat it as per the "anything else"
70360 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70361 <a href=#data-state>data state</a>.</dd>
70364 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70365 attribute's name. Stay in the <a href=#attribute-name-state>attribute name
70372 name, then this is a <a href=#parse-error>parse error</a> and the new
70379 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70386 <dd>Stay in the <a href=#after-attribute-name-state>after attribute name state</a>.</dd>
70389 <dd>Switch to the <a href=#self-closing-start-tag-state>self-closing start tag state</a>.</dd>
70392 <dd>Switch to the <a href=#before-attribute-value-state>before attribute value state</a>.</dd>
70395 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
70400 attribute's name to the lowercase version of the <a href=#current-input-character>current
70402 and its value to the empty string. Switch to the <a href=#attribute-name-state>attribute
70408 <dd><a href=#parse-error>Parse error</a>. Treat it as per the "anything else"
70412 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70413 <a href=#data-state>data state</a>.</dd>
70417 attribute's name to the <a href=#current-input-character>current input character</a>, and
70418 its value to the empty string. Switch to the <a href=#attribute-name-state>attribute name
70423 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70430 <dd>Stay in the <a href=#before-attribute-value-state>before attribute value state</a>.</dd>
70433 <dd>Switch to the <a href=#attribute-value-(double-quoted)-state>attribute value (double-quoted) state</a>.</dd>
70436 <dd>Switch to the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted) state</a>
70437 and reconsume this <a href=#current-input-character>current input character</a>.</dd>
70440 <dd>Switch to the <a href=#attribute-value-(single-quoted)-state>attribute value (single-quoted) state</a>.</dd>
70443 <dd><a href=#parse-error>Parse error</a>. Emit the current tag token. Switch to
70444 the <a href=#data-state>data state</a>.</dd>
70449 <dd><a href=#parse-error>Parse error</a>. Treat it as per the "anything else"
70453 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70454 <a href=#data-state>data state</a>.</dd>
70457 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70458 attribute's value. Switch to the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
70463 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70466 <dd>Switch to the <a href=#after-attribute-value-(quoted)-state>after attribute value (quoted)
70470 <dd>Switch to the <a href=#character-reference-in-attribute-value-state>character reference in attribute value
70471 state</a>, with the <a href=#additional-allowed-character>additional allowed character</a>
70475 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70476 <a href=#data-state>data state</a>.</dd>
70479 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70480 attribute's value. Stay in the <a href=#attribute-value-(double-quoted)-state>attribute value
70485 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70488 <dd>Switch to the <a href=#after-attribute-value-(quoted)-state>after attribute value (quoted)
70492 <dd>Switch to the <a href=#character-reference-in-attribute-value-state>character reference in attribute value
70493 state</a>, with the <a href=#additional-allowed-character>additional allowed character</a>
70497 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70498 <a href=#data-state>data state</a>.</dd>
70501 <dd>Append the <a href
70502 attribute's value. Stay in the <a href=#attribute-value-(single-quoted)-state>attribute value
70507 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70514 <dd>Switch to the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
70517 <dd>Switch to the <a href=#character-reference-in-attribute-value-state>character reference in attribute value
70518 state</a>, with the <a href=#additional-allowed-character>additional allowed character</a>
70522 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
70530 <dd><a href=#parse-error>Parse error</a>. Treat it as per the "anything else"
70534 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70535 <a href=#data-state>data state</a>.</dd>
70538 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70539 attribute's value. Stay in the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
70544 <p>Attempt to <a href=#consume-a-character-reference>consume a character reference</a>.</p>
70558 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70565 <dd>Switch to the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
70568 <dd>Switch to the <a href=#self-closing-start-tag-state>self-closing start tag state</a>.</dd>
70571 <dd>Emit the current tag token. Switch to the <a href=#data-state>data
70575 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70576 <a href=#data-state>data state</a>.</dd>
70579 <dd><a href=#parse-error>Parse error</a>. Reconsume the character in
70580 the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
70584 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70588 token. Emit the current tag token. Switch to the <a href=#data-state>data
70592 <dd><a href=#parse-error>Parse error</a>. Reconsume the EOF character in the
70593 <a href=#data-state>data state</a>.</dd>
70596 <dd><a href=#parse-error>Parse error</a>. Reconsume the character in
70597 the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
70611 <p>Switch to the <a href=#data-state>data state</a>.</p>
70621 whose data is the empty string, and switch to the <a href=#comment-start-state>comment
70624 <p>Otherwise, if the next seven characters are an <a href=#ascii-case-insensitive>ASCII
70626 those characters and switch to the <a href=#doctype-state>DOCTYPE state</a>.</p>
70628 <p>Otherwise, if the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in foreign
70629 content</a>" and the <a href=#current-node>current node</a> is not an element
70630 in the <a href=#html-namespace-0>HTML namespace</a> and the next seven characters are
70631 an <a href=#case-sensitive>case-sensitive</a> match for the string "[CDATA[" (the
70634 switch to the <a href=#cdata-section-state>CDATA section state</a>.</p>
70636 <p>Otherwise, this is a <a href=#parse-error>parse error</a>. Switch to the
70637 <a href=#bogus-comment-state>bogus comment state</a>. The next character that is
70644 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70647 <dd>Switch to the <a href=#comment-start-dash-state>comment start dash state</a>.</dd>
70650 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Switch to the
70651 <a href=#data-state>data state</a>.</dd> <!-- see comment in comment end state
70655 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume
70656 the EOF character in the <a href=#data-state>data state</a>.</dd>
70659 <dd>Append the <a href=#current-input-character>current input character</a> to the comment
70660 token's data. Switch to the <a href=#comment-state>comment state</a>.</dd>
70664 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70667 <dd>Switch to the <a href=#comment-end-state>comment end state</a></dd>
70670 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Switch to
70671 the <a href=#data-state>data state</a>.</dd>
70674 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume the
70675 EOF character in the <a href=#data-state>data state</a>.</dd> <!-- see comment
70680 <a href=#current-input-character>current input character</a> to the comment token's
70681 data. Switch to the <a href=#comment-state>comment state</a>.</dd>
70685 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70688 <dd>Switch to the <a href=#comment-end-dash-state>comment end dash state</a></dd>
70691 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume the
70692 EOF character in the <a href=#data-state>data state</a>.</dd> <!-- see comment
70696 <dd>Append the <a href=#current-input-character>current input character</a> to the comment
70697 token's data. Stay in the <a href=#comment-state>comment state</a>.</dd>
70701 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70704 <dd>Switch to the <a href=#comment-end-state>comment end state</a></dd>
70707 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume the
70708 EOF character in the <a href=#data-state>data state</a>.</dd> <!-- see comment
70713 <a href=#current-input-character>current input character</a> to the comment token's
70714 data. Switch to the <a href=#comment-state>comment state</a>.</dd>
70718 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70721 <dd>Emit the comment token. Switch to the <a href=#data-state>data
70729 <dd><a href=#parse-error>Parse error</a>. Append two U+002D HYPHEN-MINUS
70730 characters (-) and the <a href=#current-input-character>current input character</a> to the
70731 comment token's data. Switch to the <a href=#comment-end-space-state>comment end space
70735 <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#comment-end-bang-state>comment end bang
70739 <dd><a href=#parse-error>Parse error</a>. Append a U+002D HYPHEN-MINUS
70741 <a href=#comment-end-state>comment end state</a>.</dd>
70744 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume
70745 the EOF character in the <a href=#data-state>data state</a>.</dd> <!-- For
70752 <dd><a href=#parse-error>Parse error</a>. Append two U+002D HYPHEN-MINUS
70753 characters (-) and the <a href=#current-input-character>current input character</a> to the
70754 comment token's data. Switch to the <a href=#comment-state>comment
70759 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70764 to the <a href=#comment-end-dash-state>comment end dash state</a>.</dd>
70767 <dd>Emit the comment token. Switch to the <a href=#data-state>data
70771 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume
70772 the EOF character in the <a href=#data-state>data state</a>.</dd> <!-- see
70777 EXCLAMATION MARK character (!), and the <a href=#current-input-character>current input
70779 <a href=#comment-state>comment state</a>.</dd>
70783 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70790 <dd>Append the <a href=#current-input-character>current input character</a> to the comment token's data. Stay in
70791 the <a href=#comment-end-space-state>comment end space state</a>.</dd>
70794 <dd>Switch to the <a href=#comment-end-dash-state>comment end dash state</a>.</dd>
70797 <dd>Emit the comment token. Switch to the <a href=#data-state>data
70801 <dd><a href=#parse-error>Parse error</a>. Emit the comment token. Reconsume
70802 the EOF character in the <a href=#data-state>data state</a>.</dd> <!-- see
70806 <dd>Append the <a href=#current-input-character>current input character</a> to the comment token's data. Switch
70807 to the <a href=#comment-state>comment state</a>.</dd>
70811 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70818 <dd>Switch to the <a href=#before-doctype-name-state>before DOCTYPE name state</a>.</dd>
70821 <dd><a href=#parse-error>Parse error</a>. Create a new DOCTYPE token. Set its
70823 the EOF character in the <a href=#data-state>data state</a>.</dd>
70826 <dd><a href=#parse-error>Parse error</a>. Reconsume the character in the
70827 <a href=#before-doctype-name-state>before DOCTYPE name state</a>.</dd>
70831 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70838 <dd>Stay in the <a href=#before-doctype-name-state>before DOCTYPE name state</a>.</dd>
70842 lowercase version of the <a href=#current-input-character>current input character</a> (add 0x0020 to the
70843 character's code point). Switch to the <a href=#doctype-name-state>DOCTYPE name
70847 <dd><a href=#parse-error>Parse error</a>. Create a new DOCTYPE token. Set its
70849 the <a href=#data-state>data state</a>.</dd>
70852 <dd><a href=#parse-error>Parse error</a>. Create a new DOCTYPE token. Set its
70854 the EOF character in the <a href=#data-state>data state</a>.</dd>
70858 <a hrefhref=#doctype-name-state>DOCTYPE name
70863 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70870 <dd>Switch to the <a href=#after-doctype-name-state>after DOCTYPE name state</a>.</dd>
70873 <dd>Emit the current DOCTYPE token. Switch to the <a href=#data-state>data
70877 <dd>Append the lowercase version of the <a href=#current-input-character>current input
70879 current DOCTYPE token's name. Stay in the <a href=#doctype-name-state>DOCTYPE name
70883 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70885 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
70888 <dd>Append the <a href=#current-input-character>current input character</a> to the current
70889 DOCTYPE token's name. Stay in the <a href=#doctype-name-state>DOCTYPE name
70894 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70901 <dd>Stay in the <a href=#after-doctype-name-state>after DOCTYPE name state</a>.</dd>
70904 <dd>Emit the current DOCTYPE token. Switch to the <a href=#data-state>data
70908 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70910 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
70915 <p>If the six characters starting from the <a href=#current-input-character>current input
70916 character</a> are an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match
70918 the <a href=#after-doctype-public-keyword-state>after DOCTYPE public keyword state</a>.</p>
70921 <a href=#current-input-character>current input character</a> are an <a href=#ascii-case-insensitive>ASCII
70923 those characters and switch to the <a href=#after-doctype-system-keyword-state>after DOCTYPE system
70926 <p>Otherwise, this is the <a href=#parse-error>parse error</a>. Set the
70928 the <a href=#bogus-doctype-state>bogus DOCTYPE state</a>.</p>
70934 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70941 <dd>Switch to the <a href=#before-doctype-public-identifier-state>before DOCTYPE public identifier
70945 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's public
70947 <a href=#doctype-public-identifier-(double-quoted)-state>DOCTYPE public identifier (double-quoted) state</a>.</dd>
70950 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's public
70952 <a href=#doctype-public-identifier-(single-quoted)-state>DOCTYPE public identifier (single-quoted) state</a>.</dd>
70955 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70957 token. Switch to the <a href=#data-state>data state</a>.</dd>
70960 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70962 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
70965 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70966 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
70971 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
70978 <dd>Stay in the <a href=#before-doctype-public-identifier-state>before DOCTYPE public identifier state</a>.</dd>
70982 (not missing), then switch to the <a href=#doctype-public-identifier-(double-quoted)-state>DOCTYPE public identifier
70987 (not missing), then switch to the <a href=#doctype-public-identifier-(single-quoted)-state>DOCTYPE public identifier
70991 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70993 token. Switch to the <a href=#data-state>data state</a>.</dd>
70996 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
70998 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71001 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71002 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
71007 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71010 <dd>Switch to the <a href=#after-doctype-public-identifier-state>after DOCTYPE public identifier state</a>.</dd>
71013 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71015 token. Switch to the <a href=#data-state>data state</a>.</dd>
71018 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71020 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71023 <dd>Append the <a href=#current-input-character>current input character</a> to the current DOCTYPE
71024 token's public identifier. Stay in the <a href=#doctype-public-identifier-(double-quoted)-state>DOCTYPE public
71029 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71032 <dd>Switch to the <a href=#after-doctype-public-identifier-state>after DOCTYPE public identifier state</a>.</dd>
71035 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71037 token. Switch to the <a href=#data-state>data state</a>.</dd>
71040 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71042 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71045 <dd>Append the <a href=#current-input-character>current input character</a> to the current DOCTYPE
71046 token's public identifier. Stay in the <a href=#doctype-public-identifier-(single-quoted)-state>DOCTYPE public
71051 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71058 <dd>Switch to the <a href=#between-doctype-public-and-system-identifiers-state>between DOCTYPE public and system
71062 <dd>Emit the current DOCTYPE token. Switch to the <a href=#data-state>data
71066 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's system
71068 <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system identifier (double-quoted) state</a>.</dd>
71071 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's system
71073 <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system identifier (single-quoted) state</a>.</dd>
71076 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71078 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71081 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71082 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
71087 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71094 <dd>Stay in the <a href=#between-doctype-public-and-system-identifiers-state>between DOCTYPE public and system identifiers
71098 <dd>Emit the current DOCTYPE token. Switch to the <a href=#data-state>data
71103 (not missing), then switch to the <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system identifier
71108 (not missing), then switch to the <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system identifier
71112 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71114 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71117 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71118 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
71123 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71130 <dd>Switch to the <a href=#before-doctype-system-identifier-state>before DOCTYPE system identifier
71134 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's system
71136 <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system identifier (double-quoted) state</a>.</dd>
71139 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's system
71141 <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system identifier (single-quoted) state</a>.</dd>
71144 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71146 token. Switch to the <a href=#data-state>data state</a>.</dd>
71149 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71151 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71154 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71155 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
71160 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71167 <dd>Stay in the <a href=#before-doctype-system-identifier-state>before DOCTYPE system identifier state</a>.</dd>
71171 (not missing), then switch to the <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system identifier
71176 (not missing), then switch to the <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system identifier
71180 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71182 token. Switch to the <a href=#data-state>data state</a>.</dd>
71185 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71187 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71190 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71191 <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
71196 href=#next-input-character>next input character</a>:</p>
71199 <dd>Switch to the <a href=#after-doctype-system-identifier-state>after DOCTYPE system identifier
71203 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71205 token. Switch to the <a href=#data-state>data state</a>.</dd>
71208 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71210 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71213 <dd>Append the <a href=#current-input-character>current input character</a> to the current
71214 DOCTYPE token's system identifier. Stay in the <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system
71219 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71222 <dd>Switch to the <a href=#after-doctype-system-identifier-state>after DOCTYPE system identifier
71226 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71228 token. Switch to the <a href=#data-state>data state</a>.</dd>
71231 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71233 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71236 <dd>Append the <a href=#current-input-character>current input character</a> to the current
71237 DOCTYPE token's system identifier. Stay in the <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system
71242 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71249 <dd>Stay in the <a href=#after-doctype-system-identifier-state>after DOCTYPE system identifier
71253 <dd>Emit the current DOCTYPE token. Switch to the <a href=#data-state>data
71257 <dd><a href=#parse-error>Parse error</a>. Set the DOCTYPE token's
71259 Reconsume the EOF character in the <a href=#data-state>data state</a>.</dd>
71262 <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#bogus-doctype-state>bogus DOCTYPE
71268 <p>Consume the <a href=#next-input-character>next input character</a>:</p>
71271 <dd>Emit the DOCTYPE token. Switch to the <a href=#data-state>data
71276 <a href=#data-state>data state</a>.</dd>
71279 <dd>Stay in the <a href=#bogus-doctype-state>bogus DOCTYPE state</a>.</dd>
71291 <p>Switch to the <a href=#data-state>data state</a>.</p>
71302 references <a href=#character-reference-in-data-state title="character reference in data state">in
71303 text</a> and <a href=#character-reference-in-attribute-value-state title="character reference in attribute value
71368 appropriate, the X character). This is a <a href=#parse-error>parse
71372 that too. If it isn't, there is a <a href=#parse-error>parse
71380 following table, then this is a <a href=#parse-error>parse error</a>. Find the
71423 then this is a <a href=#parse-error>parse error</a>. Return a U+FFFD
71440 0x10FFFE, or 0x10FFFF, then this is a <a href=#parse-error>parse
71452 column of the <a href=#named-character-references>named character references</a> table (in a
71453 <a href=#case-sensitive>case-sensitive</a> manner).</p>
71462 is a <a href=#parse-error>parse error</a>.</p>
71464 <p>If the character reference is being consumed <a href=#character-reference-in-attribute-value-state title="character reference in attribute value state">as part of an
71477 is a <a href=#parse-error>parse error</a>.</p>
71481 <a href=#named-character-references>named character references</a> table).</p>
71512 from the <a href=#tokenization>tokenization</a> stage. The tree construction
71513 stage is associated with a DOM <code><a href=#document>Document</a></code> object when a
71518 has to render the <code><a href=#document>Document</a></code> so that it is available to
71523 corresponding to the current <a href=#insertion-mode>insertion mode</a>.</p>
71528 <code><a href=#text>Text</a></code> node, and that <code><a href=#text>Text</a></code> node was the last
71530 must be appended to that <code><a href=#text>Text</a></code> node; otherwise, a new
71531 <code><a href=#text>Text</a></code> node whose data is just that character must be
71558 <td>Three adjacent text nodes before the table, containing "A", "B", and "CC" respectively. (This is caused by <a href=#foster-parent title="foster parent">foster parenting</a>.)
71560 <td>Two adjacent text nodes before the table, containing "A" and " B B" (space-B-space-B) respectively. (This is caused by <a href=#foster-parent title="foster parent">foster parenting</a>.)
71562 <td>Three adjacent text nodes before the table, containing "A", " B" (space-B), and "C" respectively, and one text node inside the table (as a child of a <code><a href=#the-tbody-element>tbody</a></code>) with a single space character. (Space characters separated from non-space characters by non-character tokens are not affected by <a href=#foster-parent title="foster parent">foster parenting</a>, even if those other tokens then get ignored.)
71568 includes the parsing of any content inserted using <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> and <code title=dom-document-writeln><a href=#dom-document-writeln>document.writeln()</a></code> calls. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
71579 recognized that <a href=#hardwareLimitations>practical
71591 specification that defines that element, e.g. for an <code><a href=#the-a-element>a</a></code>
71592 element in the <a href=#html-namespace-0>HTML namespace</a>, this specification
71593 defines it to be the <code><a href=#htmlanchorelement>HTMLAnchorElement</a></code> interface), with
71598 <p>The interface appropriate for an element in the <a href=#html-namespace-0>HTML
71600 <a href=#other-applicable-specifications>other applicable specifications</a>) is
71601 <code><a href=#htmlunknownelement>HTMLUnknownElement</a></code>. Element in other namespaces whose
71603 the interface <code><a href=#element>Element</a></code>.</p>
71605 <p>When a <a href=#category-reset title=category-reset>resettable element</a> is
71606 created in this manner, its <a href=#concept-form-reset-control title=concept-form-reset-control>reset algorithm</a> must be
71608 <a href=#concept-fe-value title=concept-fe-value>value</a> and <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> based on the element's
71612 element</dfn> for a token, the UA must first <a href=#create-an-element-for-the-token>create an element
71613 for the token</a> in the <a href=#html-namespace-0>HTML namespace</a>, and then
71614 append this node to the <a href=#current-node>current node</a>, and push it onto
71615 the <a href=#stack-of-open-elements>stack of open elements</a> so that it is the new
71616 <a href=#current-node>current node</a>.</p>
71621 location specified instead of appending it to the <a href=#current-node>current
71625 <p>If an element created by the <a href=#insert-an-html-element>insert an HTML element</a>
71626 algorithm is a <a href=#form-associated-element>form-associated element</a>, and the
71627 <a href=#form-element-pointer><code title="">form</code> element pointer</a> is not null,
71628 and the newly created element doesn't have a <code title=attr-fae-form><a href=#attr-fae-form>form</a></code> attribute, the user agent must
71629 <a href=#concept-form-association title=concept-form-association>associate</a> the newly
71630 created element with the <code><a href=#the-form-element>form</a></code> element pointed to by the
71631 <a href=#form-element-pointer><code title="">form</code> element pointer</a> before
71635 element</dfn> for a token, the UA must first <a href=#create-an-element-for-the-token>create an element
71637 node to the <a href=#current-node>current node</a>, and push it onto the
71638 <a href=#stack-of-open-elements>stack of open elements</a> so that it is the new
71639 <a href=#current-node>current node</a>. If the newly created element has an <code title="">xmlns</code> attribute in the <a href=#xmlns-namespace>XMLNS namespace</a>
71641 is a <a href=#parse-error>parse error</a>. Similarly, if the newly created
71643 <a href=#xmlns-namespace>XMLNS namespace</a> whose value is not the <a href=#xlink-namespace>XLink
71644 Namespace</a>, that is a <a href=#parse-error>parse error</a>.</p>
71729 <a href=#attr-xml-lang title=attr-xml-lang><code title="">lang</code> attributes in
71733 <tbody><tr><td> <code title="">xlink:actuate</code> <td> <code title="">xlink</code> <td> <code title="">actuate</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71734 <tr><td> <code title="">xlink:arcrole</code> <td> <code title="">xlink</code> <td> <code title="">arcrole</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71735 <tr><td> <code title="">xlink:href</code> <td> <code title="">xlink</code> <td> <code title="">href</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71736 <tr><td> <code title="">xlink:role</code> <td> <code title="">xlink</code> <td> <code title="">role</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71737 <tr><td> <code title="">xlink:show</code> <td> <code title="">xlink</code> <td> <code title="">show</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71738 <tr><td> <code title="">xlink:title</code> <td> <code title="">xlink</code> <td> <code title="">title</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71739 <tr><td> <code title="">xlink:type</code> <td> <code title="">xlink</code> <td> <code title="">type</code> <td> <a href=#xlink-namespace>XLink namespace</a>
71740 <tr><td> <code title="">xml:base</code> <td> <code title="">xml</code> <td> <code title="">base</code> <td> <a href=#xml-namespace>XML namespace</a> <!-- attr-xml-base -->
71741 <tr><td> <code title="">xml:lang</code> <td> <code title="">xml</code> <td> <code title="">lang</code> <td> <a href=#xml-namespace>XML namespace</a>
71742 <tr><td> <code title="">xml:space</code> <td> <code title="">xml</code> <td> <code title="">space</code> <td> <a href=#xml-namespace>XML namespace</a>
71743 <tr><td> <code title="">xmlns</code> <td> (none) <td> <code title="">xmlns</code> <td> <a href=#xmlns-namespace>XMLNS namespace</a>
71744 <tr><td> <code title="">xmlns:xlink</code> <td> <code title="">xmlns</code> <td> <code title="">xlink</code> <td> <a href=#xmlns-namespace>XMLNS namespace</a>
71750 <ol><li><p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</li>
71752 <li><p>If the algorithm that was invoked is the <a href=#generic-raw-text-element-parsing-algorithm>generic raw
71754 <a href=#rawtext-state>RAWTEXT state</a>; otherwise the algorithm invoked
71755 was the <a href=#generic-rcdata-element-parsing-algorithm>generic RCDATA element parsing algorithm</a>,
71756 switch the tokenizer to the <a href=#rcdata-state>RCDATA state</a>.</li>
71758 <li><p>Let the <a href=#original-insertion-mode>original insertion mode</a> be the current
71759 <a href=#insertion-mode>insertion mode</a>.</p>
71761 <li><p>Then, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: text">text</a>".</li>
71766 tags</dfn>, then, while the <a href=#current-node>current node</a> is a
71767 <code><a href=#the-dd-element>dd</a></code> element, a <code><a href=#the-dt-element>dt</a></code> element, an
71768 <code><a href=#the-li-element>li</a></code> element, an <code><a href=#the-option-element>option</a></code> element, an
71769 <code><a href=#the-optgroup-element>optgroup</a></code> element, a <code><a href=#the-p-element>p</a></code> element, an
71770 <code><a href=#the-rp-element>rp</a></code> element, or an <code><a href=#the-rt-element>rt</a></code> element, the UA must
71771 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
71785 must be inserted into the <i><a href=#foster-parent-element>foster parent element</a></i>.</p>
71788 last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
71789 elements</a>, if there is a <code><a href=#the-table-element>table</a></code> element and it has
71790 such a parent element. If there is no <code><a href=#the-table-element>table</a></code> element in
71791 the <a href=#stack-of-open-elements>stack of open elements</a> (<a href=#fragment-case>fragment
71792 case</a>), then the <i><a href=#foster-parent-element>foster parent element</a></i> is the first
71793 element in the <a href=#stack-of-open-elements>stack of open elements</a> (the
71794 <code><a href=#the-html-element-0>html</a></code> element). Otherwise, if there is a
71795 <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
71796 elements</a>, but the last <code><a href=#the-table-element>table</a></code> element in the
71797 <a href=#stack-of-open-elements>stack of open elements</a> has no parent, or its parent
71798 node is not an element, then the <i><a href=#foster-parent-element>foster parent element</a></i> is
71799 the element before the last <code><a href=#the-table-element>table</a></code> element in the
71800 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
71802 <p>If the <i><a href=#foster-parent-element>foster parent element</a></i> is the parent element of the
71803 last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
71805 immediately <em>before</em> the last <code><a href=#the-table-element>table</a></code> element in
71806 the <a href=#stack-of-open-elements>stack of open elements</a> in the <i><a href=#foster-parent-element>foster parent
71808 <em>appended</em> to the <i><a href=#foster-parent-element>foster parent element</a></i>.</p>
71814 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-initial-insertion-mode title="insertion
71826 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <code><a href=#document>Document</a></code>
71835 <a href=#case-sensitive>case-sensitive</a> match for the string "<code title="">html</code>", or the token's public identifier is not
71837 <a href=#case-sensitive>case-sensitive</a> match for the string
71838 "<code><a href=#about:legacy-compat>about:legacy-compat</a></code>", and none of the sets of
71840 <a href=#parse-error>parse error</a>.</p>
71843 some other spec are allowed in this list --><li>The DOCTYPE token's name is a <a href=#case-sensitive>case-sensitive</a>
71845 public identifier is the <a href=#case-sensitive>case-sensitive</a> string
71848 <a href=#case-sensitive>case-sensitive</a> string "<code title="">http://www.w3.org/TR/REC-html40/strict.dtd</code>".</li>
71850 <li>The DOCTYPE token's name is a <a href=#case-sensitive>case-sensitive</a>
71852 public identifier is the <a href=#case-sensitive>case-sensitive</a> string
71855 <a href=#case-sensitive>case-sensitive</a> string "<code title="">http://www.w3.org/TR/html4/strict.dtd</code>".</li>
71857 <li>The DOCTYPE token's name is a <a href=#case-sensitive>case-sensitive</a>
71859 public identifier is the <a href=#case-sensitive>case-sensitive</a> string
71862 <a href=#case-sensitive>case-sensitive</a> string "<code title="">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</code>".</li>
71864 <li>The DOCTYPE token's name is a <a href=#case-sensitive>case-sensitive</a>
71866 public identifier is the <a href=#case-sensitive>case-sensitive</a> string
71868 the token's system identifier is the <a href=#case-sensitive>case-sensitive</a>
71879 <p>Append a <code><a href=#documenttype>DocumentType</a></code> node to the
71880 <code><a href=#document>Document</a></code> node, with the <code title="">name</code>
71888 to <code><a href=#documenttype>DocumentType</a></code> objects set to null and empty lists
71889 as appropriate. Associate the <code><a href=#documenttype>DocumentType</a></code> node with
71890 the <code><a href=#document>Document</a></code> object so that it is returned as the
71892 <code><a href=#document>Document</a></code> object.</p>
71896 <code><a href=#document>Document</a></code> to <a href=#quirks-mode>quirks mode</a>:</p>
71899 <li> The name is set to anything other than "<code title="">html</code>" (compared <a href=#case-sensitive title=case-sensitive>case-sensitively</a>). </li>
71976 in the following list, then set the <code><a href=#document>Document</a></code> to
71977 <a href=#limited-quirks-mode>limited-quirks mode</a>:</p>
71984 compared to the values given in the lists above in an <a href=#ascii-case-insensitive>ASCII
71989 <p>Then, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-before-html-insertion-mode title="insertion mode: before html">before html</a>".</p>
71996 <p>If the document is <em>not</em> <a href=#an-iframe-srcdoc-document>an <code>iframe</code>
71998 then this is a <a href=#parse-error>parse error</a>; set the
71999 <code><a href=#document>Document</a></code> to <a href=#quirks-mode>quirks mode</a>.</p>
72001 <p>In any case, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-before-html-insertion-mode title="insertion mode: before html">before html</a>", then
72008 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-html-insertion-mode title="insertion
72013 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72018 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <code><a href=#document>Document</a></code>
72033 <p><a href=#create-an-element-for-the-token>Create an element for the token</a> in the <a href=#html-namespace-0>HTML
72034 namespace</a>. Append it to the <code><a href=#document>Document</a></code>
72035 object. Put this element in the <a href=#stack-of-open-elements>stack of open
72038 <p id=parser-appcache>If the <code><a href=#document>Document</a></code> is being
72039 loaded as part of <a href=#navigate title=navigate>navigation</a> of a
72040 <a href=#browsing-context>browsing context</a>, then: if the newly created element
72041 has a <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code> attribute
72042 whose value is not the empty string, then <a href=#resolve-a-url title="resolve a
72044 <a href=#absolute-url>absolute URL</a>, relative to the newly created element,
72045 and if that is successful, run the <a href=#concept-appcache-init title=concept-appcache-init>application cache selection
72046 algorithm</a> with the resulting <a href=#absolute-url>absolute URL</a> with
72047 any <a href=#url-fragment title=url-fragment><fragment></a> component
72049 the empty string, or resolving its value fails, run the <a href=#concept-appcache-init title=concept-appcache-init>application cache selection
72051 the <code><a href=#document>Document</a></code> object.</p>
72053 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-before-head-insertion-mode title="insertion mode: before head">before head</a>".</p>
72064 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72070 <p>Create an <code><a href=#the-html-element-0>html</a></code> element. Append it to the
72071 <code><a href=#document>Document</a></code> object. Put this element in the <a href=#stack-of-open-elements>stack
72074 <p>If the <code><a href=#document>Document</a></code> is being loaded as part of <a href=#navigate title=navigate>navigation</a> of a <a href=#browsing-context>browsing
72075 context</a>, then: run the <a href=#concept-appcache-init title=concept-appcache-init>application cache selection
72077 <code><a href=#document>Document</a></code> object.</p>
72079 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-before-head-insertion-mode title="insertion mode: before head">before head</a>", then
72085 <code><a href=#document>Document</a></code> object, e.g. by scripts; nothing in particular
72092 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-head-insertion-mode title="insertion
72104 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
72111 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72116 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
72123 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72125 <p>Set the <a href=#head-element-pointer><code title="">head</code> element pointer</a>
72126 to the newly created <code><a href=#the-head-element-0>head</a></code> element.</p>
72128 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>".</p>
72143 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72158 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inhead title="insertion
72165 <p><a href=#insert-a-character title="insert a character">Insert the character</a> into
72166 the <a href=#current-node>current node</a>.</p>
72171 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
72178 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72183 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
72191 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Immediately
72192 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
72195 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
72203 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Immediately
72204 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
72207 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
72210 <p id=meta-charset-during-parse>If the element has a <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute, and its
72211 value is a supported encoding, and the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> is
72212 currently <i>tentative</i>, then <a href=#change-the-encoding>change the
72214 <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute.</p>
72216 <p>Otherwise, if the element has an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute whose
72217 value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the
72219 <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, and
72220 applying the <a href=#algorithm-for-extracting-an-encoding-from-a-content-type>algorithm for extracting an encoding from a
72222 encoding <var title="">encoding</var>, and the <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> is currently
72223 <i>tentative</i>, then <a href=#change-the-encoding>change the encoding</a> to the
72230 <p>Follow the <a href=#generic-rcdata-element-parsing-algorithm>generic RCDATA element parsing algorithm</a>.</p>
72233 <dt>A start tag whose tag name is "noscript", if the <a href=#scripting-flag>scripting flag</a> is enabled</dt>
72236 <p>Follow the <a href=#generic-raw-text-element-parsing-algorithm>generic raw text element parsing algorithm</a>.</p>
72239 <dt>A start tag whose tag name is "noscript", if the <a href=#scripting-flag>scripting flag</a> is disabled</dt>
72242 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72244 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inheadnoscript title="insertion mode: in head noscript">in head
72254 <ol><li><p><a href=#create-an-element-for-the-token>Create an element for the token</a> in the
72255 <a href=#html-namespace-0>HTML namespace</a>.</li>
72259 <p>Mark the element as being <a href=#parser-inserted>"parser-inserted"</a>.</p>
72262 any <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code>
72270 <li><p>If the parser was originally created for the <a href=#html-fragment-parsing-algorithm>HTML
72272 href=#script>script</a></code> element as <a href=#already-started>"already
72273 started"</a>. (<a href=#fragment-case>fragment case</a>)</li>
72275 <li><p>Append the new element to the <a href=#current-node>current node</a>
72276 and push it onto the <a href=#stack-of-open-elements>stack of open
72279 <li><p>Switch the tokenizer to the <a href=#script-data-state>script data
72282 <li><p>Let the <a href=#original-insertion-mode>original insertion mode</a> be the current
72283 <a href=#insertion-mode>insertion mode</a>.</p>
72285 <li><p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: text">text</a>".</li>
72292 <p>Pop the <a href=#current-node>current node</a> (which will be the
72293 <code><a href=#the-head-element-0>head</a></code> element) off the <a href=#stack-of-open-elements>stack of open
72296 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-after-head-insertion-mode title="insertion mode: after head">after head</a>".</p>
72308 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72323 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inheadnoscript title="insertion
72328 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72333 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
72340 <p>Pop the <a href=#current-node>current node</a> (which will be a
72341 <code><a href=#the-noscript-element>noscript</a></code> element) from the <a href=#stack-of-open-elements>stack of open
72342 elements</a>; the new <a href=#current-node>current node</a> will be a
72343 <code><a href=#the-head-element-0>head</a></code> element.</p>
72345 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>".</p>
72355 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
72367 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72375 <p><a href=#parse-error>Parse error</a>. Act as if an end tag with the tag
72383 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-head-insertion-mode title="insertion
72390 <p><a href=#insert-a-character title="insert a character">Insert the character</a> into
72391 the <a href=#current-node>current node</a>.</p>
72396 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
72403 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72408 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
72415 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72417 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
72419 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>".</p>
72426 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72428 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inframeset title="insertion mode: in frameset">in frameset</a>".</p>
72436 <p><a href=#parse-error>Parse error</a>.</p>
72438 <p>Push the node pointed to by the <a href=#head-element-pointer><code title="">head</code> element pointer</a> onto the
72439 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
72441 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
72444 <p>Remove the node pointed to by the <a href=#head-element-pointer><code title="">head</code> element pointer</a> from the <a href=#stack-of-open-elements>stack
72447 <p class=note>The <a href=#head-element-pointer><code title="">head</code> element
72460 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72466 attributes had been seen, then set the <a href=#frameset-ok-flag>frameset-ok
72473 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inbody title="insertion
72479 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
72482 <p><a href=#insert-a-character title="insert a character">Insert the token's
72483 character</a> into the <a href=#current-node>current node</a>.</p>
72487 (CR), or U+0020 SPACE, then set the <a href=#frameset-ok-flag>frameset-ok
72494 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
72501 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
72506 <p><a href=#parse-error>Parse error</a>. For each attribute on the token,
72508 element of the <a href=#stack-of-open-elements>stack of open elements</a>. If it is not,
72515 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
72522 <p><a href=#parse-error>Parse error</a>.</p>
72524 <p>If the second element on the <a href=#stack-of-open-elements>stack of open
72525 elements</a> is not a <code><a href=#the-body-element-0>body</a></code> element, or, if the
72526 <a href=#stack-of-open-elements>stack of open elements</a> has only one node on it,
72527 then ignore the token. (<a href=#fragment-case>fragment case</a>)</p>
72530 the attribute is already present on the <code><a href=#the-body-element-0>body</a></code>
72531 element (the second element) on the <a href=#stack-of-open-elements>stack of open
72540 <p><a href=#parse-error>Parse error</a>.</p>
72542 <p>If the second element on the <a href=#stack-of-open-elements>stack of open
72543 elements</a> is not a <code><a href=#the-body-element-0>body</a></code> element, or, if the
72544 <a href=#stack-of-open-elements>stack of open elements</a> has only one node on it,
72545 then ignore the token. (<a href=#fragment-case>fragment case</a>)</p>
72547 <p>If the <a href=#frameset-ok-flag>frameset-ok flag</a> is set to "not ok", ignore
72552 <ol><li><p>Remove the second element on the <a href=#stack-of-open-elements>stack of open
72555 <li><p>Pop all the nodes from the bottom of the <a href=#stack-of-open-elements>stack of
72556 open elements</a>, from the <a href=#current-node>current node</a> up to,
72557 but not including, the root <code><a href=#the-html-element-0>html</a></code> element.</p>
72559 <li><p><a href=#insert-an-html-element>Insert an HTML element</a> for the
72562 <li><p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inframeset title="insertion mode: in frameset">in frameset</a>".</p>
72569 <p>If there is a node in the <a href=#stack-of-open-elements>stack of open elements</a>
72570 that is not either a <code><a href=#the-dd-element>dd</a></code> element, a <code><a href=#the-dt-element>dt</a></code>
72571 element, an <code><a href=#the-li-element>li</a></code> element, a <code><a href=#the-p-element>p</a></code> element, a
72572 <code><a href=#the-tbody-element>tbody</a></code> element, a <code><a href=#the-td-element>td</a></code> element, a
72573 <code><a href=#the-tfoot-element>tfoot</a></code> element, a <code><a href=#the-th-element>th</a></code> element, a
72574 <code><a href=#the-thead-element>thead</a></code> element, a <code><a href=#the-tr-element>tr</a></code> element, the
72575 <code><a href=#the-body-element-0>body</a></code> element, or the <code><a href=#the-html-element-0>html</a></code> element, then
72576 this is a <a href=#parse-error>parse error</a>.</p> <!-- (some of those are
72579 <p><a href=#stop-parsing>Stop parsing</a>.</p>
72586 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have a <code>body</code> element
72587 in scope</a>, this is a <a href=#parse-error>parse error</a>; ignore the
72593 <p>Otherwise, if there is a node in the <a href=#stack-of-open-elements>stack of open
72594 elements</a> that is not either a <code><a href=#the-dd-element>dd</a></code> element, a
72595 <code><a href=#the-dt-element>dt</a></code> element, an <code><a href=#the-li-element>li</a></code> element, an
72596 <code><a href=#the-optgroup-element>optgroup</a></code> element, an <code><a href=#the-option-element>option</a></code> element, a
72597 <code><a href=#the-p-element>p</a></code> element, an <code><a href=#the-rp-element>rp</a></code> element, an
72598 <code><a href=#the-rt-element>rt</a></code> element, a <code><a href=#the-tbody-element>tbody</a></code> element, a
72599 <code><a href=#the-td-element>td</a></code> element, a <code><a href=#the-tfoot-element>tfoot</a></code> element, a
72600 <code><a href=#the-th-element>th</a></code> element, a <code><a href=#the-thead-element>thead</a></code> element, a
72601 <code><a href=#the-tr-element>tr</a></code> element, the <code><a href=#the-body-element-0>body</a></code> element, or the
72602 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
72611 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-afterbody title="insertion mode: after body">after body</a>".</p>
72638 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72643 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72652 <p>If the <a hrefhref=#has-an-element-in-scope title="has
72657 <p>If the <a href=#current-node>current node</a> is an element whose tag name
72659 <a href=#parse-error>parse error</a>; pop the <a href=#current-node>current node</a> off
72660 the <a href=#stack-of-open-elements>stack of open elements</a>.</p>
72663 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72671 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72676 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72680 one. (Newlines at the start of <code><a href=#the-pre-element>pre</a></code> blocks are
72686 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
72694 <p>If the <a href=#form-element-pointer><code title=form>form</code> element
72695 pointer</a> is not null, then this is a <a href=#parse-error>parse
72700 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72705 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, and set the
72706 <a href=#form-element-pointer><code title=form>form</code> element pointer</a> to
72717 <ol><li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</li>
72719 <li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
72723 <code><a href=#the-li-element>li</a></code> element, then act as if an end tag with the tag
72727 <a href=#formatting>formatting</a> category, and is not in the
72728 <a href=#phrasing>phrasing</a> category, and is not an
72729 <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
72740 entry in the <a href=#stack-of-open-elements>stack of open elements</a> and return to
72747 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72752 <p>Finally, <a href=#insert-an-html-element>insert an HTML element</a> for the
72765 <ol><li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</li>
72767 <li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
72771 <code><a href=#the-dd-element>dd</a></code> or <code><a href=#the-dt-element>dt</a></code> element, then act as if an end
72776 <a href=#formatting>formatting</a> category, and is not in the
72777 <a href=#phrasing>phrasing</a> category, and is not an
72778 <code><a href=#the-address-element>address</a></code>, <code><a href=#the-div-element>div</a></code>, or <code><a href=#the-p-element>p</a></code>
72789 entry in the <a href=#stack-of-open-elements>stack of open elements</a> and return to
72796 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72801 <p>Finally, <a href=#insert-an-html-element>insert an HTML element</a> for the
72812 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72817 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72819 <p>Switch the tokenizer to the <a href=#plaintext-state>PLAINTEXT state</a>.</p>
72824 way to switch out of the <a href=#plaintext-state>PLAINTEXT state</a>.</p>
72832 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
72834 scope</a>, then this is a <a href=#parse-error>parse error</a>;
72840 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
72843 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
72845 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
72859 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have an element in scope</a>
72861 <a href=#parse-error>parse error</a>; ignore the token.</p>
72865 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
72867 <li><p>If the <a href=#current-node>current node</a> is not an element with
72869 <a href=#parse-error>parse error</a>.</li>
72871 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
72882 <a href=#form-element-pointer><code title="">form</code> element pointer</a> is set
72885 <p>Set the <a href=#form-element-pointer><code title="">form</code> element pointer</a>
72888 <p>If <var title="">node</var> is null or the <a href=#stack-of-open-elements>stack of open
72889 elements</a> does not <a href=#has-an-element-in-scope title="has an element in
72891 a <a href=#parse-error>parse error</a>; ignore the token.</p>
72895 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
72897 <li><p>If the <a href=#current-node>current node</a> is not <var title="">node</var>, then this is a <a href=#parse-error>parse
72900 <li><p>Remove <var title="">node</var> from the <a href=#stack-of-open-elements>stack of
72909 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have an element in scope</a>
72911 <a href=#parse-error>parse error</a>; act as if a start tag with the tag name
72916 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>, except
72919 <li><p>If the <a href=#current-node>current node</a> is not an element with
72921 <a href=#parse-error>parse error</a>.</li>
72923 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
72933 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-list-item-scope title="has an element in list item scope">have an element in list
72935 then this is a <a href=#parse-error>parse error</a>; ignore the token.</p>
72939 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>, except
72942 <li><p>If the <a href=#current-node>current node</a> is not an element with
72944 <a href=#parse-error>parse error</a>.</li>
72946 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
72956 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have an element in scope</a>
72958 <a href=#parse-error>parse error</a>; ignore the token.</p>
72962 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>, except
72965 <li><p>If the <a href=#current-node>current node</a> is not an element with
72967 <a href=#parse-error>parse error</a>.</li>
72969 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
72979 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have an element in scope</a>
72981 then this is a <a href=#parse-error>parse error</a>; ignore the token.</p>
72985 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
72987 <li><p>If the <a href=#current-node>current node</a> is not an element with
72989 <a href=#parse-error>parse error</a>.</li>
72991 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
73013 <p>If the <a href=#list-of-active-formatting-elements>list of active formatting elements</a>
73017 <a href=#parse-error>parse error</a>; act as if an end tag with the tag
73019 <a href=#list-of-active-formatting-elements>list of active formatting elements</a> and the
73020 <a href=#stack-of-open-elements>stack of open elements</a> if the end tag didn't
73022 <a href=#has-an-element-in-table-scope title="has an element in table scope">in table
73026 <code><a href="a">a<table><a href="b">b</table>x</code>,
73027 the first <code><a href=#the-a-element>a</a></code> element would be closed upon seeing the
73029 not to "a". This is despite the fact that the outer <code><a href
73032 close the outer <code><a href=#the-a-element>a</a></code> element). The result is that the
73033 two <code><a href=#the-a-element>a</a></code> elements are indirectly nested inside each
73037 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73040 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Add that
73041 element to the <a href=#list-of-active-formatting-elements>list of active formatting
73050 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73053 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Add that
73054 element to the <a href=#list-of-active-formatting-elements>list of active formatting
73062 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73065 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has an
73067 then this is a <a href=#parse-error>parse error</a>; act as if an end tag with
73069 <a href=#reconstruct-the-active-formatting-elements>reconstruct the active formatting elements</a>, if
73072 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Add that
73073 element to the <a href=#list-of-active-formatting-elements>list of active formatting
73088 last element in the <a href=#list-of-active-formatting-elements>list of active formatting
73098 <a href=#stack-of-open-elements>stack of open elements</a> but the element is not <a href=#has-an-element-in-scope title="has an element in scope">in scope</a>, then this is a
73099 <a href=#parse-error>parse error</a>; ignore the token, and abort these
73103 in the <a href=#stack-of-open-elements>stack of open elements</a>, then this is a
73104 <a href=#parse-error>parse error</a>; remove the element from the list,
73108 element</var> and that element is in <a href=#stack-of-open-elements title="stack of
73109 open elements">the stack</a> and is <a href=#has-an-element-in-scope title="has an
73111 <a href=#current-node>current node</a>, this is a <a href=#parse-error>parse
73118 topmost node in the <a href=#stack-of-open-elements>stack of open elements</a> that
73121 <a href=#phrasing>phrasing</a> or <a href=#formatting>formatting</a>
73126 pop all the nodes from the bottom of the <a href=#stack-of-open-elements>stack of open
73127 elements</a>, from the <a href=#current-node>current node</a> up to and
73130 <a href=#list-of-active-formatting-elements>list of active formatting elements</a>.</li>
73134 <a href=#stack-of-open-elements>stack of open elements</a>.</li>
73136 <li><p>Let a bookmark note the position of the <var title="">formatting element</var> in the <a href=#list-of-active-formatting-elements>list of active
73146 above <var title="">node</var> in the <a href=#stack-of-open-elements>stack of open
73148 the <a href=#stack-of-open-elements>stack of open elements</a> (e.g. because it got
73150 above <var title="">node</var> in the <a href=#stack-of-open-elements>stack of open
73154 <li>If <var title="">node</var> is not in the <a href=#list-of-active-formatting-elements>list of
73155 active formatting elements</a>, then remove <var title="">node</var> from the <a href=#stack-of-open-elements>stack of open
73162 bookmark to be immediately after the <var title="">node</var> in the <a href=#list-of-active-formatting-elements>list of active formatting
73165 <li><a href=#create-an-element-for-the-token>Create an element for the token</a> for which the
73167 for <var title="">node</var> in the <a href=#list-of-active-formatting-elements>list of active
73170 <a href=#stack-of-open-elements>stack of open elements</a> with an entry for the new
73186 <code><a href=#the-table-element>table</a></code>, <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>,
73187 <code><a href=#the-thead-element>thead</a></code>, or <code><a href=#the-tr-element>tr</a></code> element, then,
73188 <a href=#foster-parent>foster parent</a> whatever <var title="">last
73199 <li><p><a href=#create-an-element-for-the-token>Create an element for the token</a> for which the
73210 <a href=#list-of-active-formatting-elements>list of active formatting elements</a>, and insert the
73211 new element into the <a href=#list-of-active-formatting-elements>list of active formatting
73216 <a href=#stack-of-open-elements>stack of open elements</a>, and insert the new element
73217 into the <a href=#stack-of-open-elements>stack of open elements</a> immediately below
73235 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73238 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73240 <p>Insert a marker at the end of the <a href=#list-of-active-formatting-elements>list of active
73243 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73251 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-scope title="has an element in scope">have an element in scope</a>
73253 <a href=#parse-error>parse error</a>; ignore the token.</p>
73257 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
73259 <li><p>If the <a href=#current-node>current node</a> is not an element with
73261 <a href=#parse-error>parse error</a>.</li>
73263 <li><p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
73267 <li><a href=#clear-the-list-of-active-formatting-elements-up-to-the-last-marker>Clear the list of active formatting elements up to the
73275 <p>If the <code><a href=#document>Document</a></code> is <em>not</em> set to
73276 <a href=#quirks-mode>quirks mode</a>, and the <a href=#stack-of-open-elements>stack of open
73277 elements</a> <a href=#has-an-element-in-scope title="has an element in scope">has a
73284 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73286 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73288 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>".</p>
73296 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73299 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Immediately
73300 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73303 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
73306 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> <!--
73314 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Immediately
73315 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73318 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
73326 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
73331 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token. Immediately
73332 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73335 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
73338 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73344 <p><a href=#parse-error>Parse error</a>. Change the token's tag name
73353 <p><a href=#parse-error>Parse error</a>.</p>
73355 <p>If the <a href=#form-element-pointer><code title="">form</code> element
73360 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
73370 resulting <code><a href=#the-form-element>form</a></code> element to the value of the
73384 "name", "action", and "prompt". Set the <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attribute of the resulting
73385 <code><a href=#the-input-element>input</a></code> element to the value "<code title="">isindex</code>".</p>
73403 should, together with the <code><a href=#the-input-element>input</a></code> element, express the
73414 <ol><li><p><a href=#insert-an-html-element>Insert an HTML element</a> for the
73419 one. (Newlines at the start of <code><a href=#the-textarea-element>textarea</a></code> elements are
73424 <li><p>Switch the tokenizer to the <a href=#rcdata-state>RCDATA
73427 <li><p>Let the <a href=#original-insertion-mode>original insertion mode</a> be the
73428 current <a href=#insertion-mode>insertion mode</a>.</p>
73430 <li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not
73433 <li><p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: text">text</a>".</li>
73440 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has
73445 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73448 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73450 <p>Follow the <a href=#generic-raw-text-element-parsing-algorithm>generic raw text element parsing algorithm</a>.</p>
73457 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73459 <p>Follow the <a href=#generic-raw-text-element-parsing-algorithm>generic raw text element parsing algorithm</a>.</p>
73464 <dt>A start tag whose tag name is "noscript", if the <a href=#scripting-flag>scripting flag</a> is enabled</dt>
73467 <p>Follow the <a href=#generic-raw-text-element-parsing-algorithm>generic raw text element parsing algorithm</a>.</p>
73474 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73477 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73479 <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p>
73481 <p>If the <a href=#insertion-mode>insertion mode</a> is one of <a href=#parsing-main-intable title="insertion mode: in table">in table</a>", "<a href=#parsing-main-incaption title="insertion mode: in caption">in caption</a>", "<a href=#parsing-main-incolgroup title="insertion mode: in column group">in column group</a>",
73482 "<a href=#parsing-main-intbody title="insertion mode: in table body">in table
73483 body</a>", "<a href=#parsing-main-intr title="insertion mode: in row">in
73484 row</a>", or "<a href=#parsing-main-intd title="insertion mode: in cell">in
73485 cell</a>", then switch the <a href=#insertion-mode>insertion mode</a> to
73486 "<a href=#parsing-main-inselectintable title="insertion mode: in select in table">in select in
73487 table</a>". Otherwise, switch the <a href=#insertion-mode>insertion mode</a>
73488 to "<a href=#parsing-main-inselect title="insertion mode: in select">in select</a>".</p>
73495 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has an
73500 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73503 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73528 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-scope title="has an
73530 then <a href=#generate-implied-end-tags>generate implied end tags</a>. If the <a href=#current-node>current
73531 node</a> is not then a <code><a href=#the-ruby-element>ruby</a></code> element, this is a
73532 <a href=#parse-error>parse error</a>; pop all the nodes from the <a href=#current-node>current
73534 <code><a href=#the-ruby-element>ruby</a></code> element on the <a href=#stack-of-open-elements>stack of open
73537 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73543 <p><a href=#parse-error>Parse error</a>. Act as if a start tag token with
73550 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73553 <p><a href=#adjust-mathml-attributes>Adjust MathML attributes</a> for the token. (This
73557 <p><a href=#adjust-foreign-attributes>Adjust foreign attributes</a> for the token. (This
73560 <p><a href=#insert-a-foreign-element>Insert a foreign element</a> for the token, in the
73561 <a href=#mathml-namespace>MathML namespace</a>.</p>
73570 <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73571 elements</a> and <a href=#acknowledge-self-closing-flag title="acknowledge self-closing
73574 <p>Otherwise, if the <a href=#insertion-mode>insertion mode</a> is not already
73575 "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in foreign
73576 content</a>", let the <a href=#secondary-insertion-mode>secondary insertion mode</a> be
73577 the current <a href=#insertion-mode>insertion mode</a>, and then switch the
73578 <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inforeign title="insertion mode: in
73586 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73589 <p><a href=#adjust-svg-attributes>Adjust SVG attributes</a> for the token. (This fixes
73592 <p><a href=#adjust-foreign-attributes>Adjust foreign attributes</a> for the token. (This
73596 <p><a href=#insert-a-foreign-element>Insert a foreign element</a> for the token, in the
73597 <a href=#svg-namespace>SVG namespace</a>.</p>
73606 <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73607 elements</a> and <a href=#acknowledge-self-closing-flag title="acknowledge self-closing
73610 <p>Otherwise, if the <a href=#insertion-mode>insertion mode</a> is not already
73611 "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in foreign
73612 content</a>", let the <a href=#secondary-insertion-mode>secondary insertion mode</a> be
73613 the current <a href=#insertion-mode>insertion mode</a>, and then switch the
73614 <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inforeign title="insertion mode: in
73630 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
73641 <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if
73644 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73646 <p class=note>This element will be a <a href=#phrasing>phrasing</a>
73656 <ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
73662 <ol><li><p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</li>
73665 the tag name of the <a href=#current-node>current node</a>, this is a
73666 <a href=#parse-error>parse error</a>.</li>
73668 <li><p>Pop all the nodes from the <a href=#current-node>current node</a> up
73674 <a href=#formatting>formatting</a> category nor the <a href=#phrasing>phrasing</a>
73675 category, then this is a <a href=#parse-error>parse error</a>; ignore the
73679 <a href=#stack-of-open-elements>stack of open elements</a>.</li>
73687 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incdata title="insertion
73693 <p><a href=#insert-a-character title="insert a character">Insert the token's
73694 character</a> into the <a href=#current-node>current node</a>.</p>
73702 <p><a href=#parse-error>Parse error</a>.</p>
73704 <p>If the <a href=#current-node>current node</a> is a <code><a href=#script>script</a></code>
73705 element, mark the <code><a href=#script>script</a></code> element as <a href=#already-started>"already
73708 <p>Pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73711 <p>Switch the <a href=#insertion-mode>insertion mode</a> to the <a href=#original-insertion-mode>original
73719 <p>Let <var title="">script</var> be the <a href=#current-node>current node</a>
73720 (which will be a <code><a href=#script>script</a></code> element).</p>
73722 <p>Pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73725 <p>Switch the <a href=#insertion-mode>insertion mode</a> to the <a href=#original-insertion-mode>original
73729 same value as the current <a href=#insertion-point>insertion point</a>. Let
73730 the <a href=#insertion-point>insertion point</a> be just before the <a href=#next-input-character>next
73733 <p>Increment the parser's <a href=#script-nesting-level>script nesting level</a> by
73736 <p><a href=#running-a-script title="running a script">Run</a> the <var title="">script</var>. This might cause some script to execute,
73737 which might cause <a href=#dom-document-write title=dom-document-write>new characters
73739 tokenizer to output more tokens, resulting in a <a href=#nestedParsing>reentrant invocation of the parser</a>.</p>
73741 <p>Decrement the parser's <a href=#script-nesting-level>script nesting level</a> by
73742 one. If the parser's <a href=#script-nesting-level>script nesting level</a> is zero,
73743 then set the <a href=#parser-pause-flag>parser pause flag</a> to false.</p>
73745 <p>Let the <a href=#insertion-point>insertion point</a> have the value of the <var title="">old insertion point</var>. (In other words, restore the
73746 <a href=#insertion-point>insertion point</a> to its previous value. This value
73750 <a href=#pending-parsing-blocking-script>pending parsing-blocking script</a>, then:</p>
73752 <dl class=switch><dt>If the <a href=#script-nesting-level>script nesting level</a> is not zero:</dt>
73756 <p>Set the <a href=#parser-pause-flag>parser pause flag</a> to true, and abort the
73762 parser is <a href=#nestedParsing>being called reentrantly</a>,
73763 say from a call to <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code>.</p>
73774 <ol><li><p>Let <var title="">the script</var> be the <a href=#pending-parsing-blocking-script>pending
73775 parsing-blocking script</a>. There is no longer a <a href=#pending-parsing-blocking-script>pending
73778 <li><p>Block the <a href=#tokenization title=tokenization>tokenizer</a>
73779 for this instance of the <a href=#html-parser>HTML parser</a>, such that
73780 the <a href=#event-loop>event loop</a> will not run <a href=#concept-task title=concept-task>tasks</a> that invoke the <a href=#tokenization title=tokenization>tokenizer</a>.</li>
73782 <li><p><a href=#spin-the-event-loop>Spin the event loop</a> until there is no <a href=#a-style-sheet-blocking-scripts title="a style sheet blocking scripts">style sheet blocking
73784 <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a> flag is set.</li>
73786 <li><p>Unblock the <a href=#tokenization title=tokenization>tokenizer</a>
73787 for this instance of the <a href=#html-parser>HTML parser</a>, such that
73788 <a href=#concept-task title=concept-task>tasks</a> that invoke the <a href=#tokenization title=tokenization>tokenizer</a> can again be
73791 <li><p>Let the <a href=#insertion-point>insertion point</a> be just before the
73792 <a href=#next-input-character>next input character</a>.</li>
73794 <li><p>Increment the parser's <a href=#script-nesting-level>script nesting level</a>
73798 <li><p><a href=#executing-a-script-block title="executing a script block">Execute</a>
73801 <li><p>Decrement the parser's <a href=#script-nesting-level>script nesting level</a>
73802 by one. If the parser's <a href=#script-nesting-level>script nesting level</a> is
73804 <a href=#parser-pause-flag>parser pause flag</a> to false.</p>
73806 <li><p>Let the <a href=#insertion-point>insertion point</a> be undefined
73809 <li><p>If there is once again a <a href=#pending-parsing-blocking-script>pending parsing-blocking
73819 <p>Pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
73822 <p>Switch the <a href=#insertion-mode>insertion mode</a> to the <a href=#original-insertion-mode>original
73829 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intable title="insertion
73838 <p>Let the <a href=#original-insertion-mode>original insertion mode</a> be the current
73839 <a href=#insertion-mode>insertion mode</a>.</p>
73841 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intabletext title="insertion mode: in table text">in table text</a>" and
73848 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
73855 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
73861 <p><a href=#clear-the-stack-back-to-a-table-context>Clear the stack back to a table context</a>. (See
73864 <p>Insert a marker at the end of the <a href=#list-of-active-formatting-elements>list of active
73867 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, then
73868 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incaption title="insertion mode: in caption">in caption</a>".</p>
73875 <p><a href=#clear-the-stack-back-to-a-table-context>Clear the stack back to a table context</a>. (See
73878 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, then
73879 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incolgroup title="insertion mode: in column group">in column
73893 <p><a href=#clear-the-stack-back-to-a-table-context>Clear the stack back to a table context</a>. (See
73896 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, then
73897 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intbody title="insertion mode: in table body">in table
73911 <p><a href=#parse-error>Parse error</a>. Act as if an end tag token with
73916 ignored in the <a href=#fragment-case>fragment case</a>.</p>
73923 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
73925 <a href=#parse-error>parse error</a>. Ignore the token. (<a href=#fragment-case>fragment
73930 <p>Pop elements from this stack until a <code><a href=#the-table-element>table</a></code>
73933 <p><a href=#reset-the-insertion-mode-appropriately>Reset the insertion mode appropriately</a>.</p>
73941 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
73947 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
73956 or if it does, but that attribute's value is not an <a href=#ascii-case-insensitive>ASCII
73962 <p><a href=#parse-error>Parse error</a>.</p>
73964 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73966 <p>Pop that <code><a href=#the-input-element>input</a></code> element off the <a href=#stack-of-open-elements>stack of
73974 <p><a href=#parse-error>Parse error</a>.</p>
73976 <p>If the <a href=#form-element-pointer><code title=form>form</code> element
73981 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
73983 <p>Pop that <code><a href=#the-form-element>form</a></code> element off the <a href=#stack-of-open-elements>stack of
73993 <p>If the <a href=#current-node>current node</a> is not the root
73994 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
73997 <p class=note>It can only be the <a href=#current-node>current node</a> in
73998 the <a href=#fragment-case>fragment case</a>.</p>
74000 <p><a href=#stop-parsing>Stop parsing</a>.</p>
74007 <p><a href=#parse-error>Parse error</a>. Process the token <a href=#using-the-rules-for>using the
74008 rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in
74009 body</a>" <a href=#insertion-mode>insertion mode</a>, except that if the
74010 <a href=#current-node>current node</a> is a <code><a href=#the-table-element>table</a></code>,
74011 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-thead-element>thead</a></code>, or
74012 <code><a href=#the-tr-element>tr</a></code> element, then, whenever a node would be inserted
74013 into the <a href=#current-node>current node</a>, it must instead be <a href=#foster-parent title="foster parent">foster parented</a>.</p>
74019 the <a href=#current-node>current node</a> is not a <code><a href=#the-table-element>table</a></code>
74020 element or an <code><a href=#the-html-element-0>html</a></code> element, pop elements from the
74021 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
74023 <p class=note>The <a href=#current-node>current node</a> being an
74024 <code><a href=#the-html-element-0>html</a></code> element after this process is a <a href=#fragment-case>fragment
74031 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intabletext title="insertion
74038 <p>Append the character token to the <var><a href=#pending-table-character-tokens>pending table character
74047 <p>If any of the tokens in the <var><a href=#pending-table-character-tokens>pending table character
74052 "anything else" entry in the <a href=#parsing-main-intable title="insertion mode: in
74055 <p>Otherwise, <a href=#insert-a-character title="insert a character">insert the
74056 characters</a> given by the <var><a href=#pending-table-character-tokens>pending table character
74057 tokens</a></var> list into the <a href=#current-node>current node</a>.</p>
74059 <p>Switch the <a href=#insertion-mode>insertion mode</a> to the <a href=#original-insertion-mode>original
74066 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incaption title="insertion
74072 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74074 <a href=#parse-error>parse error</a>. Ignore the token. (<a href=#fragment-case>fragment
74079 <p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</p>
74081 <p>Now, if the <a href=#current-node>current node</a> is not a
74082 <code><a href=#the-caption-element>caption</a></code> element, then this is a <a href=#parse-error>parse
74085 <p>Pop elements from this stack until a <code><a href=#the-caption-element>caption</a></code>
74088 <p><a href=#clear-the-list-of-active-formatting-elements-up-to-the-last-marker>Clear the list of active formatting elements up to
74091 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>".</p>
74100 <p><a href=#parse-error>Parse error</a>. Act as if an end tag with the tag
74105 ignored in the <a href=#fragment-case>fragment case</a>.</p>
74113 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74118 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74124 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incolgroup title="insertion
74131 <p><a href=#insert-a-character title="insert a character">Insert the character</a> into
74132 the <a href=#current-node>current node</a>.</p>
74137 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
74144 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74149 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74156 <p><a href
74157 pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
74160 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
74168 <p>If the <a href=#current-node>current node</a> is the root
74169 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
74170 error</a>; ignore the token. (<a href=#fragment-case>fragment
74173 <p>Otherwise, pop the <a href=#current-node>current node</a> (which will be
74174 a <code><a href=#the-colgroup-element>colgroup</a></code> element) from the <a href=#stack-of-open-elements>stack of open
74175 elements</a>. Switch the <a href=#insertion-mode>insertion mode</a> to
74176 "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>".</p>
74182 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74188 <p>If the <a href=#current-node>current node</a> is the root <code><a href=#the-html-element-0>html</a></code>
74189 element, then <a href=#stop-parsing>stop parsing</a>. (<a href=#fragment-case>fragment
74205 ignored in the <a href=#fragment-case>fragment case</a>.</p>
74211 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intbody title="insertion
74217 <p><a href=#clear-the-stack-back-to-a-table-body-context>Clear the stack back to a table body
74220 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, then switch
74221 the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intr title="insertion mode:
74228 <p><a href=#parse-error>Parse error</a>. Act as if a start tag with
74237 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74239 <a href=#parse-error>parse error</a>. Ignore the token.</p>
74243 <p><a href=#clear-the-stack-back-to-a-table-body-context>Clear the stack back to a table body
74246 <p>Pop the <a href=#current-node>current node</a> from the <a href=#stack-of-open-elements>stack of
74247 open elements</a>. Switch the <a href=#insertion-mode>insertion mode</a>
74248 to "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>".</p>
74257 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have a
74259 element in table scope</a>, this is a <a href=#parse-error>parse
74260 error</a>. Ignore the token. (<a href=#fragment-case>fragment
74265 <p><a href=#clear-the-stack-back-to-a-table-body-context>Clear the stack back to a table body
74269 <a href=#current-node>current node</a> ("tbody", "tfoot", or "thead") had
74277 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74282 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>" <a href=#insertion-mode>insertion
74288 while the <a href=#current-node>current node</a> is not a <code><a href=#the-tbody-element>tbody</a></code>,
74289 <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-thead-element>thead</a></code>, or <code><a href=#the-html-element-0>html</a></code>
74290 element, pop elements from the <a href=#stack-of-open-elements>stack of open
74293 <p class=note>The <a href=#current-node>current node</a> being an
74294 <code><a href=#the-html-element-0>html</a></code> element after this process is a <a href=#fragment-case>fragment
74300 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intr title="insertion
74306 <p><a href=#clear-the-stack-back-to-a-table-row-context>Clear the stack back to a table row
74309 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token, then switch
74310 the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intd title="insertion mode:
74313 <p>Insert a marker at the end of the <a href=#list-of-active-formatting-elements>list of active
74321 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74323 <a href=#parse-error>parse error</a>. Ignore the token. (<a href=#fragment-case>fragment
74328 <p><a href=#clear-the-stack-back-to-a-table-row-context>Clear the stack back to a table row
74331 <p>Pop the <a href=#current-node>current node</a> (which will be a
74332 <code><a href=#the-tr-element>tr</a></code> element) from the <a href=#stack-of-open-elements>stack of open
74333 elements</a>. Switch the <a href=#insertion-mode>insertion mode</a> to
74334 "<a href=#parsing-main-intbody title="insertion mode: in table body">in table
74349 ignored in the <a href=#fragment-case>fragment case</a>.</p>
74357 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74359 <a href=#parse-error>parse error</a>. Ignore the token.</p>
74369 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74374 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>" <a href=#insertion-mode>insertion
74380 while the <a href=#current-node>current node</a> is not a <code><a href=#the-tr-element>tr</a></code>
74381 element or an <code><a href=#the-html-element-0>html</a></code> element, pop elements from the
74382 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
74384 <p class=note>The <a href=#current-node>current node</a> being an
74385 <code><a href=#the-html-element-0>html</a></code> element after this process is a <a href=#fragment-case>fragment
74391 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intd title="insertion
74397 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74399 this is a <a href=#parse-error>parse error</a> and the token must be
74404 <p><a href=#generate-implied-end-tags>Generate implied end tags</a>.</p>
74406 <p>Now, if the <a href=#current-node>current node</a> is not an element
74408 <a href=#parse-error>parse error</a>.</p>
74410 <p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a> stack
74414 <p><a href=#clear-the-list-of-active-formatting-elements-up-to-the-last-marker>Clear the list of active formatting elements up to
74417 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intr title="insertion mode: in row">in row</a>". (The
74418 <a href=#current-node>current node</a> will be a <code><a href=#the-tr-element>tr</a></code> element at
74427 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does
74428 <em>not</em> <a href=#has-an-element-in-table-scope title="has an element in table scope">have
74430 scope</a>, then this is a <a href=#parse-error>parse error</a>; ignore
74431 the token. (<a href=#fragment-case>fragment case</a>)</p>
74433 <p>Otherwise, <a href=#close-the-cell>close the cell</a> (see below) and
74441 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74448 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74451 in the <a href=#fragment-case>fragment case</a>), then this is a <a href=#parse-error>parse
74454 <p>Otherwise, <a href=#close-the-cell>close the cell</a> (see below) and
74461 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74468 <ol><li><p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-table-scope title="has an element in table scope">has a <code>td</code>
74472 <li><p>Otherwise, the <a href=#stack-of-open-elements>stack of open elements</a> will
74473 <a href=#has-an-element-in-table-scope title="has an element in table scope">have a
74477 </ol><p class=note>The <a href=#stack-of-open-elements>stack of open elements</a> cannot
74478 have both a <code><a href=#the-td-element>td</a></code> and a <code><a href=#the-th-element>th</a></code> element <a href=#has-an-element-in-table-scope title="has an element in table scope">in table scope</a> at
74479 the same time, nor can it have neither when the <a href=#insertion-mode>insertion
74480 mode</a> is "<a href=#parsing-main-intd title="insertion mode: in cell">in
74486 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselect title="insertion
74491 <p><a href=#insert-a-character title="insert a character">Insert the token's
74492 character</a> into the <a href=#current-node>current node</a>.</p>
74497 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
74504 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74509 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74516 <p>If the <a href=#current-node>current node</a> is an <code><a href=#the-option-element>option</a></code>
74520 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
74527 <p>If the <a href=#current-node>current node</a> is an <code><a href=#the-option-element>option</a></code>
74531 <p>If the <a href=#current-node>current node</a> is an
74532 <code><a href=#the-optgroup-element>optgroup</a></code> element, act as if an end tag with the
74535 <p><a href
74542 <p>First, if the <a href=#current-node>current node</a> is an
74543 <code><a href=#the-option-element>option</a></code> element, and the node immediately before
74544 it in the <a href=#stack-of-open-elements>stack of open elements</a> is an
74545 <code><a href=#the-optgroup-element>optgroup</a></code> element, then act as if an end tag with
74548 <p>If the <a href=#current-node>current node</a> is an
74549 <code><a href=#the-optgroup-element>optgroup</a></code> element, then pop that node from the
74550 <a href=#stack-of-open-elements>stack of open elements</a>. Otherwise, this is a
74551 <a href=#parse-error>parse error</a>; ignore the token.</p>
74558 <p>If the <a href=#current-node>current node</a> is an <code><a href=#the-option-element>option</a></code>
74559 element, then pop that node from the <a href=#stack-of-open-elements>stack of open
74560 elements</a>. Otherwise, this is a <a href=#parse-error>parse
74568 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have an element in table
74570 <a href=#parse-error>parse error</a>. Ignore the token. (<a href=#fragment-case>fragment
74575 <p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a>
74576 until a <code><a href=#the-select-element>select</a></code> element has been popped from the
74579 <p><a href=#reset-the-insertion-mode-appropriately>Reset the insertion mode appropriately</a>.</p>
74586 <p><a href=#parse-error>Parse error</a>. Act as if the token had been
74594 <p><a href=#parse-error>Parse error</a>.</p>
74596 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> does not <a href=#has-an-element-in-table-scope title="has an element in table scope">have a <code>select</code>
74597 element in table scope</a>, ignore the token. (<a href=#fragment-case>fragment
74607 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
74614 <p>If the <a href=#current-node>current node</a> is not the root
74615 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
74618 <p class=note>It can only be the <a href=#current-node>current node</a> in
74619 the <a href=#fragment-case>fragment case</a>.</p>
74621 <p><a href=#stop-parsing>Stop parsing</a>.</p>
74627 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74632 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselectintable title="insertion
74638 <p><a href=#parse-error>Parse error</a>. Act as if an end tag with the tag
74646 <p><a href=#parse-error>Parse error</a>.</p>
74648 <p>If the <a href=#stack-of-open-elements>stack of open elements</a> <a href=#has-an-element-in-table-scope>has an
74658 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inselect title="insertion mode: in select">in select</a>" <a href=#insertion-mode>insertion
74664 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inforeign title="insertion
74671 <p><a href=#insert-a-character title="insert a character">Insert the token's
74672 character</a> into the <a href=#current-node>current node</a>.</p>
74676 (CR), or U+0020 SPACE, then set the <a href=#frameset-ok-flag>frameset-ok
74683 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
74690 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74693 <dt id=scriptForeignEndTag>An end tag whose tag name is "script", if the <a href=#current-node>current node</a> is a <code title="">script</code> element in the <a href=#svg-namespace>SVG namespace</a>.</dt>
74696 <p>Pop the <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
74700 same value as the current <a href=#insertion-point>insertion point</a>. Let
74701 the <a href=#insertion-point>insertion point</a> be just before the <a href=#next-input-character>next
74704 <p>Increment the parser's <a href=#script-nesting-level>script nesting level</a> by
74705 one. Set the <a href=#parser-pause-flag>parser pause flag</a> to true.</p>
74707 <p><a href=http://www.w3.org/TR/SVGMobile12/script.html#ScriptContentProcessing>Process
74709 rules, if the user agent supports SVG. <a href=#refsSVG>[SVG]</a></p>
74711 <p class=note>Even if this causes <a href=#dom-document-write title=dom-document-write>new characters to be inserted into the
74713 since the <a href=#parser-pause-flag>parser pause flag</a> is true.</p>
74715 <p>Decrement the parser's <a href=#script-nesting-level>script nesting level</a> by
74716 one. If the parser's <a href=#script-nesting-level>script nesting level</a> is zero,
74717 then set the <a href=#parser-pause-flag>parser pause flag</a> to false.</p>
74719 <p>Let the <a href=#insertion-point>insertion point</a> have the value of the <var title="">old insertion point</var>. (In other words, restore the
74720 <a href=#insertion-point>insertion point</a> to its previous value. This value
74725 <dt>An end tag, if the <a href=#current-node>current node</a> is not an element in the <a href=#html-namespace-0>HTML namespace</a>.</dt>
74731 <ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current
74735 same tag name as the token, then this is a <a href=#parse-error>parse
74739 name as the token, pop elements from the <a href=#stack-of-open-elements>stack of
74744 <a href=#stack-of-open-elements>stack of open elements</a>.</li>
74748 <p>If <var title="">node</var> is an element in the <a href=#html-namespace-0>HTML
74749 namespace</a>, process the token <a href=#using-the-rules-for>using the rules
74750 for</a> the <a href=#secondary-insertion-mode>secondary insertion mode</a>. If, after
74751 doing so, the <a href=#insertion-mode>insertion mode</a> is still "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in foreign
74752 content</a>", but there is no element <a href=#has-an-element-in-scope title="has an
74754 than the <a href=#html-namespace-0>HTML namespace</a>, switch the <a href=#insertion-mode>insertion
74755 mode</a> to the <a href=#secondary-insertion-mode>secondary insertion mode</a>.</p>
74763 <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <a href=#current-node>current node</a> is an <code title="">mi</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74764 <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <a href=#current-node>current node</a> is an <code title="">mo</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74765 <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <a href=#current-node>current node</a> is an <code title="">mn</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74766 <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <a href=#current-node>current node</a> is an <code title="">ms</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74767 <dt>A start tag whose tag name is neither "mglyph" nor "malignmark", if the <a href=#current-node>current node</a> is an <code title="">mtext</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74768 <dt>A start tag whose tag name is "svg", if the <a href=#current-node>current node</a> is an <code title="">annotation-xml</code> element in the <a href=#mathml-namespace>MathML namespace</a>.</dt>
74769 <dt>A start tag, if the <a href=#current-node>current node</a> is a <code title="">foreignObject</code> element in the <a href=#svg-namespace>SVG namespace</a>.</dt>
74770 <dt>A start tag, if the <a href=#current-node>current node</a> is a <code title="">desc</code> element in the <a href=#svg-namespace>SVG namespace</a>.</dt>
74771 <dt>A start tag, if the <a href=#current-node>current node</a> is a <code title="">title</code> element in the <a href=#svg-namespace>SVG namespace</a>.</dt>
74772 <dt>A start tag, if the <a href=#current-node>current node</a> is an element in the <a href=#html-namespace-0>HTML namespace</a>.</dt>
74776 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the
74777 <a href=#secondary-insertion-mode>secondary insertion mode</a>.</p>
74779 <p>If, after doing so, the <a href=#insertion-mode>insertion mode</a> is still
74780 "<a href=#parsing-main-inforeign title="insertion mode: in foreign content">in foreign
74781 content</a>", but there is no element <a href=#has-an-element-in-scope title="has an
74783 the <a href=#html-namespace-0>HTML namespace</a>, switch the <a href=#insertion-mode>insertion
74784 mode</a> to the <a href=#secondary-insertion-mode>secondary insertion mode</a>.</p>
74809 <p><a href=#parse-error>Parse error</a>.</p>
74811 <p>Pop elements from the <a href=#stack-of-open-elements>stack of open elements</a> until
74812 either a <code><a href=#math>math</a></code> element or an <code><a href=#svg>svg</a></code> element
74820 <p>If the <a href=#current-node>current node</a> is an element in the
74821 <a href=#mathml-namespace>MathML namespace</a>, <a href=#adjust-mathml-attributes>adjust MathML
74825 <p>If the <a href=#current-node>current node</a> is an element in the <a href=#svg-namespace>SVG
74870 </table><p>If the <a href=#current-node>current node</a> is an element in the <a href=#svg-namespace>SVG
74871 namespace</a>, <a href=#adjust-svg-attributes>adjust SVG attributes</a> for the
74875 <p><a href=#adjust-foreign-attributes>Adjust foreign attributes</a> for the token. (This
74879 <p><a href=#insert-a-foreign-element>Insert a foreign element</a> for the token, in the
74880 same namespace as the <a href=#current-node>current node</a>.</p>
74883 <a href=#current-node>current node</a> off the <a href=#stack-of-open-elements>stack of open
74884 elements</a> and <a href=#acknowledge-self-closing-flag title="acknowledge self-closing
74891 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterbody title="insertion
74898 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74904 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the first element in
74905 the <a href=#stack-of-open-elements>stack of open elements</a> (the <code><a href=#the-html-element-0>html</a></code>
74912 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74917 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74924 <p>If the parser was originally created as part of the <a href=#html-fragment-parsing-algorithm>HTML
74925 fragment parsing algorithm</a>, this is a <a href=#parse-error>parse
74926 error</a>; ignore the token. (<a href=#fragment-case>fragment case</a>)</p>
74928 <p>Otherwise, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-after-after-body-insertion-mode title="insertion mode: after after body">after after
74935 <p><a href=#stop-parsing>Stop parsing</a>.</p>
74941 <p><a href=#parse-error>Parse error</a>. Switch the <a href=#insertion-mode>insertion
74942 mode</a> to "<a href=#parsing-main-inbody title="insertion mode: in body">in
74949 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inframeset title="insertion
74956 <p><a href=#insert-a-character title="insert a character">Insert the character</a> into
74957 the <a href=#current-node>current node</a>.</p>
74962 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
74969 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
74974 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
74980 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p>
74986 <p>If the <a href=#current-node>current node</a> is the root
74987 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
74988 error</a>; ignore the token. (<a href=#fragment-case>fragment
74991 <p>Otherwise, pop the <a href=#current-node>current node</a> from the
74992 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
74995 of the <a href=#html-fragment-parsing-algorithm>HTML fragment parsing algorithm</a>
74996 (<a href=#fragment-case>fragment case</a>), and the <a href=#current-node>current
74997 node</a> is no longer a <code><a href=#frameset>frameset</a></code> element, then
74998 switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-afterframeset title="insertion mode: after frameset">after
75006 <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.
75007 Immediately pop the <a href=#current-node>current node</a> off the
75008 <a href=#stack-of-open-elements>stack of open elements</a>.</p>
75010 <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the
75017 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
75024 <p>If the <a href=#current-node>current node</a> is not the root
75025 <code><a href=#the-html-element-0>html</a></code> element, then this is a <a href=#parse-error>parse
75028 <p class=note>It can only be the <a href=#current-node>current node</a> in
75029 the <a href=#fragment-case>fragment case</a>.</p>
75031 <p><a href=#stop-parsing>Stop parsing</a>.</p>
75037 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
75042 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterframeset title="insertion
75050 <p><a href=#insert-a-character title="insert a character">Insert the character</a> into
75051 the <a href=#current-node>current node</a>.</p>
75056 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <a href=#current-node>current
75063 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
75068 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
75074 <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#the-after-after-frameset-insertion-mode title="insertion mode: after after frameset">after after
75080 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
75086 <p><a href=#stop-parsing>Stop parsing</a>.</p>
75091 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
75096 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-body-insertion-mode title="insertion
75101 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <code><a href=#document>Document</a></code>
75112 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
75118 <p><a href=#stop-parsing>Stop parsing</a>.</p>
75123 <p><a href=#parse-error>Parse error</a>. Switch the <a href=#insertion-mode>insertion mode</a>
75124 to "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" and
75130 <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-frameset-insertion-mode title="insertion
75135 <p>Append a <code><a href=#comment-0>Comment</a></code> node to the <code><a href=#document>Document</a></code>
75146 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>" <a href=#insertion-mode>insertion
75152 <p><a href=#stop-parsing>Stop parsing</a>.</p>
75157 <p>Process the token <a href=#using-the-rules-for>using the rules for</a> the "<a href=#parsing-main-inhead title="insertion mode: in head">in head</a>" <a href=#insertion-mode>insertion
75163 <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
75176 <ol><!-- this happens as part of one of the tasks that runs the parser --><li><p>Set the <a href=#current-document-readiness>current document readiness</a> to
75178 the <a href=#insertion-point>insertion point</a> to undefined.</li>
75180 <li><p>Pop <em>all</em> the nodes off the <a href=#stack-of-open-elements>stack of open
75183 <li><p>If the <a href=#list-of-scripts-that-will-execute-when-the-document-has-finished-parsing>list of scripts that will execute when the
75187 <ol><li><p><a href=#spin-the-event-loop>Spin the event loop</a> until the first
75188 <code><a href=#script>script</a></code> in the <a href=#list-of-scripts-that-will-execute-when-the-document-has-finished-parsing>list of scripts that will
75190 <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a> flag set <em>and</em> there
75191 is no <a href=#a-style-sheet-blocking-scripts title="a style sheet blocking scripts">style sheet
75194 <li><p><a href=#executing-a-script-block title="executing a script block">Execute</a> the
75195 first <code><a href=#script>script</a></code> in the <a href=#list-of-scripts-that-will-execute-when-the-document-has-finished-parsing>list of scripts that will
75198 <li><p>Remove the first <code><a href=#script>script</a></code> element from the
75199 <a href=#list-of-scripts-that-will-execute-when-the-document-has-finished-parsing>list of scripts that will execute when the document has
75203 <li><p>If the <a href
75209 <li><p><a href=#queue-a-task>Queue a task</a> to <a href=#fire-a-simple-event>fire a simple
75211 <code><a href=#document>Document</a></code>.</li>
75213 <li><p><a href=#spin-the-event-loop>Spin the event loop</a> until the <a href=#set-of-scripts-that-will-execute-as-soon-as-possible>set of
75220 <li><p><a href=#spin-the-event-loop>Spin the event loop</a> until there is nothing that
75222 the <code><a href=#document>Document</a></code>.</li>
75224 <li><p><a href=#queue-a-task>Queue a task</a> to set the <a href=#current-document-readiness>current document
75228 <li><p>If the <code><a href=#document>Document</a></code> is in a <a href=#browsing-context>browsing
75229 context</a>, then <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a
75231 the <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object, but with
75232 its <code title=dom-event-target><a href=#dom-event-target>target</a></code> set to the
75233 <code><a href=#document>Document</a></code> object (and the <code title=dom-event-currentTarget>currentTarget</code> set to the
75234 <code><a href=#window>Window</a></code> object).</li>
75236 <li><p>If the <code><a href=#document>Document</a></code> is in a <a href=#browsing-context>browsing
75237 context</a>, then <a href=#queue-a-task>queue a task</a> to fire a <code title=event-pageshow><a href=#event-pageshow>pageshow</a></code> event at the
75238 <code><a href=#window>Window</a></code> object of the <code><a href=#document>Document</a></code>, but with
75239 its <code title=dom-event-target><a href=#dom-event-target>target</a></code> set to the
75240 <code><a href=#document>Document</a></code> object (and the <code title=dom-event-currentTarget>currentTarget</code> set to the
75241 <code><a href=#window>Window</a></code> object), using the
75242 <code><a href=#pagetransitionevent>PageTransitionEvent</a></code> interface, with the <code title=dom-PageTransitionEvent-persisted><a href=#dom-pagetransitionevent-persisted>persisted</a></code>
75246 <li><p>If the <code><a href=#document>Document</a></code> has a <a href=#pending-state-object>pending state
75247 object</a>, then <a href=#queue-a-task>queue a task</a> to fire a <code title=event-popstate><a href=#event-popstate>popstate</a></code> event at the
75248 <code><a href=#document>Document</a></code>'s <code><a href=#window>Window</a></code> object using the
75249 <code><a href=#popstateevent>PopStateEvent</a></code> interface, with the <code title=dom-PopStateEvent-state><a href=#dom-popstateevent-state>state</a></code> attribute set to the
75250 current value of the <a href=#pending-state-object>pending state object</a>. This event
75254 <li><p>If the <code><a href=#document>Document</a></code> has any <a href=#pending-application-cache-download-process-tasks>pending
75255 application cache download process tasks</a>, then <a href=#queue-a-task title="queue a task">queue</a> each such <a href=#concept-task title=concept-task>task</a> in the order they were added to
75256 the list of <a href=#pending-application-cache-download-process-tasks>pending application cache download process
75257 tasks</a>, and then empty the list of <a href=#pending-application-cache-download-process-tasks>pending application
75258 cache download process tasks</a>. The <a href=#task-source>task source</a>
75259 for these <a href=#concept-task title=concept-task>tasks</a> is the
75260 <a href=#networking-task-source>networking task source</a>.</li>
75262 <li><p>The <code><a href=#document>Document</a></code> is now <dfn id=completely-loaded>completely
75268 <ol><li><p>Throw away any pending content in the <a href=#the-input-stream>input
75272 <li><p>Pop <em>all</em> the nodes off the <a href=#stack-of-open-elements>stack of open
75279 </ol><p>Except where otherwise specified, the <a href=#task-source>task source</a>
75280 for the <a href=#concept-task title=concept-task>tasks</a> mentioned in this
75281 section is the <a href=#dom-manipulation-task-source>DOM manipulation task source</a>.</p>
75290 <p>When an application uses an <a href=#html-parser>HTML parser</a> in
75296 some data that the <a href=#html-parser>HTML parser</a> generates that isn't
75306 <a href=#xmlns-namespace>XMLNS namespace</a>, then the tool may drop such
75321 <p class=example>For example, the element name <code title="">foo<bar</code>, which can be output by the <a href=#html-parser>HTML
75327 <code>xlink:href</code>. Used on a MathML element, it becomes, after
75328 being <a href=#adjust-foreign-attributes title="adjust foreign attributes">adjusted</a>, an
75330 name "<code title="">href</code>". However, used on an HTML element,
75331 it becomes an attribute with no prefix and the local name "<code title="">xlink:href</code>", which is not a valid NCName, and thus
75337 <a href=#html-parser>HTML parser</a>, since those are all either lowercase or
75338 those listed in the <a href=#adjust-foreign-attributes>adjust foreign attributes</a>
75357 <ul><li>Whether the document is set to <i><a href=#no-quirks-mode>no-quirks mode</a></i>,
75358 <i><a href=#limited-quirks-mode>limited-quirks mode</a></i>, or <i><a href=#quirks-mode>quirks mode</a></i></li>
75361 their nearest <code><a href=#the-form-element>form</a></code> element ancestor (use of the
75362 <a href=#form-element-pointer><code>form</code> element pointer</a> in the parser)</li>
75365 <em>after</em> the <a href=#html-parser>HTML parser</a>'s rules have been
75382 the <a href=#html-parser>HTML parser</a> handles these cases.</p>
75397 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul></ul></ul></ul></ul><p>Here, the <a href=#stack-of-open-elements>stack of open elements</a> has five elements
75398 on it: <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-p-element>p</a></code>,
75399 <code><a href=#the-b-element>b</a></code>, and <code><a href=#the-i-element>i</a></code>. The <a href=#list-of-active-formatting-elements>list of active
75400 formatting elements</a> just has two: <code><a href=#the-b-element>b</a></code> and
75401 <code><a href=#the-i-element>i</a></code>. The <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>".</p>
75403 <p>Upon receiving the end tag token with the tag name "b", the "<a href=#adoptionAgency>adoption agency algorithm</a>" is
75405 element</var> is the <code><a href=#the-b-element>b</a></code> element, and there is no
75406 <var title="">furthest block</var>. Thus, the <a href=#stack-of-open-elements>stack of open
75407 elements</a> ends up with just three elements: <code><a href=#the-html-element-0>html</a></code>,
75408 <code><a href=#the-body-element-0>body</a></code>, and <code><a href=#the-p-element>p</a></code>, while the <a href=#list-of-active-formatting-elements>list of
75409 active formatting elements</a> has just one: <code><a href=#the-i-element>i</a></code>. The
75412 <p>The next token is a character ("4"), triggers the <a href=#reconstruct-the-active-formatting-elements title="reconstruct the active formatting elements">reconstruction of
75414 <code><a href=#the-i-element>i</a></code> element. A new <code><a href=#the-i-element>i</a></code> element is thus created
75419 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">4</span></ul><li class=t3><code>#text</code>: <span title="">5</span></ul></ul></ul></ul><h5 id=misnested-tags:-b-p-/b-/p><span class=secno>10.2.8.2 </span>Misnested tags: <b><p></b></p></h5>
75429 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul></ul></ul></ul></ul><p>The interesting part is when the end tag token with the tag name
75432 <p>Before that token is seen, the <a href=#stack-of-open-elements>stack of open
75433 elements</a> has four elements on it: <code><a href=#the-html-element-0>html</a></code>,
75434 <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-b-element>b</a></code>, and <code><a href=#the-p-element>p</a></code>. The
75435 <a href=#list-of-active-formatting-elements>list of active formatting elements</a> just has the one:
75436 <code><a href=#the-b-element>b</a></code>. The <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inbody title="insertion mode: in body">in body</a>".</p>
75438 <p>Upon receiving the end tag token with the tag name "b", the "<a href=#adoptionAgency>adoption agency algorithm</a>" is invoked, as
75440 <var title="">furthest block</var>, namely the <code><a href=#the-p-element>p</a></code> element. Thus,
75443 href=#the-body-element-0>body</a></code>
75445 <code><a href=#the-b-element>b</a></code> in the <a href=#list-of-active-formatting-elements>list of active formatting
75450 to the formatting element (<code><a href=#the-b-element>b</a></code>), and <var title="">last
75452 (<code><a href=#the-p-element>p</a></code>).</p>
75457 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul></ul></ul></ul><p>A new <code><a href=#the-b-element>b</a></code> element is created, and the children of the
75458 <code><a href=#the-p-element>p</a></code> element are moved to it:</p>
75460 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code></ul></ul></ul><ul class=domTree><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul></ul><p>Finally, the new <code><a href=#the-b-element>b</a></code> element is appended to the
75461 <code><a href=#the-p-element>p</a></code> element, so that the DOM looks like:</p>
75463 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul></ul></ul></ul></ul><p>The <code><a href=#the-b-element>b</a></code> element is removed from the <a href=#list-of-active-formatting-elements>list of
75464 active formatting elements</a> and the <a href=#stack-of-open-elements>stack of open
75466 the <code><a href=#the-p-element>p</a></code> element:</p>
75468 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul></ul></ul><h5 id=unexpected-markup-in-tables><span class=secno>10.2.8.3 </span>Unexpected markup in tables</h5>
75477 <p>The highlighted <code><a href=#the-b-element>b</a></code> element start tag is not allowed
75479 by placing the element <em>before</em> the table. (This is called <i title="foster parent"><a href=#foster-parent>foster parenting</a></i>.) This can be seen by
75481 <code><a href=#the-table-element>table</a></code> element's start tag has been seen:</p>
75483 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-table-element>table</a></code></ul></ul></ul><p>...and then immediately after the <code><a href=#the-b-element>b</a></code> element start
75486 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-table-element>table</a></code></ul></ul></ul><p>At this point, the <a href=#stack-of-open-elements>stack of open elements</a> has on it
75487 the elements <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-body-element-0>body</a></code>,
75488 <code><a href=#the-table-element>table</a></code>, and <code><a href=#the-b-element>b</a></code> (in that order, despite the
75489 resulting DOM tree); the <a href=#list-of-active-formatting-elements>list of active formatting
75490 elements</a> just has the <code><a href=#the-b-element>b</a></code> element in it; and the
75491 <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intable title="insertion mode: in
75494 <p>The <code><a href=#the-tr-element>tr</a></code> start tag causes the <code><a href=#the-b-element>b</a></code> element
75495 to be popped off the stack and a <code><a href=#the-tbody-element>tbody</a></code> start tag to be
75496 implied; the <code><a href=#the-tbody-element>tbody</a></code> and <code><a href=#the-tr-element>tr</a></code> elements are
75498 through the "<a href=#parsing-main-intbody title="insertion mode: in table body">in table
75499 body</a>" and "<a href=#parsing-main-intr title="insertion mode: in row">in
75503 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code></ul></ul></ul></ul></ul><p>Here, the <a href=#stack-of-open-elements>stack of open elements</a> has on it the
75504 elements <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>,
75505 <code><a href=#the-tbody-element>tbody</a></code>, and <code><a href=#the-tr-element>tr</a></code>; the <a href=#list-of-active-formatting-elements>list of active
75506 formatting elements</a> still has the <code><a href=#the-b-element>b</a></code> element in
75507 it; and the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intr title="insertion
75510 <p>The <code><a href=#the-td-element>td</a></code> element start tag token, after putting a
75511 <code><a href=#the-td-element>td</a></code> element on the tree, puts a marker on the <a href=#list-of-active-formatting-elements>list
75512 of active formatting elements</a> (it also switches to the "<a href=#parsing-main-intd title="insertion mode: in cell">in cell</a>" <a href=#insertion-mode>insertion
75515 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code></ul></ul></ul></ul></ul></ul><p>The marker means that when the "aaa" character tokens are seen,
75516 no <code><a href=#the-b-element>b</a></code> element is created to hold the resulting text
75519 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code><ul><li class=t3><code>#text</code>: <span title="">aaa</span></ul></ul></ul></ul></ul></ul></ul><p>The end tags are handled in a straight-forward manner; after
75520 handling them, the <a href=#stack-of-open-elements>stack of open elements</a> has on it the
75521 elements <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>,
75522 and <code><a href=#the-tbody-element>tbody</a></code>; the <a href=#list-of-active-formatting-elements>list of active formatting
75523 elements</a> still has the <code><a href=#the-b-element>b</a></code> element in it (the
75525 <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intbody title="insertion mode: in
75529 trigger the "<a href=#parsing-main-intabletext title="insertion mode: in table text">in table
75530 text</a>" insertion mode to be used (with the <a href=#original-insertion-mode>original
75531 insertion mode</a> set to "<a href=#parsing-main-intbody title="insertion mode: in table
75533 and when the next token (the <code><a href=#the-table-element>table</a></code> element end tag) is
75535 they are handled as per the "anything else" rules in the "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>" insertion mode,
75536 which defer to the "<a href=#parsing-main-inbody title="insertion mode: in body">in
75537 body</a>" insertion mode but with <a href=#foster-parent title="foster
75540 <p>When <a href=#reconstruct-the-active-formatting-elements title="reconstruct the active formatting elements">the
75542 <code><a href=#the-b-element>b</a></code> element is created and <a href=#foster-parent title="foster
75546 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">bbb</span></ul><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code><ul><li class=t3><code>#text</code>: <span title="">aaa</span></ul></ul></ul></ul></ul></ul></ul><p>The <a href=#stack-of-open-elements>stack of open elements</a> has on it the elements
75547 <code><a href=#the-html-element-0>html</a></code>, <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>,
75548 <code><a href=#the-tbody-element>tbody</a></code>, and the new <code><a href=#the-b-element>b</a></code> (again, note that
75549 this doesn't match the resulting tree!); the <a href=#list-of-active-formatting-elements>list of active
75550 formatting elements</a> has the new <code><a href=#the-b-element>b</a></code> element in it;
75551 and the <a href=#insertion-mode>insertion mode</a> is still "<a href=#parsing-main-intbody title="insertion
75554 <p>Had the character tokens been only <a href=#space-character title="space
75556 <a href=#space-character title="space character">space characters</a> would just be
75557 appended to the <code><a href=#the-tbody-element>tbody</a></code> element.</p>
75559 <p>Finally, the <code><a href=#the-table-element>table</a></code> is closed by a "table" end
75560 tag. This pops all the nodes from the <a href=#stack-of-open-elements>stack of open
75561 elements</a> up to and including the <code><a href=#the-table-element>table</a></code> element,
75562 but it doesn't affect the <a href=#list-of-active-formatting-elements>list of active formatting
75564 result in yet another <code><a href=#the-b-element>b</a></code> element being created, this
75567 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">bbb</span></ul><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code><ul><li class=t3><code>#text</code>: <span title="">aaa</span></ul></ul></ul></ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">ccc</span></ul></ul></ul></ul><h5 id=scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>10.2.8.4 </span>Scripts that modify the page as it is being parsed</h5>
75572 assume is the document with <a href=#url>URL</a> <code title="">http://example.com/inner</code>, being rendered as the
75573 content of an <code><a href=#the-iframe-element>iframe</a></code> in another document with the
75574 <a href=#url>URL</a> <code title="">http://example.com/outer</code>:</p>
75592 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-div-element>div</a></code> <span class=t2 title=""><code class="attribute name">id</code>="<code class="attribute value"><a href=#the-a-element>a</a></code>"</span><ul><li class=t3><code>#text</code>: <span title="">
75593 </span><li class=t1><code><a href=#script>script</a></code><ul><li class=t3><code>#text</code>: <span title="">var div = document.getElementById('a'); ⏎ parent.document.body.appendChild(div);</span></ul></ul></ul></ul></ul><p>After the script is parsed, though, the <code><a href
75594 and its child <code><a href=#script>script</a></code> element are gone:</p>
75596 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code></ul></ul><p>They are, at this point, in the <code><a href=#document>Document</a></code> of the
75597 aforementioned outer <a href=#browsing-context>browsing context</a>. However, the
75598 <a href=#stack-of-open-elements>stack of open elements</a> <em>still contains the
75599 <code><a href=#the-div-element>div</a></code> element</em>.</p>
75601 <p>Thus, when the second <code><a href=#script>script</a></code> element is parsed, it
75602 is inserted <em>into the outer <code><a href=#document>Document</a></code>
75605 <p>This also means that the <a href="#script's-global-object">script's global object</a> is
75606 the outer <a href=#browsing-context>browsing context</a>'s <code><a href=#window>Window</a></code>
75607 object, <em>not</em> the <code><a href=#window>Window</a></code> object inside the
75608 <code><a href=#the-iframe-element>iframe</a></code>.</p>
75611 moves the <code><a href=#the-div-element>div</a></code> into the outer <code><a href=#document>Document</a></code> can
75612 only do so because the two <code><a href=#document>Document</a></code> object have the
75613 same <a href=#origin>origin</a>.</p>
75617 <p>Once the <code><a href=#the-div-element>div</a></code> element's end tag is parsed, the
75618 <code><a href=#the-div-element>div</a></code> element is popped off the stack, and so the next
75619 <code><a href=#script>script</a></code> element is in the inner <code><a href=#document>Document</a></code>:</p>
75621 <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#script>script</a></code><ul><li class=t3><code>#text</code>: <span title="">alert(document.URL);</span></ul></ul></ul></ul><p>This second alert will say "http://example.com/inner".</p>
75630 <code><a href=#element>Element</a></code> or <code><a href=#document>Document</a></code>, referred to as <var title="">the node</var>, and either returns a string or raises an
75642 <a href=#tree-order>tree order</a>, run the following steps:
75658 <a href=#html-parser>HTML parser</a> or <code title="">Document.createElement()</code>, the tag name will be
75663 set by the <a href=#html-parser>HTML parser</a> or by <code title="">Element.setAttributeNode()</code> or <code title="">Element.setAttribute()</code>, will be lowercase), a
75665 character ("), the attribute's value, <a href=#escapingString title="escaping a string">escaped as described below</a> in
75678 <code><a href=#the-area-element>area</a></code>, <code><a href=#the-base-element>base</a></code>, <code><a href=#basefont>basefont</a></code>,
75679 <code><a href=#bgsound>bgsound</a></code>, <code><a href=#the-br-element>br</a></code>, <code><a href=#the-col-element>col</a></code>,
75680 <code><a href=#the-embed-element>embed</a></code>, <code><a href=#frame>frame</a></code>, <code><a href=#the-hr-element>hr</a></code>,
75681 <code><a href=#the-img-element>img</a></code>, <code><a href=#the-input-element>input</a></code>, <code><a href=#the-keygen-element>keygen</a></code>,
75682 <code><a href=#the-link-element>link</a></code>, <code><a href=#meta>meta</a></code>, <code><a href=#the-param-element>param</a></code>, or
75683 <code><a href=#the-wbr-element>wbr</a></code> element, then continue on to the next child
75689 <p>If <var title="">current node</var> is a <code><a href=#the-pre-element>pre</a></code>,
75690 <code><a href=#the-textarea-element>textarea</a></code>, or <code><a href=#listing>listing</a></code> element, append
75693 <p>Append the value of running the <a href=#html-fragment-serialization-algorithm>HTML fragment
75710 <code><a href=#the-style-element>style</a></code>, <code><a href=#script>script</a></code>, <code><a href=#xmp>xmp</a></code>,
75711 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#noembed>noembed</a></code>,
75712 <code><a href=#noframes>noframes</a></code>, or <code><a href=#plaintext>plaintext</a></code> element, or
75714 <code><a href=#the-noscript-element>noscript</a></code> element and <a href=#concept-n-script title=concept-n-script>scripting is enabled</a> for the
75720 node</var>'s <code title="">data</code> IDL attribute, <a href=#escapingString title="escaping a string">escaped as described
75773 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception.</p>
75789 <p class=note>Entity reference nodes are <a href=#entity-references>assumed to be expanded</a> by the user
75793 parsed with an <a href=#html-parser>HTML parser</a>, will not return the
75794 original tree structure. For instance, if a <code><a href=#the-textarea-element>textarea</a></code>
75803 <code><a href=#script>script</a></code> element contain a text node with the text string
75804 "<code></script></code>", or having a <code><a href=#the-p-element>p</a></code> element that
75805 contains a <code><a href=#the-ul-element>ul</a></code> element (as the <code><a href=#the-ul-element>ul</a></code> element's
75806 <a href=#syntax-start-tag title=syntax-start-tag>start tag</a> would imply the end
75807 tag for the <code><a href=#the-p-element>p</a></code>).</p>
75814 <code><a href=#element>Element</a></code> node, referred to as the <var title="">context</var> element, which gives the context for the
75823 described as a <a href=#fragment-case>fragment case</a> to occur even when the
75829 <p>Create a new <code><a href=#document>Document</a></code> node, and mark it as being
75830 an <a href=#html-documents title="HTML documents">HTML document</a>.</p>
75837 <code><a href=#document>Document</a></code> of the <var title="">context</var> element
75838 is in <a href=#quirks-mode>quirks mode</a>, then let the <code><a href=#document>Document</a></code>
75839 be in <a href=#quirks-mode>quirks mode</a>. Otherwise, if there is a <var title="">context</var> element, and the <code><a href=#document>Document</a></code> of
75840 the <var title="">context</var> element is in <a href=#limited-quirks-mode>limited-quirks
75841 mode</a>, then let the <code><a href=#document>Document</a></code> be in
75842 <a href=#limited-quirks-mode>limited-quirks mode</a>. Otherwise, leave the
75843 <code><a href=#document>Document</a></code> in <a href=#no-quirks-mode>no-quirks mode</a>.</p>
75849 <p>Create a new <a href=#html-parser>HTML parser</a>, and associate it with
75850 the just created <code><a href=#document>Document</a></code> node.</p>
75861 <p>Set the state of the <a href=#html-parser>HTML parser</a>'s
75862 <a href=#tokenization>tokenization</a> stage as follows:</p>
75864 <dl class=switch><dt>If it is a <code><a href=#the-title-element-0>title</a></code> or <code><a href=#the-textarea-element>textarea</a></code>
75867 <dd>Switch the tokenizer to the <a href=#rcdata-state>RCDATA state</a>.</dd>
75870 <dt>If it is a <code><a href=#the-style-element>style</a></code>, <code><a href=#xmp>xmp</a></code>,
75871 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#noembed>noembed</a></code>, or
75872 <code><a href=#noframes>noframes</a></code> element</dt>
75874 <dd>Switch the tokenizer to the <a href=#rawtext-state>RAWTEXT state</a>.</dd>
75877 <dt>If it is a <code><a href=#script>script</a></code> element</dt>
75879 <dd>Switch the tokenizer to the <a href=#script-data-state>script data state</a>.</dd>
75882 <dt>If it is a <code><a href=#the-noscript-element>noscript</a></code> element</dt>
75884 <dd>If the <a href=#scripting-flag>scripting flag</a> is enabled, switch the
75885 tokenizer to the <a href=#rawtext-state>RAWTEXT state</a>. Otherwise,
75886 leave the tokenizer in the <a href=#data-state>data state</a>.</dd>
75889 <dt>If it is a <code><a href=#plaintext>plaintext</a></code> element</dt>
75891 <dd>Switch the tokenizer to the <a href=#plaintext-state>PLAINTEXT
75897 <dd>Leave the tokenizer in the <a href=#data-state>data state</a>.</dd>
75905 <a href=#appropriate-end-tag-token>appropriate end tag token</a> in the fragment case, yet
75912 <p>Let <var title="">root</var> be a new <code><a href=#the-html-element-0>html</a></code> element
75920 <code><a href=#document>Document</a></code> node created above.</p>
75926 <p>Set up the parser's <a href=#stack-of-open-elements>stack of open elements</a> so that
75933 <p><a href=#reset-the-insertion-mode-appropriately title="reset the insertion mode appropriately">Reset the
75942 <p>Set the parser's <a href=#form-element-pointer><code>form</code> element pointer</a>
75944 that is a <code><a href=#the-form-element>form</a></code> element (going straight up the
75946 <code><a href=#the-form-element>form</a></code> element), or, if there is no such
75947 <code><a href=#the-form-element>form</a></code> element, to null.</p>
75955 <p>Place into the <a href=#the-input-stream>input stream</a> for the <a href=#html-parser>HTML
75957 encoding <a href=#concept-encoding-confidence title=concept-encoding-confidence>confidence</a> is
75972 child nodes of <var title="">root</var>, in <a href=#tree-order>tree
75975 <p>Otherwise, return the children of the <code><a href=#document>Document</a></code>
75976 object, in <a href=#tree-order>tree order</a>.</p>
75991 52;</span> </td> <tr><td> <code title="">Escr;</code> </td> <td> U+02130 </td> <td> <span>ℰ</span> </td> <tr><td> <code title="">Esim;</code> </td> <td> U+02A73 </td> <td> <span>⩳</span> </td> <tr><td> <code title="">Eta;</code> </td> <td> U+00397 </td> <td> <span>Η</span> </td> <tr><td> <code title="">Euml;</code> </td> <td> U+000CB </td> <td> <span>Ë</span> </td> <tr class=impl><td> <code title="">Euml</code> </td> <td> U+000CB </td> <td> <span title="">Ë</span> </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Exists;</code> </td> <td> U+02203 </td> <td> <span>∃</span> </td> <tr><td> <code title="">ExponentialE;</code> </td> <td> U+02147 </td> <td> <span>ⅇ</span> </td> <tr><td> <code title="">Fcy;</code> </td> <td> U+00424 </td> <td> <span>Ф</span> </td> <tr><td> <code title="">Ffr;</code> </td> <td> U+1D509 </td> <td> <span>𝔉</span> </td> <tr><td> <code title="">FilledSmallSquare;</code> </td> <td> U+025FC </td> <td> <span>◼</span> </td> <tr><td> <code title="">FilledVerySmallSquare;</code> </td> <td> U+025AA </td> <td> <span>▪</span> </td> <tr><td> <code title="">Fopf;</code> </td> <td> U+1D53D </td> <td> <span>𝔽</span> </td> <tr><td> <code title="">ForAll;</code> </td> <td> U+02200 </td> <td> <span>∀</span> </td> <tr><td> <code title="">Fouriertrf;</code> </td> <td> U+02131 </td> <td> <span>ℱ</span> </td> <tr><td> <code title="">Fscr;</code> </td> <td> U+02131 </td> <td> <span>ℱ</span> </td> <tr><td> <code title="">GJcy;</code> </td> <td> U+00403 </td> <td> <span>Ѓ</span> </td> <tr><td> <code title="">GT;</code> </td> <td> U+0003E </td> <td> <span>></span> </td> <tr class=impl><td> <code title="">GT</code> </td> <td> U+0003E </td> <td> <span title="">></span> </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Gamma;</code> </td> <td> U+00393 </td> <td> <span>Γ</span> </td> <tr><td> <code title="">Gammad;</code> </td> <td> U+003DC </td> <td> <span>Ϝ</span> </td> <tr><td> <code title="">Gbreve;</code> </td> <td> U+0011E </td> <td> <span>Ğ</span> </td> <tr><td> <code title="">Gcedil;</code> </td> <td> U+00122 </td> <td> <span>Ģ</span> </td> <tr><td> <code title="">Gcirc;</code> </td> <td> U+0011C </td> <td> <span>Ĝ</span> </td> <tr><td> <code title="">Gcy;</code> </td> <td> U+00413 </td> <td> <span>Г</span> </td> <tr><td> <code title="">Gdot;</code> </td> <td> U+00120 </td> <td> <span>Ġ</span> </td> <tr><td> <code title="">Gfr;</code> </td> <td> U+1D50A </td> <td> <span>𝔊</span> </td> <tr><td> <code title="">Gg;</code> </td> <td> U+022D9 </td> <td> <span>⋙</span> </td> <tr><td> <code title="">Gopf;</code> </td> <td> U+1D53E </td> <td> <span>𝔾</span> </td> <tr><td> <code title="">GreaterEqual;</code> </td> <td> U+02265 </td> <td> <span>≥</span> </td> <tr><td> <code title="">GreaterEqualLess;</code> </td> <td> U+022DB </td> <td> <span>⋛</span> </td> <tr><td> <code title="">GreaterFullEqual;</code> </td> <td> U+02267 </td> <td> <span>≧</span> </td> <tr><td> <code title="">GreaterGreater;</code> </td> <td> U+02AA2 </td> <td> <span>⪢</span> </td> <tr><td> <code title="">GreaterLess;</code> </td> <td> U+02277 </td> <td> <span>≷</span> </td> <tr><td> <code title="">GreaterSlantEqual;</code> </td> <td> U+02A7E </td> <td> <span>⩾</span> </td> <tr><td> <code title="">GreaterTilde;</code> </td> <td> U+02273 </td> <td> <span>≳</span> </td> <tr><td> <code title="">Gscr;</code> </td> <td> U+1D4A2 </td> <td> <span>𝒢</span> </td> <tr><td> <code title="">Gt;</code> </td> <td> U+0226B </td> <td> <span>≫</span> </td> <tr><td> <code title="">HARDcy;</code> </td> <td> U+0042A </td> <td> <span>Ъ</span> </td> <tr><td> <code title="">Hacek;</code> </td> <td> U+002C7 </td> <td> <span>ˇ</span> </td> <tr><td> <code title="">Hat;</code> </td> <td> U+0005E </td> <td> <span>^</span> </td> <tr><td> <code title="">Hcirc;</code> </td> <td> U+00124 </td> <td> <span>Ĥ</span> </td> <tr><td> <code title="">Hfr;</code> </td> <td> U+0210C </td> <td> <span>ℌ</span> </td> <tr><td> <code title="">HilbertSpace;</code> </td> <td> U+0210B </td> <td> <span>ℋ</span> </td> <tr><td> <code title="">Hopf;</code> </td> <td> U+0210D </td> <td> <span>ℍ</span> </td> <tr><td> <code title="">HorizontalLine;</code> </td> <td> U+02500 </td> <td> <span>─</span> </td> <tr><td> <code title="">Hscr;</code> </td> <td> U+0210B </td> <td> <span>ℋ</span> </td> <tr><td> <code title="">Hstrok;</code> </td> <td> U+00126 </td> <td> <span>Ħ</span> </td> <tr><td> <code title="">HumpDownHump;</code> </td> <td> U+0224E </td> <td> <span>≎</span> </td> <tr><td> <code title="">HumpEqual;</code> </td> <td> U+0224F </td> <td> <span>≏</span> </td> <tr><td> <code title="">IEcy;</code> </td> <td> U+00415 </td> <td> <span>Е</span> </td> <tr><td> <code title="">IJlig;</code> </td> <td> U+00132 </td> <td> <span>IJ</span> </td> <tr><td> <code title="">IOcy;</code> </td> <td> U+00401 </td> <td> <span>Ё</span> </td> <tr><td> <code title="">Iacute;</code> </td> <td> U+000CD </td> <td> <span>Í</span> </td> <tr class=impl><td> <code title="">Iacute</code> </td> <td> U+000CD </td> <td> <span title="">Í</span> </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Icirc;</code> </td> <td> U+000CE </td> <td> <span>Î</span> </td> <tr class=impl><td> <code title="">Icirc</code> </td> <td> U+000CE </td> <td> <span title="">Î</span> </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Icy;</code> </td> <td> U+00418 </td> <td> <span>И</span> </td> <tr><td> <code title="">Idot;</code> </td> <td> U+00130 </td> <td> <a href
76009 resources. Rules for <code><a href=#text/html>text/html</a></code> resources are discussed
76010 in the section above entitled "<a href=#syntax>The HTML syntax</a>".</p>
76021 Namespaces in XML specifications. <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a></p>
76047 to map a string of bytes or characters into a <code><a href=#document>Document</a></code>
76050 <p>An <a href=#xml-parser>XML parser</a> is either associated with a
76051 <code><a href=#document>Document</a></code> object when it is created, or creates one
76054 <p>This <code><a href=#document>Document</a></code> must then be populated with DOM nodes
76058 must not fire for the operations that the <a href=#xml-parser>XML parser</a>
76059 performs on the <code><a href=#document>Document</a></code>'s tree, but the user agent
76063 or has its attributes set. <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a> <a href=#refsDOMCORE>[DOMCORE]</a>
76064 <a href=#refsDOMEVENTS>[DOMEVENTS]</a></p>
76069 in a <a href=#stack-of-open-elements>stack of open elements</a>.</p>
76071 <p class=note>This is used by the <code><a href=#the-object-element>object</a></code> element to
76072 avoid instantiating plugins before the <code><a href=#the-param-element>param</a></code> element
76077 public identifiers given in the following list all correspond to <a href
76094 <p class=note>This is not strictly a <a href=#willful-violation title="willful
76099 handling external subsets. <a href=#refsXML>[XML]</a></p>
76101 <p id=scriptTagXML>When an <a href=#xml-parser>XML parser</a> creates a
76102 <code><a href=#script>script</a></code> element, it must be marked as being
76103 <a href=#parser-inserted>"parser-inserted"</a>. If the parser was originally
76104 created for the <a href=#xml-fragment-parsing-algorithm>XML fragment parsing algorithm</a>, then
76105 the element must be marked as <a href=#already-started>"already started"</a>
76107 <a href=#running-a-script title="running a script">run</a> the <code><a href=#script>script</a></code>
76108 element. If this causes there to be a <a href=#pending-parsing-blocking-script>pending parsing-blocking
76111 <ol><li><p>Block this instance of the <a href=#xml-parser>XML parser</a>, such
76112 that the <a href=#event-loop>event loop</a> will not run <a href=#concept-task title=concept-task>tasks</a> that invoke it.</li>
76114 <li><p><a href=#spin-the-event-loop>Spin the event loop</a> until there is no <a href=#a-style-sheet-blocking-scripts title="a style sheet blocking scripts">style sheet blocking
76115 scripts</a> and the <a href=#pending-parsing-blocking-script>pending parsing-blocking
76116 script</a>'s <a href=#ready-to-be-parser-executed>"ready to be parser-executed"</a> flag is
76119 <li><p>Unblock this instance of the <a href=#xml-parser>XML parser</a>, such
76120 that <a href=#concept-task title=concept-task>tasks</a> that invoke it can
76123 <li><p><a href=#executing-a-script-block title="executing a script block">Execute</a> the
76124 <a href=#pending-parsing-blocking-script>pending parsing-blocking script</a>.</li>
76126 <li><p>There is no longer a <a href=#pending-parsing-blocking-script>pending parsing-blocking
76129 </ol><p class=note>Since the <code title=dom-document-write><a href=#dom-document-write>document.write()</a></code> API is not
76130 available for <a href=#xml-documents>XML documents</a>, much of the complexity in
76131 the <a href=#html-parser>HTML parser</a> is not needed in the <a href=#xml-parser>XML
76136 time. In such cases, the <a href=#xml-parser>XML parser</a> must act as it
76140 <p>When an <a href=#xml-parser>XML parser</a> reaches the end of its input, it
76141 must <a href=#stop-parsing>stop parsing</a>, following the same rules as the
76142 <a href=#html-parser>HTML parser</a>.</p>
76145 determined to be in <a href=#the-xhtml-syntax>the XHTML syntax</a>, then it is an
76146 <a href=#xml-documents title="XML documents">XML document</a>.</p>
76153 <code><a href=#document>Document</a></code> or <code><a href=#element>Element</a></code> node either returns a
76157 <p>For <code><a href=#document>Document</a></code>s, the algorithm must return a string in
76158 the form of a <a href=http://www.w3.org/TR/xml/#sec-well-formed>document
76161 <p>For <code><a href=#element>Element</a></code>s, the algorithm must return a string in
76162 the form of an <a href=http://www.w3.org/TR/xml/#wf-entities>internal general parsed
76167 of that node's child nodes, in <a href=#tree-order>tree order</a>. User agents
76172 <a href=#text-node title="text node">text nodes</a> in the DOM (and indeed
76174 e.g. if a <code><a href=#cdatasection>CDATASection</a></code> node contains the string "<code title="">]]></code>").</p>
76176 <p>For <code><a href=#element>Element</a></code>s, if any of the elements in the
76181 apply in the <code><a href=#document>Document</a></code> case.) <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a></p>
76191 <code><a href=#invalid_state_err>INVALID_STATE_ERR</a></code> exception instead of returning a
76194 <ul><li>A <code><a href=#document>Document</a></code> node with no child element nodes.</li>
76196 <li>A <code><a href=#documenttype>DocumentType</a></code> node that has an external subset
76198 the XML <code title="">PubidChar</code> production. <a href=#refsXML>[XML]</a></li>
76200 <li>A <code><a href=#documenttype>DocumentType</a></code> node that has an external subset
76203 not matched by the XML <code title="">Char</code> production. <a href=#refsXML>[XML]</a></li>
76210 the XML <code title="">Name</code> production. <a href=#refsXML>[XML]</a></li> <!--(again, prefixes can get
76213 <li>An <code><a href=#attr>Attr</a></code> node with no namespace whose local name is
76214 the lowercase string "<code title="">xmlns</code>". <a href=#refsXMLNS>[XMLNS]</a></li>
76216 <li>An <code><a href=#element>Element</a></code> node with two or more attributes with
76219 <li>An <code><a href=#attr>Attr</a></code> node, <code><a href=#text>Text</a></code> node,
76220 <code><a href=#cdatasection>CDATASection</a></code> node, <code><a href=#comment-0>Comment</a></code> node, or
76221 <code><a href=#processinginstruction>ProcessingInstruction</a></code> node whose data contains
76222 characters that are not matched by the XML <code title="">Char</code> production. <a href=#refsXML>[XML]</a></li>
76227 <li>A <code><a href=#comment-0>Comment</a></code> node whose data contains two adjacent
76231 <li>A <code><a href=#processinginstruction>ProcessingInstruction</a></code> node whose target name is
76232 an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">xml</code>".</li>
76234 <li>A <code><a href=#processinginstruction>ProcessingInstruction</a></code> node whose target name
76237 <li>A <code><a href=#processinginstruction>ProcessingInstruction</a></code> node whose data contains
76242 example, trying to append two elements to a <code><a href=#document>Document</a></code>
76243 node will raise a <code><a href=#hierarchy_request_err>HIERARCHY_REQUEST_ERR</a></code> exception.</p>
76250 a <code><a href=#document>Document</a></code> or raises a <code><a href=#syntax_err>SYNTAX_ERR</a></code>
76257 <p>Create a new <a href=#xml-parser>XML parser</a>.</p>
76263 <p>If there is a <var title="">context</var> element, <a href=#feed-the-parser>feed
76286 <p><a href=#feed-the-parser>Feed the parser</a> just created the string <var title="">input</var>.</p>
76292 <p>If there is a <var title="">context</var> element, <a href=#feed-the-parser>feed
76301 well-formedness error, then raise a <code><a href=#syntax_err>SYNTAX_ERR</a></code>
76310 <code><a href=#document>Document</a></code>, in <a href=#tree-order>tree order</a>.</p>
76312 <p>Otherwise, return the children of the <code><a href=#document>Document</a></code>
76313 object, in <a href=#tree-order>tree order</a>.</p>
76353 <hr><p>An element is <dfn id=being-rendered>being rendered</dfn> if it is <a href=#in-a-document>in a
76355 <a href=#being-rendered>being rendered</a> or it is the <code><a href=#document>Document</a></code> node,
76361 not <a href=#being-rendered>being rendered</a>. The presence of the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code> attribute normally means the
76362 element is not <a href=#being-rendered>being rendered</a>, though this might be
76376 level style sheet defaults for all documents that contain <a href=#html-elements>HTML
76396 expected to use <a href=#ascii-case-insensitive>ASCII case-insensitive</a> matching of
76405 using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a>
76407 the parsed value as a pixel length for a <a href=#presentational-hints title="presentational
76412 using the <a href=#rules-for-parsing-dimension-values>rules for parsing dimension values</a> doesn't
76414 dimension as the value for a <a href=#presentational-hints title="presentational
76430 param, rp, script, source, style, track, title { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76456 <p>For the purposes of the CSS table model, the <code><a href=#the-col-element>col</a></code>
76458 as its <code title=attr-col-span><a href=#attr-col-span>span</a></code> attribute <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative
76462 <code><a href=#the-colgroup-element>colgroup</a></code> element, if it contains no <code><a href=#the-col-element>col</a></code>
76464 children as its <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code>
76465 attribute <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative
76468 <p>For the purposes of the CSS table model, the <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code> and <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code> attributes on
76469 <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements are expected to <a href=#rules-for-parsing-non-negative-integers title="rules for parsing non-negative integers">provide</a> the
76474 <code><a href=#the-ruby-element>ruby</a></code> elements that are not <code><a href=#the-rt-element>rt</a></code> or
76475 <code><a href=#the-rp-element>rp</a></code> elements are expected to be wrapped in anonymous
76479 expected to render parentheses around the text of <code><a href=#the-rt-element>rt</a></code>
76480 elements in the absence of <code><a href=#the-rp-element>rp</a></code> elements.</p>
76482 <p>The <code><a href=#the-br-element>br</a></code> element is expected to render as if its
76486 <code><a href=#the-br-element>br</a></code> elements with <code title=attr-br-clear><a href=#attr-br-clear>clear</a></code> attributes) in the manner
76490 <p>The user agent is expected to hide <code><a href=#the-noscript-element>noscript</a></code> elements
76491 for whom <a href=#concept-n-script title=concept-n-script>scripting is enabled</a>,
76494 <p>In <a href=#html-documents>HTML documents</a>, the user agent is expected to
76495 hide <code><a href=#the-form-element>form</a></code> elements that are children of
76496 <code><a href=#the-table-element>table</a></code>, <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-tbody-element>tbody</a></code>,
76497 <code><a href=#the-tfoot-element>tfoot</a></code>, or <code><a href=#the-tr-element>tr</a></code> elements, irrespective of CSS
76529 dd { margin-left: 40px; } /* <a href=#ltr-specific>LTR-specific</a>: use 'margin-right' for rtl elements */
76530 dir, menu, ol, ul { padding-left: 40px; } /* <a href=#ltr-specific>LTR-specific</a>: use 'padding-right' for rtl elements */
76536 <p>The <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-nav-element>nav</a></code>,
76537 and <code><a href=#the-section-element>section</a></code> elements are expected to affect the margins
76538 of <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> elements, based on the nesting depth. If <var title="">x</var> is a selector that matches elements that are either
76539 <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-nav-element>nav</a></code>, or
76540 <code><a href=#the-section-element>section</a></code> elements, then the following rules capture what
76551 <hr><p>For each property in the table below, given a <code><a href=#the-body-element-0>body</a></code>
76552 element, the first attribute that exists <a href=#maps-to-the-pixel-length-property>maps to the pixel
76553 length property</a> on the <code><a href=#the-body-element-0>body</a></code> element. If none of
76562 <td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-marginheight><a href=#attr-body-marginheight>marginheight</a></code> attribute
76563 <tr><td>The <code><a href=#the-body-element-0>body</a></code> element's <a href=#container-frame-element>container frame element</a>'s <code title=attr-iframe-marginheight><a href=#attr-iframe-marginheight>marginheight</a></code> attribute
76564 <tr><td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-topmargin>topmargin</code> attribute
76566 <td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-marginwidth><a href=#attr-body-marginwidth>marginwidth</a></code> attribute
76567 <tr><td>The <code><a href=#the-body-element-0>body</a></code> element's <a href=#container-frame-element>container frame element</a>'s <code title=attr-iframe-marginwidth><a href=#attr-iframe-marginwidth>marginwidth</a></code> attribute
76568 <tr><td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-rightmargin>rightmargin</code> attribute
76570 <td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-marginheight><a href=#attr-body-marginheight>marginheight</a></code> attribute
76571 <tr><td>The <code><a href=#the-body-element-0>body</a></code> element's <a href=#container-frame-element>container frame element</a>'s <code title=attr-iframe-marginheight><a href=#attr-iframe-marginheight>marginheight</a></code> attribute
76572 <tr><td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-bottommargin>topmargin</code> attribute
76574 <td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-marginwidth><a href=#attr-body-marginwidth>marginwidth</a></code> attribute
76575 <tr><td>The <code><a href=#the-body-element-0>body</a></code> element's <a href=#container-frame-element>container frame element</a>'s <code title=attr-iframe-marginwidth><a href=#attr-iframe-marginwidth>marginwidth</a></code> attribute
76576 <tr><td><code><a href=#the-body-element-0>body</a></code> element's <code title=attr-body-leftmargin>rightmargin</code> attribute
76577 </table><p>If the <code><a href=#the-body-element-0>body</a></code> element's <code><a href=#document>Document</a></code>'s
76578 <a href=#browsing-context>browsing context</a> is a <a href=#nested-browsing-context>nested browsing
76579 context</a>, and the <a href=#browsing-context-container>browsing context container</a> of
76580 that <a hrefhref=#frame>frame</a></code> or
76581 <code><a href=#the-iframe-element>iframe</a></code> element, then the <dfn id=container-frame-element>container frame
76582 element</dfn> of the <code><a href=#the-body-element-0>body</a></code> element is that
76583 <code><a href=#frame>frame</a></code> or <code><a href=#the-iframe-element>iframe</a></code> element. Otherwise, there
76584 is no <a href=#container-frame-element>container frame element</a>.</p>
76588 <a href=#origin>origin</a>) using, for example, an
76589 <code><a href=#the-iframe-element>iframe</a></code>. This is potentially a security risk, as it
76594 <hr><p>If the <code><a href=#document>Document</a></code> has a <a href=#root-element>root element</a>, and
76595 the <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> is a
76596 <a href=#nested-browsing-context>nested browsing context</a>, and the <a href=#browsing-context-container>browsing context
76597 container</a> of that <a href=#nested-browsing-context>nested browsing context</a> is a
76598 <code><a href=#frame>frame</a></code> or <code><a href=#the-iframe-element>iframe</a></code> element, and that element
76601 the attribute in an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> manner to
76604 attribute as a <a href=#presentational-hints title="presentational hints">presentational
76625 </table><hr><p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-cellspacing><a href=#attr-table-cellspacing>cellspacing</a></code> attribute
76626 <a href=#maps-to-the-pixel-length-property>maps to the pixel length property</a> 'border-spacing' on the
76629 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-cellpadding><a href=#attr-table-cellpadding>cellpadding</a></code> attribute <a href=#maps-to-the-pixel-length-property title="maps to the pixel length property">maps to the pixel length
76631 and 'padding-left' of any <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code>
76632 elements that have corresponding <a href=#concept-cell title=concept-cell>cells</a> in the <a href=#concept-table title=concept-table>table</a> corresponding to the
76633 <code><a href=#the-table-element>table</a></code> element.</p>
76635 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-hspace>hspace</code> attribute <a href=#maps-to-the-dimension-property title="maps
76637 'margin-left' and 'margin-right' on the <code><a href=#the-table-element>table</a></code>
76640 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-vspace>vspace</code> attribute <a href=#maps-to-the-dimension-property title="maps
76642 'margin-top' and 'margin-bottom' on the <code><a href=#the-table-element>table</a></code>
76645 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-height>height</code> attribute <a href=#maps-to-the-dimension-property>maps to the
76646 dimension property</a> 'height' on the <code><a href=#the-table-element>table</a></code>
76649 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-width><a href=#attr-table-width>width</a></code> attribute <a href=#maps-to-the-dimension-property>maps to the
76650 dimension property</a> 'width' on the <code><a href=#the-table-element>table</a></code>
76653 <p>The <code><a href=#the-col-element>col</a></code> element's <code title=attr-col-width><a href=#attr-col-width>width</a></code> attribute <a href=#maps-to-the-dimension-property>maps to the
76654 dimension property</a> 'width' on the <code><a href=#the-col-element>col</a></code>
76657 <p>The <code><a href=#the-tr-element>tr</a></code> element's <code title=attr-tr-height>height</code> attribute <a href=#maps-to-the-dimension-property>maps to the
76658 dimension property</a> 'height' on the <code><a href=#the-tr-element>tr</a></code>
76661 <p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements' <code title=attr-tdth-height><a href=#attr-tdth-height>height</a></code> attributes <a href=#maps-to-the-dimension-property title="maps
76665 <p>The <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements' <code title=attr-tdth-width><a href=#attr-tdth-width>width</a></code> attributes <a href=#maps-to-the-dimension-property title="maps
76669 <hr><p>In <a href=#quirks-mode>quirks mode</a>, the following rules are also
76676 <p>When a <code><a href=#document>Document</a></code> is in <a href=#quirks-mode>quirks mode</a>,
76677 margins on <a href=#html-elements>HTML elements</a> at the top or bottom of
76678 <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-td-element>td</a></code>, or <code><a href=#the-th-element>th</a></code> elements are
76697 <a href=#presentational-hints>presentational hints</a>:</p>
76701 table[align=left] { float: left; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76702 table[align=right] { float: right; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76704 table[align=absmiddle], table[align=middle] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76712 caption[align=bottom] { caption-side: bottom; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76714 h4[align=left], h5[align=left], h6[align=left] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76718 h4[align=right], h5[align=right], h6[align=right] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76722 h4[align=center], h5[align=center], h6[align=center] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76726 h4[align=justify], h5[align=justify], h6[align=justify] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76730 tfoot[valign=top], tr[valign=top], td[valign=top], th[valign=top] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76734 tfoot[valign=middle], tr[valign=middle], td[valign=middle], th[valign=middle] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76738 tfoot[valign=bottom], tr[valign=bottom], td[valign=bottom], th[valign=bottom] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76742 tfoot[valign=baseline], tr[valign=baseline], td[valign=baseline], th[valign=baseline] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76746 <p>The <code><a href=#center>center</a></code> element, the <code><a href=#the-caption-element>caption</a></code> element
76747 unless specified otherwise below, and the <code><a href=#the-div-element>div</a></code>,
76748 <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>,
76749 <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-td-element>td</a></code>, and <code><a href=#the-th-element>th</a></code> elements when
76750 they have an <code title=attr-div-align><a href=#attr-div-align>align</a></code> attribute
76751 whose value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
76755 'center' in a <a href=#presentational-hints title="presentational hints">presentational
76756 hint</a>, and to <a href=#align-descendants>align descendants</a> to the
76759 <p>The <code><a href=#the-div-element>div</a></code>, <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-thead-element>thead</a></code>,
76760 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>,
76761 <code><a href=#the-td-element>td</a></code>, and <code><a href=#the-th-element>th</a></code> elements, when they have an
76763 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">left</code>", are expected to left-align text within
76765 in a <a href=#presentational-hints title="presentational hints">presentational hint</a>,
76766 and to <a href=#align-descendants>align descendants</a> to the left.</p>
76768 <p>The <code><a href=#the-div-element>div</a></code>, <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-thead-element>thead</a></code>,
76769 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>,
76770 <code><a href=#the-td-element>td</a></code>, and <code><a href=#the-th-element>th</a></code> elements, when they have an
76772 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">right</code>", are expected to right-align text within
76774 'right' in a <a href=#presentational-hints title="presentational hints">presentational
76775 hint</a>, and to <a href=#align-descendants>align descendants</a> to the right.</p>
76777 <p>The <code><a href=#the-div-element>div</a></code>, <code><a href=#the-caption-element>caption</a></code>, <code><a href=#the-thead-element>thead</a></code>,
76778 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>,
76779 <code><a href=#the-td-element>td</a></code>, and <code><a href=#the-th-element>th</a></code> elements, when they have an
76781 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">justify</code>", are expected to full-justify text within
76783 'justify' in a <a href=#presentational-hints title="presentational hints">presentational
76784 hint</a>, and to <a href=#align-descendants>align descendants</a> to the left.</p>
76792 are to <a href=#align-descendants title="align descendants">align</a> a particular
76848 table[rules=all] > tfoot > tr > td, table[rules=all] > tfoot > tr > th { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
76857 <hr><p>The <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-nav-element>nav</a></code>,
76858 and <code><a href=#the-section-element>section</a></code> elements are expected to affect the font
76859 size of <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code> elements, based on the nesting depth. If
76861 either <code><a href=#the-article-element>article</a></code>, <code><a href=#the-aside-element>aside</a></code>, <code><a href=#the-nav-element>nav</a></code>,
76862 or <code><a href=#the-section-element>section</a></code> elements, then the following rules capture
76873 <hr><p>When a <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>, <code><a href=#the-thead-element>thead</a></code>,
76874 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>,
76875 <code><a href=#the-td-element>td</a></code>, or <code><a href=#the-th-element>th</a></code> element has a <code title=attr-background><a href=#attr-background>background</a></code> attribute set to a
76876 non-empty value, the new value is expected to be <a href=#resolve-a-url title="resolve a url">resolved</a> relative to the element, and
76878 attribute as a <a href=#presentational-hints title="presentational hints">presentational
76880 resulting <a href=#absolute-url>absolute URL</a>.</p>
76882 <p>When a <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>, <code><a href=#the-thead-element>thead</a></code>,
76883 <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>,
76884 <code><a href=#the-td-element>td</a></code>, or <code><a href=#the-th-element>th</a></code> element has a <code title="">bgcolor</code> attribute set, the new value is expected to
76885 be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy color
76887 is expected to treat the attribute as a <a href=#presentational-hints title="presentational
76891 <p>When a <code><a href=#the-body-element-0>body</a></code> element has a <code title=attr-body-text><a href=#attr-body-text>text</a></code> attribute, its value is expected
76892 to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy color
76894 agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
76897 <p>When a <code><a href=#the-body-element-0>body</a></code> element has a <code title=attr-body-link><a href=#attr-body-link>link</a></code> attribute, its value is expected
76898 to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy color
76900 is expected to treat the attribute as a <a href=#presentational-hints title="presentational
76902 any element in the <code><a href=#document>Document</a></code> matching the ':link'
76905 <p>When a <code><a href=#the-body-element-0>body</a></code> element has a <code title=attr-body-vlink><a href=#attr-body-vlink>vlink</a></code> attribute, its value is
76906 expected to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy
76908 agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
76909 'color' property of any element in the <code><a href=#document>Document</a></code>
76912 <p>When a <code><a href=#the-body-element-0>body</a></code> element has a <code title=attr-body-alink><a href=#attr-body-alink>alink</a></code> attribute, its value is
76913 expected to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy
76915 agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
76916 'color' property of any element in the <code><a href=#document>Document</a></code>
76921 <p>When a <code><a href=#the-table-element>table</a></code> element has a <code title=attr-table-bordercolor>bordercolor</code> attribute, its
76922 value is expected to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a
76924 user agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
76929 <hr><p>When a <code><a href=#font>font</a></code> element has a <code title=attr-font-color>color</code> attribute, its value is
76930 expected to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy
76932 agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
76935 <p>When a <code><a href=#font>font</a></code> element has a <code title=attr-font-face>face</code> attribute, the user agent is
76936 expected to treat the attribute as a <a href=#presentational-hints title="presentational
76953 <p>When a <code><a href=#font>font</a></code> element has a <code title=attr-font-size>size</code> attribute, the user agent is
76955 <a href=#presentational-hints title="presentational hints">presentational hint</a>
76964 <li><p><a href=#skip-whitespace>Skip whitespace</a>.</li>
76966 <li><p>If <var title="">position</var> is past the end of <var title="">input</var>, there is no <a href=#presentational-hints title="presentational
76978 <li><p><a href=#collect-a-sequence-of-characters>Collect a sequence of characters</a> in the range
76983 no <a href=#presentational-hints title="presentational hints">presentational
77096 [dir=ltr] { direction: ltr; unicode-bidi: embed; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77097 [dir=rtl] { direction: rtl; unicode-bidi: embed; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77098 bdo[dir=ltr], bdo[dir=rtl] { unicode-bidi: bidi-override; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77105 <a href=#presentational-hints>presentational hints</a>:</p>
77112 br[clear=left] { clear: left; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77113 br[clear=right] { clear: right; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77114 br[clear=all], br[clear=both] { clear: both; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77117 ol[type=a], li[type=a] { list-style-type: lower-alpha; } /* <a href=#case-sensitive-selector-exception>case-sensitive</a> */
77118 ol[type=A], li[type=A] { list-style-type: upper-alpha; } /* <a href=#case-sensitive-selector-exception>case-sensitive</a> */
77119 ol[type=i], li[type=i] { list-style-type: lower-roman; } /* <a href=#case-sensitive-selector-exception>case-sensitive</a> */
77120 ol[type=I], li[type=I] { list-style-type: upper-roman; } /* <a href=#case-sensitive-selector-exception>case-sensitive</a> */
77187 <p>When rendering <code><a href=#the-li-element>li</a></code> elements, user agents are expected
77188 to use the ordinal value of the <code><a href=#the-li-element>li</a></code> element to render
77191 <p>The <code><a href=#the-table-element>table</a></code> element's <code title=attr-table-border><a href=#attr-table-border>border</a></code> attribute <a href=#maps-to-the-pixel-length-property title="maps
77196 <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative integers</a> generates an
77200 <p>The <code><a href=#the-wbr-element>wbr</a></code> element is expected to override the
77224 <p>In <a href=#quirks-mode>quirks mode</a>, the following rules are also
77246 <h4 id=the-hr-element-0><span class=secno>12.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
77253 <a href=#presentational-hints>presentational hints</a>:</p>
77257 hr[align=left] { margin-left: 0; margin-right: auto; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77258 hr[align=right] { margin-left: auto; margin-right: 0; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77259 hr[align=center] { margin-left: auto; margin-right: auto; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77262 <p>If an <code><a href=#the-hr-element>hr</a></code> element has either a <code title=attr-hr-color><a href=#attr-hr-color>color</a></code> attribute or a <code title=attr-hr-noshade><a href=#attr-hr-noshade>noshade</a></code> attribute, and furthermore
77263 also has a <code title=attr-hr-size><a href=#attr-hr-size>size</a></code> attribute, and
77264 parsing that attribute's value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing
77267 pixel length for <a href=#presentational-hints>presentational hints</a> for the properties
77271 <p>Otherwise, if an <code><a href=#the-hr-element>hr</a></code> element has neither a <code title=attr-hr-color><a href=#attr-hr-color>color</a></code> attribute nor a <code title=attr-hr-noshade><a href=#attr-hr-noshade>noshade</a></code> attribute, but does have a
77272 <code title=attr-hr-size><a href=#attr-hr-size>size</a></code> attribute, and parsing that
77273 attribute's value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
77276 <a href=#presentational-hints title="presentational hints">presentational hint</a>
77280 <a href=#presentational-hints>presentational hints</a> for the 'height' property on the
77283 <p>The <code title=attr-hr-width><a href=#attr-hr-width>width</a></code> attribute on an
77284 <code><a href=#the-hr-element>hr</a></code> element <a href=#maps-to-the-dimension-property>maps to the dimension property</a>
77287 <p>When an <code><a href=#the-hr-element>hr</a></code> element has a <code title=attr-hr-color><a href=#attr-hr-color>color</a></code> attribute, its value is expected
77288 to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy color
77290 is expected to treat the attribute as a <a href=#presentational-hints title="presentational
77299 <h4 id=the-fieldset-element-0><span class=secno>12.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
77309 <p>The <code><a href=#the-fieldset-element>fieldset</a></code> element is expected to establish a new
77312 <p>The first <code><a href=#the-legend-element>legend</a></code> element child of a
77313 <code><a href=#the-fieldset-element>fieldset</a></code> element, if any, is expected to be rendered
77314 over the top border edge of the <code><a href=#the-fieldset-element>fieldset</a></code> element. If
77315 the <code><a href=#the-legend-element>legend</a></code> element in question has an <code title=attr-legend-align><a href=#attr-legend-align>align</a></code> attribute, and its value is
77316 an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for one of the strings
77318 <code><a href=#the-legend-element>legend</a></code> is expected to be rendered horizontally aligned
77343 <p>The <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, and
77344 <code><a href=#video>video</a></code> elements are expected to be treated as replaced
77347 <p>A <code><a href=#the-canvas-element>canvas</a></code> element that <a href=#represents>represents</a>
77348 <a href=#embedded-content>embedded content</a> is expected to be treated as a
77349 replaced element. Other <code><a href=#the-canvas-element>canvas</a></code> elements are expected to
77352 <p>An <code><a href=#the-object-element>object</a></code> element that <a href=#represents>represents</a> an
77353 image, plugin, or <a href=#nested-browsing-context>nested browsing context</a> is expected
77354 to be treated as a replaced element. Other <code><a href=#the-object-element>object</a></code>
77358 <p>An <code><a href=#the-applet-element>applet</a></code> element that <a href=#represents>represents</a> a
77359 <a href=#plugin>plugin</a> is expected to be treated as a replaced
77360 element. Other <code><a href=#the-applet-element>applet</a></code> elements are expected to be
77363 <p>The <code><a href=#audio>audio</a></code> element, when it is <a href=#expose-a-user-interface-to-the-user title="expose a
77367 features. When an <code><a href=#audio>audio</a></code> element is not <a href=#expose-a-user-interface-to-the-user title="expose a user interface to the user">exposing a user
77371 <p>Whether a <code><a href=#video>video</a></code> element is <a href=#expose-a-user-interface-to-the-user title="expose a
77378 <p>When a <code><a href=#video>video</a></code> element represents a poster frame or
77382 the <code><a href=#video>video</a></code> element itself, and is expected to be
77383 centered in the <code><a href=#video>video</a></code> element.</p>
77387 <p class=note>Resizing <code><a href=#video>video</a></code> and <code><a href=#the-canvas-element>canvas</a></code>
77414 <p>When an <code><a href=#the-img-element>img</a></code> element or an <code><a href=#the-input-element>input</a></code> element
77415 when its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
77416 the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state
77417 <a href=#represents>represents</a> an image, it is expected to be treated as a
77420 <p>When an <code><a href=#the-img-element>img</a></code> element or an <code><a href=#the-input-element>input</a></code> element
77421 when its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
77422 the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state
77423 does not <a href=#represents title=represents>represent</a> an image, but the
77425 <a href=#dimension-attributes>dimension attributes</a> or CSS rules), and either the user
77426 agent has reason to believe that the image will become <i title=img-available><a href=#img-available>available</a></i><!--input-img-available also-->
77427 and be rendered in due course or the <code><a href=#document>Document</a></code> is in
77428 <a href=#quirks-mode>quirks mode</a>, the element is expected to be treated as a
77431 image is being obtained. For <code><a href=#the-input-element>input</a></code> elements, the text
77433 <a href=#concept-button title=concept-button>button</a>.</p>
77435 <p>When an <code><a href=#the-img-element>img</a></code> element <a href=#represents>represents</a> some
77441 <p>When an <code><a href=#the-img-element>img</a></code> element <a href=#represents>represents</a> nothing
77445 <p>When an <code><a href=#the-img-element>img</a></code> element might be a key part of the
77453 <p>When an <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state does not
77454 <a href=#represents title=represents>represent</a> an image and the user
77472 <code><a href=#document>Document</a></code> is in <a href=#quirks-mode>quirks mode</a>:</p>
77476 img[align=left] { margin-right: 3px; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77477 img[align=right] { margin-left: 3px; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77487 <a href=#presentational-hints>presentational hints</a>:</p>
77491 iframe[frameborder=0], iframe[frameborder=no] { border: none; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77494 img[align=left], input[type=image][align=left], object[align=left] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77499 img[align=right], input[type=image][align=right], object[align=right] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77504 img[align=top], input[type=image][align=top], object[align=top] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77511 img[align=baseline], input[type=image][align=baseline], object[align=baseline] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77516 img[align=texttop], input[type=image][align=texttop], object[align=texttop] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77523 img[align=abscenter], input[type=image][align=abscenter], object[align=abscenter] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77529 object[align=bottom] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77533 <p>When an <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>,
77534 <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, or <code><a href=#the-object-element>object</a></code>
77535 element, or an <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, has an
77537 an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title="">center</code>" or the string "<code title="">middle</code>", the user agent is expected to act as if the
77543 <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
77544 <code><a href=#the-img-element>img</a></code>, or <code><a href=#the-object-element>object</a></code> elements, and
77545 <code><a href=#the-input-element>input</a></code> elements with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, <a href=#maps-to-the-dimension-property title="maps to the dimension property">maps to the dimension
77550 <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
77551 <code><a href=#the-img-element>img</a></code>, or <code><a href=#the-object-element>object</a></code> elements, and
77552 <code><a href=#the-input-element>input</a></code> elements with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, <a href=#maps-to-the-dimension-property title="maps to the dimension property">maps to the dimension
77556 <p>When an <code><a href=#the-img-element>img</a></code> element, <code><a href=#the-object-element>object</a></code> element, or
77557 <code><a href=#the-input-element>input</a></code> element with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state is contained
77558 within a <a href=#hyperlink>hyperlink</a> and has a <code title=attr-dim-border>border</code> attribute whose value, when
77559 parsed using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
77562 <a href=#presentational-hints>presentational hints</a>: four setting the parsed value as
77569 <p id=dimRendering>The <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>
77570 and <code title=attr-dim-height><a href=#attr-dim-height>height</a></code> attributes on
77571 <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
77572 <code><a href=#the-img-element>img</a></code>, <code><a href=#the-object-element>object</a></code> or <code><a href=#video>video</a></code>
77573 elements, and <code><a href=#the-input-element>input</a></code> elements with a <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute in the <a href=#image-button-state title=attr-input-type-image>Image Button</a> state, <a href=#maps-to-the-dimension-property title="maps to the dimension property">map to the dimension
77584 <p>Shapes on an <a href=#image-map>image map</a> are expected to act, for the
77586 <code><a href=#the-area-element>area</a></code> element that happen to match the same style rules
77587 but inherit from the <code><a href=#the-img-element>img</a></code> or <code><a href=#the-object-element>object</a></code>
77593 <p class=example>Thus, for example, if an <code><a href=#the-area-element>area</a></code>
77594 element has a <code title=attr-style><a href=#the-style-attribute>style</a></code> attribute that
77598 <p class=example>Similarly, if an <code><a href=#the-area-element>area</a></code> element had a
77601 shape's cursor would be inherited from the <code><a href=#the-img-element>img</a></code> or
77602 <code><a href=#the-object-element>object</a></code> element of the <a href=#image-map>image map</a>, not from
77603 the parent of the <code><a href=#the-area-element>area</a></code> element.</p>
77612 <p>When a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#toolbar-state title="toolbar state">toolbar</a> state, the element is
77618 menu that is <a href=#building-menus-and-toolbars title="building menus and toolbars">built</a>
77631 'binding' property. <a href=#refsBECSS>[BECSS]</a></p>
77644 platform. <a href=#refsCSSUI>[CSSUI]</a></p>
77651 <h4 id=the-button-element-0><span class=secno>12.4.2 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
77658 <code><a href=#the-button-element>button</a></code> element, the element is expected to render as an
77681 <h4 id=the-details-element-0><span class=secno>12.4.3 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
77688 <code><a href=#the-details-element>details</a></code> element, the element is expected to render as a
77690 left-to-right elements (<a href=#ltr-specific>LTR-specific</a>) and with its
77693 element's first child <code><a href=#the-summary-element>summary</a></code> element, if any, and
77701 padding of the <code><a href=#the-details-element>details</a></code> element. That widget is expected
77706 set to 'hidden'. When the <code><a href=#the-details-element>details</a></code> element does not have
77707 an <code title=attr-details-open><a href=#attr-details-open>open</a></code> attribute, this
77716 <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>12.4.4 </span>The <code><a href=#the-input-element>input</a></code> element as a text entry widget</h4>
77721 input[type=password] { binding: <i title="">input-password</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77725 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#text-state-and-search-state title=attr-input-type-text>Text</a>, <a href=#text-state-and-search-state title=attr-input-type-search>Search</a>, <a href=#telephone-state title=attr-input-type-tel>Telephone</a>, <a href=#url-state title=attr-input-type-url>URL</a>, or <a href=#e-mail-state title=attr-input-type-email>E-mail</a> state, the element is
77730 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#password-state title=attr-input-type-password>Password</a> state, the element
77734 <p>If an <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in one of the above
77735 states has a <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute,
77736 and parsing that attribute's value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing
77738 user agent is expected to use the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> for the
77740 href=#converting-a-character-width-to-pixels>converting a character width to pixels</a>
77743 <p>If an <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in one of the above
77744 states does <em>not</em> have a <code title=attr-input-size><a href=#attr-input-size>size</a></code> attribute, then the user agent
77747 from applying the <a href=#converting-a-character-width-to-pixels>converting a character width to
77763 <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>12.4.5 </span>The <code><a href=#the-input-element>input</a></code> element as domain-specific widgets</h4>
77767 input[type=datetime] { binding: <i title="">input-datetime</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77768 input[type=date] { binding: <i title="">input-date</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77769 input[type=month] { binding: <i title="">input-month</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77770 input[type=week] { binding: <i title="">input-week</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77771 input[type=time] { binding: <i title="">input-time</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77772 input[type=datetime-local] { binding: <i title="">input-datetime-local</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77773 input[type=number] { binding: <i title="">input-number</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77776 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#date-and-time-state title=attr-input-type-datetime>Date and Time</a> state, the
77781 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#date-state title=attr-input-type-date>Date</a> state, the element is
77786 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#month-state title=attr-input-type-month>Month</a> state, the element is
77791 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#week-state title=attr-input-type-week>Week</a> state, the element is
77796 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#time-state title=attr-input-type-time>Time</a> state, the element is
77801 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#local-date-and-time-state title=attr-input-type-datetime-local>Local Date and Time</a>
77806 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#number-state title=attr-input-type-number>Number</a> state, the element is
77818 <h4 id=the-input-element-as-a-range-control><span class=secno>12.4.6 </span>The <code><a href=#the-input-element>input</a></code> element as a range control</h4>
77822 input[type=range] { binding: <i title="">input-range</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77825 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#range-state title=attr-input-type-range>Range</a> state, the element is
77836 <p>Predefined suggested values (provided by the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute) are expected to be
77844 <h4 id=the-input-element-as-a-color-well><span class=secno>12.4.7 </span>The <code><a href=#the-input-element>input</a></code> element as a color well</h4>
77848 input[type=color] { binding: <i title="">input-color</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77851 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#color-state title=attr-input-type-color>Color</a> state, the element is
77857 <p>Predefined suggested values (provided by the <code title=attr-input-list><a href=#attr-input-list>list</a></code> attribute) are expected to be
77866 <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>12.4.8 </span>The <code><a href=#the-input-element>input</a></code> element as a check box and radio button widgets</h4>
77870 input[type=checkbox] { binding: <i title="">input-checkbox</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77871 input[type=radio] { binding: <i title="">input-radio</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77874 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a> state, the element
77879 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a> state, the element
77888 <h4 id=the-input-element-as-a-file-upload-control><span class=secno>12.4.9 </span>The <code><a href=#the-input-element>input</a></code> element as a file upload control</h4>
77892 input[type=file] { binding: <i title="">input-file</i>; } /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */</pre>
77895 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#file-upload-state title=attr-input-type-file>File Upload</a> state, the element
77897 text giving the filename(s) of the <a href=#concept-input-type-file-selected title=concept-input-type-file-selected>selected files</a>, if
77906 <h4 id=the-input-element-as-a-button><span class=secno>12.4.10 </span>The <code><a href=#the-input-element>input</a></code> element as a button</h4>
77910 input[type=submit], input[type=reset], input[type=button] { /* <a href=#case-insensitive-selector-exception>case-insensitive</a> */
77915 <code><a href=#the-input-element>input</a></code> element whose <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in the <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>, <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>, or <a href=#button-state title=attr-input-type-button>Button</a> state, the element is
77917 about one line high, containing the contents of the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, if any, or text
77918 derived from the element's <code title=attr-input-type><a href=#attr-input-type>type</a></code>
77927 <h4 id=the-marquee-element-0><span class=secno>12.4.11 </span>The <code><a href=#the-marquee-element>marquee</a></code> element</h4>
77936 <code><a href=#the-marquee-element>marquee</a></code> element, while the element is <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>, the element is expected
77940 <dl><dt>If the element's <code title=attr-marquee-behavior><a href=#attr-marquee-behavior>behavior</a></code> attribute is in the
77941 <a href=#attr-marquee-behavior-scroll title=attr-marquee-behavior-scroll>scroll</a> state</dt>
77946 the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code>
77948 of the <code><a href=#the-marquee-element>marquee</a></code>, and ends flush with the inner end
77951 <p class=example>For example, if the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute is <a href=#attr-marquee-direction-left title=attr-marquee-direction-left>left</a> (the default),
77953 the side of the right edge of the <code><a href=#the-marquee-element>marquee</a></code>'s content
77956 the <code><a href=#the-marquee-element>marquee</a></code>'s content area.</p>
77959 <a href=#increment-the-marquee-current-loop-index>increment the marquee current loop index</a>. If the
77960 element is still <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>
77966 <dt>If the element's <code title=attr-marquee-behavior><a href=#attr-marquee-behavior>behavior</a></code> attribute is in the
77967 <a href=#attr-marquee-behavior-slide title=attr-marquee-behavior-slide>slide</a> state</dt>
77972 the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code>
77974 of the <code><a href=#the-marquee-element>marquee</a></code>, and ends off the end side of the
77975 <code><a href=#the-marquee-element>marquee</a></code>.</p>
77977 <p class=example>For example, if the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute is <a href=#attr-marquee-direction-left title=attr-marquee-direction-left>left</a> (the default),
77979 the side of the right edge of the <code><a href=#the-marquee-element>marquee</a></code>'s content
77982 edge of the <code><a href=#the-marquee-element>marquee</a></code>'s content area.</p>
77985 <a href=#increment-the-marquee-current-loop-index>increment the marquee current loop index</a>. If the
77986 element is still <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>
77992 <dt>If the element's <code title=attr-marquee-behavior><a href=#attr-marquee-behavior>behavior</a></code> attribute is in the
77993 <a href=#attr-marquee-behavior-alternate title=attr-marquee-behavior-alternate>alternate</a>
77998 <p>When the <a href=#marquee-current-loop-index>marquee current loop index</a> is even (or
78000 described by the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute as
78002 the <code><a href=#the-marquee-element>marquee</a></code>, and ends flush with the end side of the
78003 <code><a href=#the-marquee-element>marquee</a></code>.</p>
78005 <p>When the <a href
78007 described by the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute as
78009 <code><a href=#the-marquee-element>marquee</a></code>, and ends flush with the start side of the
78010 <code><a href=#the-marquee-element>marquee</a></code>.</p>
78012 <p class=example>For example, if the <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute is <a href=#attr-marquee-direction-left title=attr-marquee-direction-left>left</a> (the default),
78014 inner edge of the <code><a href=#the-marquee-element>marquee</a></code>'s content area, and the
78017 <code><a href=#the-marquee-element>marquee</a></code>'s content area.</p>
78020 <a href=#increment-the-marquee-current-loop-index>increment the marquee current loop index</a>. If the
78021 element is still <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>
78027 </dl><p>The <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code>
78030 <table><thead><tr><th><code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute state
78035 <tbody><tr><td><a href=#attr-marquee-direction-left title=attr-marquee-direction-left>left</a>
78040 <tr><td><a href=#attr-marquee-direction-right title=attr-marquee-direction-right>right</a>
78045 <tr><td><a href=#attr-marquee-direction-up title=attr-marquee-direction-up>up</a>
78050 <tr><td><a href=#attr-marquee-direction-down title=attr-marquee-direction-down>down</a>
78056 delay given by the <a href=#marquee-scroll-interval>marquee scroll interval</a> between each
78058 the <a href=#marquee-scroll-distance>marquee scroll distance</a> with each frame.</p>
78060 <p>When a <code><a href=#the-marquee-element>marquee</a></code> element has a <code title=attr-marquee-bgcolor>bgcolor</code> attribute set, the value
78061 is expected to be parsed using the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy
78063 agent is expected to treat the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> setting the
78067 <code><a href=#the-marquee-element>marquee</a></code> element <a href=#maps-to-the-dimension-property title="maps to the dimension
78071 <p>The intrinsic height of a <code><a href=#the-marquee-element>marquee</a></code> element with its
78072 <code title=attr-marquee-direction><a href=#attr-marquee-direction>direction</a></code> attribute in
78073 the <a href=#attr-marquee-direction-up title=attr-marquee-direction-up>up</a> or <a href=#attr-marquee-direction-down title=attr-marquee-direction-down>down</a> states is 200 CSS
78077 a <code><a href=#the-marquee-element>marquee</a></code> element <a href=#maps-to-the-dimension-property title="maps to the dimension
78080 <code><a href=#the-marquee-element>marquee</a></code> element <a href=#maps-to-the-dimension-property title="maps to the dimension
78084 <p>The 'overflow' property on the <code><a href=#the-marquee-element>marquee</a></code> element is
78093 <h4 id=the-meter-element-0><span class=secno>12.4.12 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
78102 <code><a href=#the-meter-element>meter</a></code> element, the element is expected to render as an
78118 are included in the definition of the <code><a href=#the-meter-element>meter</a></code>
78126 <h4 id=the-progress-element-0><span class=secno>12.4.13 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
78135 <code><a href=#the-progress-element>progress</a></code> element, the element is expected to render as
78158 <code><a href=#the-progress-element>progress</a></code> element.</p>
78165 <h4 id=the-select-element-0><span class=secno>12.4.14 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
78174 <code><a href=#the-select-element>select</a></code> element whose <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is present,
78178 <code><a href=#the-select-element>select</a></code> element whose <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is absent,
78179 and the element's <a href=#concept-select-size title=concept-select-size>display
78185 contain as many rows for items as given by the element's <a href=#concept-select-size title=concept-select-size>display size</a>, or four rows if the
78186 attribute is absent, and whose 'width' is the <a href="#width-of-the-select's-labels">width of the
78191 <code><a href=#the-select-element>select</a></code> element whose <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code> attribute is absent,
78192 and the element's <a href=#concept-select-size title=concept-select-size>display
78194 drop down box whose width is the <a href="#width-of-the-select's-labels">width of the
78198 are expected to be the element's <a href=#concept-select-option-list title=concept-select-option-list>list of options</a>, with the
78199 element's <code><a href=#the-optgroup-element>optgroup</a></code> element children providing headers
78204 <code><a href=#the-optgroup-element>optgroup</a></code>, and the width necessary to render the widest
78205 <code><a href=#the-option-element>option</a></code> element in the element's <a href=#concept-select-option-list title=concept-select-option-list>list of options</a> (including
78208 <p>An <code><a href=#the-optgroup-element>optgroup</a></code> element is expected to be rendered by
78209 displaying the element's <code title=attr-optgroup-label><a href=#attr-optgroup-label>label</a></code> attribute.</p>
78211 <p>An <code><a href=#the-option-element>option</a></code> element is expected to be rendered by
78212 displaying the element's <code title=concept-option-label><a href=#concept-option-label>label</a></code>, indented under its
78213 <code><a href=#the-optgroup-element>optgroup</a></code> element if it has one.</p>
78220 <h4 id=the-textarea-element-0><span class=secno>12.4.15 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
78227 <code><a href=#the-textarea-element>textarea</a></code> element, the element is expected to render as
78230 <p>If the element has a <code title=attr-textarea-cols><a href=#attr-textarea-cols>cols</a></code>
78231 attribute, and parsing that attribute's value using the <a href=#rules-for-parsing-non-negative-integers>rules
78233 then the user agent is expected to use the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> for the
78235 <a href=#textarea-effective-width>textarea effective width</a> (as defined below). Otherwise,
78238 <a href=#textarea-effective-width>textarea effective width</a>.</p>
78241 <code><a href=#the-textarea-element>textarea</a></code> element is <span><var title="">size</var>×<var title="">avg</var> + <var title="">sbw</var></span>, where <var title="">size</var> is the
78242 element's <a href=#attr-textarea-cols-value title=attr-textarea-cols-value>character
78247 <p>If the element has a <code title=attr-textarea-rows><a href=#attr-textarea-rows>rows</a></code>
78248 attribute, and parsing that attribute's value using the <a href=#rules-for-parsing-non-negative-integers>rules
78250 then the user agent is expected to use the attribute as a <a href=#presentational-hints title="presentational hints">presentational hint</a> for the
78252 <a href=#textarea-effective-height>textarea effective height</a> (as defined
78255 the element to the <a href=#textarea-effective-height>textarea effective height</a>.</p>
78258 <code><a href=#the-textarea-element>textarea</a></code> element is the height in CSS pixels of the
78259 number of lines specified the element's <a href=#attr-textarea-rows-value title=attr-textarea-rows-value>character height</a>, plus the
78262 <p>For historical reasons, if the element has a <code title=attr-textarea-wrap><a href=#attr-textarea-wrap>wrap</a></code> attribute whose value is an
78263 <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string "<code title=attr-textarea-wrap-off>off</code>", then the user agent is
78272 <h4 id=the-keygen-element-0><span class=secno>12.4.16 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
78279 <code><a href=#the-keygen-element>keygen</a></code> element, the element is expected to render as an
78288 <h4 id=the-time-element-0><span class=secno>12.4.17 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
78295 <code><a href=#the-time-element>time</a></code> element, the element is expected to render as if
78296 it contained text conveying the <a href=#concept-time-date title=concept-time-date>date</a> (if known), <a href=#concept-time-time title=concept-time-time>time</a> (if known), and <a href=#concept-time-timezone title=concept-time-timezone>time-zone offset</a> (if known)
78310 <p>When an <code><a href=#the-html-element-0>html</a></code> element's second child element is a
78311 <code><a href=#frameset>frameset</a></code> element, the user agent is expected to render
78312 the <code><a href=#frameset>frameset</a></code> element as described below across the
78316 <p>When rendering a <code><a href=#frameset>frameset</a></code> on a surface, the user
78326 <p>Use the <a href=#rules-for-parsing-a-list-of-dimensions>rules for parsing a list of dimensions</a> to
78331 <p>Use the <a href=#rules-for-parsing-a-list-of-dimensions>rules for parsing a list of dimensions</a> to
78359 <p>Invoke the algorithm defined below to <a href=#convert-a-list-of-dimensions-to-a-list-of-pixel-values>convert a list of
78361 surface that the <code><a href=#frameset>frameset</a></code> is being rendered into, in
78365 <p>Invoke the algorithm defined below to <a href=#convert-a-list-of-dimensions-to-a-list-of-pixel-values>convert a list of
78367 surface that the <code><a href=#frameset>frameset</a></code> is being rendered into, in
78392 <code><a href=#frame>frame</a></code> and <code><a href=#frameset>frameset</a></code> elements that are
78393 children of the <code><a href=#frameset>frameset</a></code> element for which the
78413 <p>If this is a <code><a href=#frameset>frameset</a></code> element, then recurse
78414 the entire <code><a href=#frameset>frameset</a></code> layout algorithm for that
78415 <code><a href=#frameset>frameset</a></code> element, with the rectangle as the
78418 <p>Otherwise, it is a <code><a href=#frame>frame</a></code> element; create a
78419 <a href=#nested-browsing-context>nested browsing context</a> sized to fit the
78434 <p>If the <code><a href=#frameset>frameset</a></code> element <a href=#has-a-border>has a border</a>,
78436 element's <a href=#frame-border-color>frame border color</a>.</p>
78439 rectangle, and that element <a href=#has-a-border>has a border</a>, draw an
78441 element's <a href=#frame-border-color>frame border color</a>.</p>
78444 is assigned a <code><a href=#frame>frame</a></code> element with a <code title=attr-frame-noresize>noresize</code> attribute (including
78445 rectangles in further nested <code><a href=#frameset>frameset</a></code> elements), the
78448 nested <code><a href=#frameset>frameset</a></code> grids.</p>
78450 <p>A <code><a href=#frameset>frameset</a></code> or <code><a href=#frame>frame</a></code> element <dfn id=has-a-border>has
78463 <code><a href=#frameset>frameset</a></code> element, then return true if <em>that</em>
78464 element <a href=#has-a-border>has a border</a>, and false if it does
78469 </ol><p>The <dfn id=frame-border-color>frame border color</dfn> of a <code><a href=#frameset>frameset</a></code> or
78470 <code><a href=#frame>frame</a></code> element is the color obtained from the
78474 applying the <a href=#rules-for-parsing-a-legacy-color-value>rules for parsing a legacy color value</a>
78479 <code><a href=#frameset>frameset</a></code> element, then the <a href=#frame-border-color>frame border
78598 <a href=#hyperlink>hyperlink</a> activation and <a href=#form-submission>form submission</a>,
78599 such as which <a href=#browsing-context>browsing context</a> is to be used for the
78600 subsequent <a href=#navigate title=navigate>navigation</a>.</p>
78603 destination of <a href=#hyperlink title=hyperlink>hyperlinks</a> and of
78604 <a href=#the-form-element title=form>forms</a> before triggering their <a href=#navigate title=navigate>navigation</a>.</p>
78608 <a href=#hyperlink>hyperlink</a> includes <a href=#hyperlink-auditing>hyperlink auditing</a>, and
78613 <p>User agents are expected to allow users to <a href=#navigate>navigate</a>
78614 <a href=#browsing-context title="browsing context">browsing contexts</a> to the
78615 resources <a href=#resolve-a-url title="resolve a url">indicated</a> by the <code title="">cite</code> attributes on <code><a href=#the-q-element>q</a></code>,
78616 <code><a href=#the-blockquote-element>blockquote</a></code>, <code><a href=#the-section-element>section</a></code>, <code><a href=#the-article-element>article</a></code>,
78617 <code><a href=#the-ins-element>ins</a></code>, and <code><a href=#the-del-element>del</a></code> elements.</p>
78619 <p>User agents are expected to surface <a href=#hyperlink title=hyperlink>hyperlinks</a> created by <code><a href=#the-link-element>link</a></code>
78622 <p class=note>While <code><a href=#the-link-element>link</a></code> elements that create <a href=#hyperlink title=hyperlink>hyperlinks</a> will match the ':link' or
78626 interface, rather than in the page itself, does not trigger <code title=event-click><a href=#event-click>click</a></code> events and the like.</p>
78631 <h4 id=the-title-attribute-0><span class=secno>12.6.2 </span>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute</h4>
78634 cursor), if the element, or one of its ancestors, has a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute, and the nearest such
78649 <p>The current text editing caret (the one at the <a href=#caret-position>caret
78650 position</a> in a focused <a href=#editing-host>editing host</a>) is expected
78666 href=#document>Document</a></code>. For
78670 <p>When the user actually <a href=#obtain-a-physical-form title="obtain a physical
78672 physical form) of a <code><a href=#document>Document</a></code>, the user agent is
78673 expected to create a new rendering of the <code><a href=#document>Document</a></code> for
78689 <p>Authors should not specify an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
78690 <a href=#attr-meta-http-equiv-content-language title=attr-meta-http-equiv-content-language>Content
78691 Language</a> state on a <code><a href=#meta>meta</a></code> element. The <code title=attr-lang><a href=#attr-lang>lang</a></code> attribute should be used instead.</p>
78693 <p>Authors should not specify a <code title=attr-img-border><a href=#attr-img-border>border</a></code> attribute on an
78694 <code><a href=#the-img-element>img</a></code> element. If the attribute is present, its value
78698 <p>Authors should not specify a <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute on a
78699 <code><a href=#script>script</a></code> element. If the attribute is present, its value
78700 must be an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the string
78701 "<code title="">JavaScript</code>" and either the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute must be omitted or
78702 its value must be an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for
78705 of the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute.</p>
78707 <p>Authors should not specify the <code title=attr-a-name><a href=#attr-a-name>name</a></code> attribute on <code><a href=#the-a-element>a</a></code>
78710 <a href=#concept-id title=concept-id>IDs</a> in the element's <a href=#home-subtree>home
78711 subtree</a> other than the element's own <a href=#concept-id title=concept-id>ID</a>, if any, nor be equal to the value of
78712 any of the other <code title=attr-a-name><a href=#attr-a-name>name</a></code> attributes on
78713 <code><a href=#the-a-element>a</a></code> elements in the element's <a href=#home-subtree>home
78715 <a href=#concept-id title=concept-id>ID</a>, then the attribute's value must
78716 be equal to the element's <a href=#concept-id title=concept-id>ID</a>. In
78718 way to specify possible targets for fragment identifiers in <a href=#url title=URL>URLs</a>. The <code title=attr-id><a href=#the-id-attribute>id</a></code>
78721 <p class=note>In <a href=#syntax>the HTML syntax</a>, specifying a <a href=#syntax-doctype title=syntax-DOCTYPE>DOCTYPE</a> that is an <a href=#obsolete-permitted-doctype>obsolete
78724 <p class=note>The <code title=attr-table-summary><a href=#attr-table-summary>summary</a></code>
78725 attribute, defined in the <code><a href=#the-table-element>table</a></code> section, will also
78746 <ul><!-- downplayed list --><li><p>The presence of an <a href=#obsolete-permitted-doctype>obsolete permitted DOCTYPE</a>
78747 in an <a href=#html-documents title="HTML documents">HTML document</a>.</li>
78749 <li><p>The presence of a <code><a href=#meta>meta</a></code> element with an <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute in the
78750 <a href=#attr-meta-http-equiv-content-language title=attr-meta-http-equiv-content-language>Content
78753 <li><p>The presence of a <code title=attr-img-border><a href=#attr-img-border>border</a></code> attribute on an
78754 <code><a href=#the-img-element>img</a></code> element if its value is the string "<code title="">0</code>".</li>
78756 <li><p>The presence of a <code title=attr-script-language><a href=#attr-script-language>language</a></code> attribute on a
78757 <code><a href=#script>script</a></code> element if its value is an <a href=#ascii-case-insensitive>ASCII
78758 case-insensitive</a> match for the string "<code title="">JavaScript</code>" and if there is no <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute or there is and its
78759 value is an <a href=#ascii-case-insensitive>ASCII case-insensitive</a> match for the
78762 <li><p>The presence of a <code title=attr-a-name><a href=#attr-a-name>name</a></code>
78763 attribute on an <code><a href=#the-a-element>a</a></code> element, if its value is not the
78766 <li><p>The presence of a <code title=attr-table-summary><a href=#attr-table-summary>summary</a></code> attribute on a
78767 <code><a href=#the-table-element>table</a></code> element.</li> <!-- 2.65% pages -->
78785 <dl><!-- alphabetical by first element in the group, except CSS goes last --><dt><code><a href=#the-applet-element>applet</a></code></dt>
78786 <dd><p>Use <code><a href=#the-embed-element>embed</a></code> or <code><a href=#the-object-element>object</a></code> instead.</dd>
78789 <dd><p>Use <code><a href=#the-abbr-element>abbr</a></code> instead.</dd>
78792 <dd><p>Use <code><a href=#audio>audio</a></code> instead.</dd>
78795 <dd><p>Use <code><a href=#the-ul-element>ul</a></code> instead.</dd>
78797 <dt><code><a href=#frame>frame</a></code></dt>
78798 <dt><code><a href=#frameset>frameset</a></code></dt>
78800 <dd><p>Either use <code><a href=#the-iframe-element>iframe</a></code> and CSS instead, or use server-side includes to generate complete pages with the various invariant parts merged in.</dd>
78803 <dd><p>Use an explicit <code><a href=#the-form-element>form</a></code> and <a href=#text-state-and-search-state title=attr-input-type-text>text field</a> combination instead.</dd>
78807 <dd><p>Use <code><a href=#the-pre-element>pre</a></code> and <code><a href=#the-code-element>code</a></code> instead.</dd>
78813 <dd><p>Use <code><a href=#the-object-element>object</a></code> instead of <code><a href=#the-embed-element>embed</a></code> when fallback is necessary.</dd>
78816 <dd><p>Use the "<code>text/plain</code>" <a href=#mime-type>MIME type</a> instead.</dd>
78819 <dd><p>Providing the ruby base directly inside the <code><a href=#the-ruby-element>ruby</a></code> element is sufficient; the <code><a href=#rb>rb</a></code> element is unnecessary. Omit it altogether.</dd>
78826 <dt><code><a href=#the-marquee-element>marquee</a></code></dt>
78839 <p>For the <code><a href=#s>s</a></code> and <code><a href=#strike>strike</a></code> elements, if
78841 <code><a href=#the-del-element>del</a></code> element instead.</p>
78843 <p>Where the <code><a href=#tt>tt</a></code> element would have been used for
78844 marking up keyboard input, consider the <code><a href=#the-kbd-element>kbd</a></code> element;
78845 for variables, consider the <code><a href=#the-var-element>var</a></code> element; for computer
78846 code, consider the <code><a href=#the-code-element>code</a></code> element; and for computer
78847 output, consider the <code><a href=#the-samp-element>samp</a></code> element.</p>
78849 <p>Similarly, if the <code><a href=#u>u</a></code> element is being used to
78850 indicate emphasis, consider using the <code><a href=#the-em-element>em</a></code> element; if
78852 <code><a href=#the-b-element>b</a></code> element; and if it is being used for highlighting
78853 text for reference purposes, consider the <code><a href=#the-mark-element>mark</a></code>
78856 <p>See also the <a href=#usage-summary>text-level semantics
78864 <dl><!-- alphabetical by element then attribute of first item in group, except CSS goes last --><dt><dfn id=attr-a-charset title=attr-a-charset><code>charset</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78865 <dt><dfn id=attr-link-charset title=attr-link-charset><code>charset</code></dfn> on <code><a href=#the-link-element>link</a></code> elements</dt>
78868 <dt><dfn id=attr-a-coords title=attr-a-coords><code>coords</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78869 <dt><dfn id=attr-a-shape title=attr-a-shape><code>shape</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78870 <dd><p>Use <code><a href=#the-area-element>area</a></code> instead of <code><a href=#the-a-element>a</a></code> for image maps.</dd>
78872 <dt><dfn id=attr-a-methods title=attr-a-methods><code>methods</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78873 <dt><dfn id=attr-link-methods title=attr-link-methods><code>methods</code></dfn> on <code><a href=#the-link-element>link</a></code> elements</dt>
78876 <dt><dfn id=attr-a-name title=attr-a-name><code>name</code></dfn> on <code><a href=#the-a-element>a</a></code> elements (except as noted in the previous section)</dt>
78877 <dt><dfn id=attr-embed-name title=attr-embed-name><code>name</code></dfn> on <code><a href=#the-embed-element>embed</a></code> elements</dt>
78878 <dt><dfn id=attr-img-name title=attr-img-name><code>name</code></dfn> on <code><a href=#the-img-element>img</a></code> elements</dt>
78879 <dt><dfn id=attr-option-name title=attr-option-name><code>name</code></dfn> on <code><a href=#the-option-element>option</a></code> elements</dt>
78880 <dd><p>Use the <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute instead.</dd>
78882 <dt><dfn id=attr-a-rev title=attr-a-rev><code>rev</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78883 <dt><dfn id=attr-link-rev title=attr-link-rev><code>rev</code></dfn> on <code><a href=#the-link-element>link</a></code> elements</dt>
78884 <dd><p>Use the <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>
78888 <dt><dfn id=attr-a-urn title=attr-a-urn><code>urn</code></dfn> on <code><a href=#the-a-element>a</a></code> elements</dt>
78889 <dt><dfn id=attr-link-urn title=attr-link-urn><code>urn</code></dfn> on <code><a href=#the-link-element>link</a></code> elements</dt>
78890 <dd><p>Specify the preferred persistent identifier using the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute instead.</dd>
78892 <dt><dfn id=attr-area-nohref title=attr-area-nohref><code>nohref</code></dfn> on <code><a href=#the-area-element>area</a></code> elements</dt>
78893 <dd><p>Omitting the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>
78894 attribute is sufficient; the <code title=attr-area-nohref><a href=#attr-area-nohref>nohref</a></code> attribute is
78897 <dt><dfn id=attr-head-profile title=attr-head-profile><code>profile</code></dfn> on <code><a href=#the-head-element-0>head</a></code> elements</dt>
78898 <dd><p>When used for declaring which <code><a href=#meta>meta</a></code> terms are
78899 used in the document, unnecessary; omit it altogether, and <a href=#concept-meta-extensions title=concept-meta-extensions>register the names</a>.</dd>
78901 a <code><a href=#the-link-element>link</a></code> element instead.</dd>
78903 <dt><dfn id=attr-html-version title=attr-html-version><code>version</code></dfn> on <code><a href=#the-html-element-0>html</a></code> elements</dt>
78906 <dt><dfn id=attr-input-usemap title=attr-input-usemap><code>usemap</code></dfn> on <code><a href=#the-input-element>input</a></code> elements</dt>
78907 <dd><p>Use <code><a href=#the-img-element>img</a></code> instead of <code><a href=#the-input-element>input</a></code> for image maps.</dd>
78909 <dt><dfn id=attr-iframe-longdesc title=attr-iframe-longdesc><code>longdesc</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78910 <dt><dfn id=attr-img-longdesc title=attr-img-longdesc><code>longdesc</code></dfn> on <code><a href=#the-img-element>img</a></code> elements</dt>
78911 <dd><p>Use a regular <code><a href=#the-a-element>a</a></code> element to link to the description.</dd>
78913 <dt><dfn id=attr-link-target title=attr-link-target><code>target</code></dfn> on <code><a href=#the-link-element>link</a></code> elements</dt>
78916 href=#meta>meta</a></code> elements</dt>
78919 <dt><dfn id=attr-object-archive title=attr-object-archive><code>archive</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78920 <dt><dfn id=attr-object-classid title=attr-object-classid><code>classid</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78921 <dt><dfn id=attr-object-code title=attr-object-code><code>code</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78922 <dt><dfn id=attr-object-codebase title=attr-object-codebase><code>codebase</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78923 <dt><dfn id=attr-object-codetype title=attr-object-codetype><code>codetype</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78924 <dd><p>Use the <code title=attr-object-data><a href=#attr-object-data>data</a></code> and <code title=attr-object-type><a href=#attr-object-type>type</a></code> attributes to invoke <a href=#plugin title=plugin>plugins</a>. To set parameters with these names
78925 in particular, the <code><a href=#the-param-element>param</a></code> element can be used.</dd>
78927 <dt><dfn id=attr-object-declare title=attr-object-declare><code>declare</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78928 <dd><p>Repeat the <code><a href=#the-object-element>object</a></code> element completely each time the resource is to be reused.</dd>
78930 <dt><dfn id=attr-object-standby title=attr-object-standby><code>standby</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
78933 <dt><dfn id=attr-param-type title=attr-param-type><code>type</code></dfn> on <code><a href=#the-param-element>param</a></code> elements</dt>
78934 <dt><dfn id=attr-param-valuetype title=attr-param-valuetype><code>valuetype</code></dfn> on <code><a href=#the-param-element>param</a></code> elements</dt>
78935 <dd><p>Use the <code title=attr-param-name><a href=#attr-param-name>name</a></code> and <code title=attr-param-value><a href=#attr-param-value>value</a></code> attributes without declaring
78938 <dt><dfn id=attr-script-language title=attr-script-language><code>language</code></dfn> on <code><a href=#script>script</a></code> elements (except as noted in the previous section)</dt>
78939 <dd><p>Use the <code title=attr-script-type><a href=#attr-script-type>type</a></code> attribute
78942 <dt><dfn id=attr-script-event title=attr-script-event><code>event</code></dfn> on <code><a href=#script>script</a></code> elements</dt>
78943 <dt><dfn id=attr-script-for title=attr-script-for><code>for</code></dfn> on <code><a href=#script>script</a></code> elements</dt>
78944 <dd><p>Use DOM Events mechanisms to register event listeners. <a href=#refsDOMEVENTS>[DOMEVENTS]</a></dd>
78946 <dt><dfn id=attr-table-datapagesize title=attr-table-datapagesize><code>datapagesize</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
78949 <dt><dfn id=attr-tdth-abbr title=attr-tdth-abbr><code>abbr</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
78950 <dd><p>Use text that begins in an unambiguous and terse manner, and include any more elaborate text after that. The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute can also be useful in including more detailed text, so that the cell's contents can be made terse.</p>
78952 <dt><dfn id=attr-tdth-axis title=attr-tdth-axis><code>axis</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
78953 <dd><p>Use the <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code> attribute on the relevant <code><a href=#the-th-element>th</a></code>.</p>
78955 <dt><dfn id=attr-datasrc title=attr-datasrc><code>datasrc</code></dfn> on <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-button-element>button</a></code>, <code><a href=#the-div-element>div</a></code>, <code><a href=#frame>frame</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href=#the-input-element>input</a></code>, <code><a href=#the-label-element>label</a></code>, <code><a href=#the-legend-element>legend</a></code>, <code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#the-object-element>object</a></code>, <code><a href=#the-option-element>option</a></code>, <code><a href=#the-select-element>select</a></code>, <code><a href=#the-span-element>span</a></code>, <code><a href=#the-table-element>table</a></code>, and <code><a href=#the-textarea-element>textarea</a></code> elements</dt>
78956 <dt><dfn id=attr-datafld title=attr-datafld><code>datafld</code></dfn> on <code><a href=#the-a-element>a</a></code>, <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-button-element>button</a></code>, <code><a href=#the-div-element>div</a></code>, <code><a href=#the-fieldset-element>fieldset</a></code>, <code><a href=#frame>frame</a></code>, <code><a href=#the-iframe-element>iframe</a></code>, <code><a href=#the-img-element>img</a></code>, <code><a href=#the-input-element>input</a></code>, <code><a href=#the-label-element>label</a></code>, <code><a href=#the-legend-element>legend</a></code>, <code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#the-object-element>object</a></code>, <code><a href=#the-param-element>param</a></code>, <code><a href=#the-select-element>select</a></code>, <code><a href=#the-span-element>span</a></code>, and <code><a href=#the-textarea-element>textarea</a></code> elements</dt>
78957 <dt><dfn id=attr-dataformatas title=attr-dataformatas><code>dataformatas</code></dfn> on <code><a href=#the-button-element>button</a></code>, <code><a href=#the-div-element>div</a></code>, <code><a href=#the-input-element>input</a></code>, <code><a href=#the-label-element>label</a></code>, <code><a href=#the-legend-element>legend</a></code>, <code><a href=#the-marquee-element>marquee</a></code>, <code><a href=#the-object-element>object</a></code>, <code><a href=#the-option-element>option</a></code>, <code><a href=#the-select-element>select</a></code>, <code><a href=#the-span-element>span</a></code>, <code><a href=#the-table-element>table</a></code></dt>
78958 <dd><p>Use script and a mechanism such as <code>XMLHttpRequest</code> to populate the page dynamically. <a href=#refsXHR>[XHR]</a></dd>
78960 <dt><dfn id=attr-body-alink title=attr-body-alink><code>alink</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78961 <dt><dfn id=attr-body-bgcolor title=attr-body-bgcolor><code>bgcolor</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78962 <dt><dfn id=attr-body-link title=attr-body-link><code>link</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78963 <dt><dfn id=attr-body-marginbottom title=attr-body-marginbottom><code>marginbottom</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78964 <dt><dfn id=attr-body-marginheight title=attr-body-marginheight><code>marginheight</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78965 <dt><dfn id=attr-body-marginleft title=attr-body-marginleft><code>marginleft</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78966 <dt><dfn id=attr-body-marginright title=attr-body-marginright><code>marginright</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78967 <dt><dfn id=attr-body-margintop title=attr-body-margintop><code>margintop</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78968 <dt><dfn id=attr-body-marginwidth title=attr-body-marginwidth><code>marginwidth</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78969 <dt><dfn id=attr-body-text title=attr-body-text><code>text</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78970 <dt><dfn id=attr-body-vlink title=attr-body-vlink><code>vlink</code></dfn> on <code><a href=#the-body-element-0>body</a></code> elements</dt>
78971 <dt><dfn id=attr-br-clear title=attr-br-clear><code>clear</code></dfn> on <code><a href=#the-br-element>br</a></code> elements</dt>
78972 <dt><dfn id=attr-caption-align title=attr-caption-align><code>align</code></dfn> on <code><a href=#the-caption-element>caption</a></code> elements</dt>
78973 <dt><dfn id=attr-col-align title=attr-col-align><code>align</code></dfn> on <code><a href=#the-col-element>col</a></code> elements</dt>
78974 <dt><dfn id=attr-col-char title=attr-col-char><code>char</code></dfn> on <code><a href=#the-col-element>col</a></code> elements</dt>
78975 <dt><dfn id=attr-col-charoff title=attr-col-charoff><code>charoff</code></dfn> on <code><a href=#the-col-element>col</a></code> elements</dt>
78976 <dt><dfn id=attr-col-valign title=attr-col-valign><code>valign</code></dfn> on <code><a href=#the-col-element>col</a></code> elements</dt>
78977 <dt><dfn id=attr-col-width title=attr-col-width><code>width</code></dfn> on <code><a href=#the-col-element>col</a></code> elements</dt>
78978 <dt><dfn id=attr-div-align title=attr-div-align><code>align</code></dfn> on <code><a href=#the-div-element>div</a></code> elements</dt>
78979 <dt><dfn id=attr-dl-compact title=attr-dl-compact><code>compact</code></dfn> on <code><a href=#the-dl-element>dl</a></code> elements</dt>
78980 <dt><dfn id=attr-embed-align title=attr-embed-align><code>align</code></dfn> on <code><a href=#the-embed-element>embed</a></code> elements</dt>
78981 <dt><dfn id=attr-embed-hspace title=attr-embed-hspace><code>hspace</code></dfn> on <code><a href=#the-embed-element>embed</a></code> elements</dt>
78982 <dt><dfn id=attr-embed-vspace title=attr-embed-vspace><code>vspace</code></dfn> on <code><a href=#the-embed-element>embed</a></code> elements</dt>
78983 <dt><dfn id=attr-hr-align title=attr-hr-align><code>align</code></dfn> on <code><a href=#the-hr-element>hr</a></code> elements</dt>
78984 <dt><dfn id=attr-hr-color title=attr-hr-color><code>color</code></dfn> on <code><a href=#the-hr-element>hr</a></code> elements</dt>
78985 <dt><dfn id=attr-hr-noshade title=attr-hr-noshade><code>noshade</code></dfn> on <code><a href=#the-hr-element>hr</a></code> elements</dt>
78986 <dt><dfn id=attr-hr-size title=attr-hr-size><code>size</code></dfn> on <code><a href=#the-hr-element>hr</a></code> elements</dt>
78987 <dt><dfn id=attr-hr-width title=attr-hr-width><code>width</code></dfn> on <code><a href=#the-hr-element>hr</a></code> elements</dt>
78988 <dt><dfn id=attr-hx-align title=attr-hx-align><code>align</code></dfn> on <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>—<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements</dt>
78989 <dt><dfn id=attr-iframe-align title=attr-iframe-align><code>align</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78990 <dt><dfn id=attr-iframe-allowtransparency title=attr-iframe-allowtransparency><code>allowtransparency</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78991 <dt><dfn id=attr-iframe-frameborder title=attr-iframe-frameborder><code>frameborder</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78992 <dt><dfn id=attr-iframe-hspace title=attr-iframe-hspace><code>hspace</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78993 <dt><dfn id=attr-iframe-marginheight title=attr-iframe-marginheight><code>marginheight</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78994 <dt><dfn id=attr-iframe-marginwidth title=attr-iframe-marginwidth><code>marginwidth</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78995 <dt><dfn id=attr-iframe-scrolling title=attr-iframe-scrolling><code>scrolling</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78996 <dt><dfn id=attr-iframe-vspace title=attr-iframe-vspace><code>vspace</code></dfn> on <code><a href=#the-iframe-element>iframe</a></code> elements</dt>
78997 <dt><dfn id=attr-input-align title=attr-input-align><code>align</code></dfn> on <code><a href=#the-input-element>input</a></code> elements</dt>
78998 <dt><dfn id=attr-input-hspace title=attr-input-hspace><code>hspace</code></dfn> on <code><a href=#the-input-element>input</a></code> elements</dt>
78999 <dt><dfn id=attr-input-vspace title=attr-input-vspace><code>vspace</code></dfn> on <code><a href=#the-input-element>input</a></code> elements</dt>
79000 <dt><dfn id=attr-img-align title=attr-img-align><code>align</code></dfn> on <code><a href=#the-img-element>img</a></code> elements</dt>
79001 <dt><dfn id=attr-img-border title=attr-img-border><code>border</code></dfn> on <code><a href=#the-img-element>img</a></code> elements (except as noted in the previous section)</dt>
79002 <dt><dfn id=attr-img-hspace title=attr-img-hspace><code>hspace</code></dfn> on <code><a href=#the-img-element>img</a></code> elements</dt>
79003 <dt><dfn id=attr-img-vspace title=attr-img-vspace><code>vspace</code></dfn> on <code><a href=#the-img-element>img</a></code> elements</dt>
79004 <dt><dfn id=attr-legend-align title=attr-legend-align><code>align</code></dfn> on <code><a href=#the-legend-element>legend</a></code> elements</dt>
79005 <dt><dfn id=attr-li-type title=attr-li-type><code>type</code></dfn> on <code><a href=#the-li-element>li</a></code> elements</dt>
79006 <dt><dfn id=attr-menu-compact title=attr-menu-compact><code>compact</code></dfn> on <code><a href=#menus>menu</a></code> elements</dt>
79007 <dt><dfn id=attr-object-align title=attr-object-align><code>align</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
79008 <dt><dfn id=attr-object-border title=attr-object-border><code>border</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
79009 <dt><dfn id=attr-object-hspace title=attr-object-hspace><code>hspace</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
79010 <dt><dfn id=attr-object-vspace title=attr-object-vspace><code>vspace</code></dfn> on <code><a href=#the-object-element>object</a></code> elements</dt>
79011 <dt><dfn id=attr-ol-compact title=attr-ol-compact><code>compact</code></dfn> on <code><a href=#the-ol-element>ol</a></code> elements</dt>
79012 <dt><dfn id=attr-ol-type title=attr-ol-type><code>type</code></dfn> on <code><a href=#the-ol-element>ol</a></code> elements</dt>
79013 <dt><dfn id=attr-p-align title=attr-p-align><code>align</code></dfn> on <code><a href=#the-p-element>p</a></code> elements</dt>
79014 <dt><dfn id=attr-pre-width title=attr-pre-width><code>width</code></dfn> on <code><a href=#the-pre-element>pre</a></code> elements</dt>
79015 <dt><dfn id=attr-table-align title=attr-table-align><code>align</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79016 <dt><dfn id=attr-table-bgcolor title=attr-table-bgcolor><code>bgcolor</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79017 <dt><dfn id=attr-table-border title=attr-table-border><code>border</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79018 <dt><dfn id=attr-table-cellpadding title=attr-table-cellpadding><code>cellpadding</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79019 <dt><dfn id=attr-table-cellspacing title=attr-table-cellspacing><code>cellspacing</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79020 <dt><dfn id=attr-table-frame title=attr-table-frame><code>frame</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79021 <dt><dfn id=attr-table-rules title=attr-table-rules><code>rules</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79022 <dt><dfn id=attr-table-width title=attr-table-width><code>width</code></dfn> on <code><a href=#the-table-element>table</a></code> elements</dt>
79023 href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and <code><a href=#the-tfoot-element>tfoot</a></code> elements</dt>
79024 <dt><dfn id=attr-tbody-char title=attr-tbody-char><code>char</code></dfn> on <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and <code><a href=#the-tfoot-element>tfoot</a></code> elements</dt>
79025 <dt><dfn id=attr-tbody-charoff title=attr-tbody-charoff><code>charoff</code></dfn> on <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and <code><a href=#the-tfoot-element>tfoot</a></code> elements</dt>
79026 <dt><dfn id=attr-tbody-valign title=attr-tbody-vAlign><code>valign</code></dfn> on <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and <code><a href=#the-tfoot-element>tfoot</a></code> elements</dt>
79027 <dt><dfn id=attr-tdth-align title=attr-tdth-align><code>align</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79028 <dt><dfn id=attr-tdth-bgcolor title=attr-tdth-bgcolor><code>bgcolor</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79029 <dt><dfn id=attr-tdth-char title=attr-tdth-char><code>char</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79030 <dt><dfn id=attr-tdth-charoff title=attr-tdth-charoff><code>charoff</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79031 <dt><dfn id=attr-tdth-height title=attr-tdth-height><code>height</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79032 <dt><dfn id=attr-tdth-nowrap title=attr-tdth-nowrap><code>nowrap</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79033 <dt><dfn id=attr-tdth-valign title=attr-tdth-valign><code>valign</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79034 <dt><dfn id=attr-tdth-width title=attr-tdth-width><code>width</code></dfn> on <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements</dt>
79035 <dt><dfn id=attr-tr-align title=attr-tr-align><code>align</code></dfn> on <code><a href=#the-tr-element>tr</a></code> elements</dt>
79036 <dt><dfn id=attr-tr-bgcolor title=attr-tr-bgcolor><code>bgcolor</code></dfn> on <code><a href=#the-tr-element>tr</a></code> elements</dt>
79037 <dt><dfn id=attr-tr-char title=attr-tr-char><code>char</code></dfn> on <code><a href=#the-tr-element>tr</a></code> elements</dt>
79038 <dt><dfn id=attr-tr-charoff title=attr-tr-charoff><code>charoff</code></dfn> on <code><a href=#the-tr-element>tr</a></code> elements</dt>
79039 <dt><dfn id=attr-tr-valign title=attr-tr-valign><code>valign</code></dfn> on <code><a href=#the-tr-element>tr</a></code> elements</dt>
79040 <dt><dfn id=attr-ul-compact title=attr-ul-compact><code>compact</code></dfn> on <code><a href=#the-ul-element>ul</a></code> elements</dt>
79041 <dt><dfn id=attr-ul-type title=attr-ul-type><code>type</code></dfn> on <code><a href=#the-ul-element>ul</a></code> elements</dt>
79042 <dt><dfn id=attr-background title=attr-background><code>background</code></dfn> on <code><a href=#the-body-element-0>body</a></code>, <code><a href=#the-table-element>table</a></code>, <code><a href=#the-thead-element>thead</a></code>, <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-tfoot-element>tfoot</a></code>, <code><a href=#the-tr-element>tr</a></code>, <code><a href=#the-td-element>td</a></code>, and <code><a href=#the-th-element>th</a></code> elements</dt>
79051 <p>The <code><a href=#the-applet-element>applet</a></code> element is a Java-specific variant of the
79052 <code><a href=#the-embed-element>embed</a></code> element. The <code><a href=#the-applet-element>applet</a></code> element is now
79057 <a href=#stack-of-open-elements>stack of open elements</a> of an <a href=#html-parser>HTML parser</a>
79058 or <a href=#xml-parser>XML parser</a>, and when the element is not <a href=#in-a-document>in a
79060 <a href=#fully-active>fully active</a>, and when the element's
79061 <code><a href=#document>Document</a></code>'s <a href=#browsing-context>browsing context</a> had its
79062 <a href=#sandboxed-plugins-browsing-context-flag>sandboxed plugins browsing context flag</a> when that
79063 <code><a href=#document>Document</a></code> was created, and when the element's
79064 <code><a href=#document>Document</a></code> was parsed from a resource whose <a href=#content-type-sniffing-0 title="Content-Type sniffing">sniffed type</a> as determined
79065 during <a href=#navigate title=navigate>navigation</a> is
79066 <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>, and when the element has an
79067 ancestor <a href=#media-element>media element</a>, and when the element has an
79068 ancestor <code><a href=#the-object-element>object</a></code> element that is <em>not</em> showing
79069 its <a href=#fallback-content>fallback content</a>, and when no Java Language runtime
79070 <a href=#plugin>plugin</a> is available, and when one <em>is</em> available
79071 but it is disabled, the element <a href=#represents>represents</a> its
79075 runtime <a href=#plugin>plugin</a>, and should pass the names and values of
79079 null, and then all the names and values of <a href=#concept-param-parameter title=concept-param-parameter>parameters</a> given by
79080 <code><a href=#the-param-element>param</a></code> elements that are children of the
79081 <code><a href=#the-applet-element>applet</a></code> element, in <a href=#tree-order>tree order</a>, to the
79082 <a href=#plugin>plugin</a> used. If the <a href=#plugin>plugin</a> supports a
79083 scriptable interface, the <code><a href=#htmlappletelement>HTMLAppletElement</a></code> object
79085 <code><a href=#the-applet-element>applet</a></code> element <a href=#represents>represents</a> the
79086 <a href=#plugin>plugin</a>.</p>
79092 <p class=note>The <code><a href=#the-applet-element>applet</a></code> element is unaffected by the
79096 <p>The <code><a href=#the-applet-element>applet</a></code> element must implement the
79097 <code><a href=#htmlappletelement>HTMLAppletElement</a></code> interface.</p>
79099 <pre class=idl>interface <dfn id=htmlappletelement>HTMLAppletElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79100 attribute DOMString <a href=#dom-applet-align title=dom-applet-align>align</a>;
79101 attribute DOMString <a href=#dom-applet-alt title=dom-applet-alt>alt</a>;
79102 attribute DOMString <a href=#dom-applet-archive title=dom-applet-archive>archive</a>;
79103 attribute DOMString <a href=#dom-applet-code title=dom-applet-code>code</a>;
79104 attribute DOMString <a href=#dom-applet-codebase title=dom-applet-codeBase>codeBase</a>;
79105 attribute DOMString <a href=#dom-applet-height title=dom-applet-height>height</a>;
79106 attribute unsigned long <a href=#dom-applet-hspace title=dom-applet-hspace>hspace</a>;
79107 attribute DOMString <a href=#dom-applet-name title=dom-applet-name>name</a>;
79108 attribute DOMString _<a href=#dom-applet-object title=dom-applet-object>object</a>; // the underscore is not part of the identifier <!-- it's a Web IDL escaping mechanism -->
79109 attribute unsigned long <a href=#dom-applet-vspace title=dom-applet-vspace>vspace</a>;
79110 attribute DOMString <a href=#dom-applet-width title=dom-applet-width>width</a>;
79114 must <a href=#reflect>reflect</a> the respective content attributes of the
79118 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-applet-codebase>codebase</code> content attribute.</p>
79123 <p>The <code><a href=#the-marquee-element>marquee</a></code> element is a presentational element that
79127 <p>The <a href=#task-source>task source</a> for tasks mentioned in this section
79128 is the <a href=#dom-manipulation-task-source>DOM manipulation task source</a>.</p>
79130 <p>The <code><a href=#the-marquee-element>marquee</a></code> element must implement the
79131 <code><a href=#htmlmarqueeelement>HTMLMarqueeElement</a></code> interface.</p>
79133 <pre class=idl>interface <dfn id=htmlmarqueeelement>HTMLMarqueeElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79134 attribute DOMString <a href=#dom-marquee-behavior title=dom-marquee-behavior>behavior</a>;
79135 attribute DOMString <a href=#dom-marquee-bgcolor title=dom-marquee-bgColor>bgColor</a>;
79136 attribute DOMString <a href=#dom-marquee-direction title=dom-marquee-direction>direction</a>;
79137 attribute DOMString <a href=#dom-marquee-height title=dom-marquee-height>height</a>;
79138 attribute unsigned long <a href=#dom-marquee-hspace title=dom-marquee-hspace>hspace</a>;
79139 attribute long <a href=#dom-marquee-loop title=dom-marquee-loop>loop</a>;
79140 attribute unsigned long <a href=#dom-marquee-scrollamount title=dom-marquee-scrollamount>scrollAmount</a>;
79141 attribute unsigned long <a href=#dom-marquee-scrolldelay title=dom-marquee-scrollDelay>scrollDelay</a>;
79142 attribute DOMString <a href=#dom-marquee-truespeed title=dom-marquee-trueSpeed>trueSpeed</a>;
79143 attribute unsigned long <a href=#dom-marquee-vspace title=dom-marquee-vspace>vspace</a>;
79144 attribute DOMString <a href=#dom-marquee-width title=dom-marquee-width>width</a>;
79146 attribute <a href=#function>Function</a> <a href=#handler-marquee-onbounce title=handler-marquee-onbounce>onbounce</a>;
79147 attribute <a href=#function>Function</a> <a href=#handler-marquee-onfinish title=handler-marquee-onfinish>onfinish</a>;
79148 attribute <a href=#function>Function</a> <a href=#handler-marquee-onstart title=handler-marquee-onstart>onstart</a>;
79150 void <a href=#dom-marquee-start title=dom-marquee-start>start</a>();
79151 void <a href=#dom-marquee-stop title=dom-marquee-stop>stop</a>();
79154 <p>A <code><a href=#the-marquee-element>marquee</a></code> element can be <dfn id=concept-marquee-on title=concept-marquee-on>turned on</dfn> or <dfn id=concept-marquee-off title=concept-marquee-off>turned off</dfn>. When it is created, it
79155 is <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>.</p>
79158 called, the <code><a href=#the-marquee-element>marquee</a></code> element must be <a href=#concept-marquee-on title=concept-marquee-on>turned on</a>.</p>
79161 method is called, the <code><a href=#the-marquee-element>marquee</a></code> element must be <a href=#concept-marquee-off title=concept-marquee-off>turned off</a>.</p>
79163 <p>When a <code><a href=#the-marquee-element>marquee</a></code> element is created, the user agent
79164 must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
79168 attribute on <code><a href=#the-marquee-element>marquee</a></code> elements is an <a href=#enumerated-attribute>enumerated
79180 </table><p>The <i>missing value default</i> is the <a href=#attr-marquee-behavior-scroll title=attr-marquee-behavior-scroll>scroll</a> state.</p>
79183 attribute on <code><a href=#the-marquee-element>marquee</a></code> elements is an <a href=#enumerated-attribute>enumerated
79197 </table><p>The <i>missing value default</i> is the <a href=#attr-marquee-direction-left title=attr-marquee-direction-left>left</a> state.</p>
79200 attribute on <code><a href=#the-marquee-element>marquee</a></code> elements is an <a href=#enumerated-attribute>enumerated
79210 </table><p>The <i>missing value default</i> is the <a href=#attr-marquee-truespeed-false title=attr-marquee-truespeed-false>false</a> state.</p>
79212 <hr><p>A <code><a href
79216 parsing its value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
79219 <li><p>If the element does not have a <code title=attr-marquee-truespeed><a href=#attr-marquee-truespeed>truespeed</a></code> attribute, or if it
79220 does but that attribute is in the <a href=#attr-marquee-truespeed-false title=attr-marquee-truespeed-false>false</a> state, and the
79223 <li><p>The <a href=#marquee-scroll-interval>marquee scroll interval</a> is <var title="">delay</var>, interpreted in milliseconds.</li>
79225 </ol><hr><p>A <code><a href=#the-marquee-element>marquee</a></code> element has a <dfn id=marquee-scroll-distance>marquee scroll
79227 parsing its value using the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
79231 <hr><p>A <code><a href=#the-marquee-element>marquee</a></code> element has a <dfn id=marquee-loop-count>marquee loop
79233 value using the <a href=#rules-for-parsing-integers>rules for parsing integers</a> does not
79238 attribute, on getting, must return the element's <a href=#marquee-loop-count>marquee loop
79240 element's <a href=#marquee-loop-count>marquee loop count</a> and either greater than
79242 if necessary) to the <a href=#valid-integer>valid integer</a> that represents the
79245 <p>A <code><a href=#the-marquee-element>marquee</a></code> element also has a <dfn id=marquee-current-loop-index>marquee current
79252 <ol><li><p>If the <a href=#marquee-loop-count>marquee loop count</a> is −1, then
79255 <li><p>Increment the <a href=#marquee-current-loop-index>marquee current loop index</a> by
79260 <p>If the <a href=#marquee-current-loop-index>marquee current loop index</a> is now equal to
79261 or greater than the element's <a href=#marquee-loop-count>marquee loop count</a>,
79262 <a href=#concept-marquee-off title=concept-marquee-off>turn off</a> the
79263 <code><a href=#the-marquee-element>marquee</a></code> element and <a href=#queue-a-task>queue a task</a> to
79264 <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-finish>finish</code> at the <code><a href=#the-marquee-element>marquee</a></code>
79267 <p>Otherwise, if the <code title=attr-marquee-behavior><a href=#attr-marquee-behavior>behavior</a></code> attribute is in the
79268 <a href=#attr-marquee-behavior-alternate title=attr-marquee-behavior-alternate>alternate</a>
79269 state, then <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
79271 the <code><a href=#the-marquee-element>marquee</a></code> element.</p>
79273 <p>Otherwise, <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple
79275 <code><a href=#the-marquee-element>marquee</a></code> element.</p>
79279 </ol><hr><p>The following are the <a href=#event-handlers>event handlers</a> (and their
79280 corresponding <a href=#event-handler-event-type title="event handler event type">event handler
79282 attributes, by <code><a href=#the-marquee-element>marquee</a></code> elements:</p>
79284 <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
79289 must <a href=#reflect>reflect</a> the respective content attributes of the
79293 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-marquee-bgcolor>bgcolor</code> content attribute.</p>
79296 IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-marquee-scrollamount>scrollamount</code> content
79300 attribute must <a href=#reflect>reflect</a> the <code title=attr-marquee-scrolldelay>scrolldelay</code> content
79304 attribute must <a href=#reflect>reflect</a> the <code title=attr-marquee-truespeed><a href=#attr-marquee-truespeed>truespeed</a></code> content
79310 <p>The <dfn id=frameset><code>frameset</code></dfn> element acts as <a href=#the-body-element>the
79313 <p>The <code><a href=#frameset>frameset</a></code> element must implement the
79314 <code><a href=#htmlframesetelement>HTMLFrameSetElement</a></code> interface.</p>
79316 <pre class=idl>interface <dfn id=htmlframesetelement>HTMLFrameSetElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79317 attribute DOMString <a href=#dom-frameset-cols title=dom-frameset-cols>cols</a>;
79318 attribute DOMString <a href=#dom-frameset-rows title=dom-frameset-rows>rows</a>;
79319 attribute <a href=#function>Function</a> <a href=#handler-window-onafterprint title=handler-window-onafterprint>onafterprint</a>;
79320 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeprint title=handler-window-onbeforeprint>onbeforeprint</a>;
79321 attribute <a href=#function>Function</a> <a href=#handler-window-onbeforeunload title=handler-window-onbeforeunload>onbeforeunload</a>;
79322 attribute <a href=#function>Function</a> <a href=#handler-window-onblur title=handler-window-onblur>onblur</a>;
79323 attribute <a href=#function>Function</a> <a href=#handler-window-onerror title=handler-window-onerror>onerror</a>;
79324 attribute <a href=#function>Function</a> <a href=#handler-window-onfocus title=handler-window-onfocus>onfocus</a>;
79325 attribute <a href=#function>Function</a> <a href=#handler-window-onhashchange title=handler-window-onhashchange>onhashchange</a>;
79326 attribute <a href=#function>Function</a> <a href=#handler-window-onload title=handler-window-onload>onload</a>;
79327 attribute <a href=#function>Function</a> <a href=#handler-window-onmessage title=handler-window-onmessage>onmessage</a>;
79328 attribute <a href=#function>Function</a> <a href=#handler-window-onoffline title=handler-window-onoffline>onoffline</a>;
79329 attribute <a href=#function>Function</a> <a href=#handler-window-ononline title=handler-window-ononline>ononline</a>;
79330 attribute <a href=#function>Function</a> <a href=#handler-window-onpagehide title=handler-window-onpagehide>onpagehide</a>;
79331 attribute <a href=#function>Function</a> <a href=#handler-window-onpageshow title=handler-window-onpageshow>onpageshow</a>;
79332 attribute <a href=#function>Function</a> <a href=#handler-window-onpopstate title=handler-window-onpopstate>onpopstate</a>;
79333 attribute <a href=#function>Function</a> <a href=#handler-window-onredo title=handler-window-onredo>onredo</a>;
79334 attribute <a href=#function>Function</a> <a href=#handler-window-onresize title=handler-window-onresize>onresize</a>;
79335 attribute <a href=#function>Function</a> <a href=#handler-window-onstorage title=handler-window-onstorage>onstorage</a>;
79336 attribute <a href=#function>Function</a> <a href=#handler-window-onundo title=handler-window-onundo>onundo</a>;
79337 attribute <a href=#function>Function</a> <a href=#handler-window-onunload title=handler-window-onunload>onunload</a>;
79342 attributes of the <code><a href=#frameset>frameset</a></code> element must
79343 <a href=#reflect>reflect</a> the respective content attributes of the same
79346 <p>The <code><a href=#frameset>frameset</a></code> element must support the following
79347 <a href=#event-handler-content-attributes>event handler content attributes</a> exposing the
79348 <a href=#event-handlers>event handlers</a> of the <code><a href=#window>Window</a></code> object:</p>
79350 <ul class=brief><li><code title=handler-window-onafterprint><a href=#handler-window-onafterprint>onafterprint</a></code></li>
79351 <li><code title=handler-window-onbeforeprint><a href=#handler-window-onbeforeprint>onbeforeprint</a></code></li>
79352 <li><code title=handler-window-onbeforeunload><a href=#handler-window-onbeforeunload>onbeforeunload</a></code></li>
79353 <li><code title=handler-window-onblur><a href=#handler-window-onblur>onblur</a></code></li>
79354 <li><code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code></li>
79355 <li><code title=handler-window-onfocus><a href=#handler-window-onfocus>onfocus</a></code></li>
79356 <li><code title=handler-window-onhashchange><a href=#handler-window-onhashchange>onhashchange</a></code></li>
79357 <li><code title=handler-window-onload><a href=#handler-window-onload>onload</a></code></li>
79358 <li><code title=handler-window-onmessage><a href=#handler-window-onmessage>onmessage</a></code></li>
79359 <li><code title=handler-window-onoffline><a href=#handler-window-onoffline>onoffline</a></code></li>
79360 <li><code title=handler-window-ononline><a href=#handler-window-ononline>ononline</a></code></li>
79361 <li><code title=handler-window-onpagehide><a href=#handler-window-onpagehide>onpagehide</a></code></li>
79362 <li><code title=handler-window-onpageshow><a href=#handler-window-onpageshow>onpageshow</a></code></li>
79363 <li><code title=handler-window-onpopstate><a href=#handler-window-onpopstate>onpopstate</a></code></li>
79364 <li><code title=handler-window-onredo><a href=#handler-window-onredo>onredo</a></code></li>
79365 <li><code title=handler-window-onresize><a href=#handler-window-onresize>onresize</a></code></li>
79366 <li><code title=handler-window-onstorage><a href=#handler-window-onstorage>onstorage</a></code></li>
79367 <li><code title=handler-window-onundo><a href=#handler-window-onundo>onundo</a></code></li>
79368 <li><code title=handler-window-onunload><a href=#handler-window-onunload>onunload</a></code></li>
79369 </ul><p>The DOM interface also exposes <a href=#event-handler-idl-attributes>event handler IDL
79370 attributes</a> that mirror those on the <code><a href=#window>Window</a></code>
79373 <p>The <code title=handler-window-onblur><a href=#handler-window-onblur>onblur</a></code>, <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code>, <code title=handler-window-onfocus><a href=#handler-window-onfocus>onfocus</a></code>, and <code title=handler-window-onload><a href=#handler-window-onload>onload</a></code> <a href=#event-handler-idl-attributes>event handler IDL
79374 attributes</a> of the <code><a href=#window>Window</a></code> object, exposed on the
79375 <code><a href=#frameset>frameset</a></code> element, shadow the generic <a href=#event-handler-idl-attributes>event
79377 by <a href=#html-elements>HTML elements</a>.</p>
79379 <hr><p>The <dfn id=frame><code>frame</code></dfn> element defines a <a href=#nested-browsing-context>nested
79380 browsing context</a> similar to the <code><a href=#the-iframe-element>iframe</a></code> element,
79381 but rendered within a <code><a href=#frameset>frameset</a></code> element.</p>
79384 agent must <a href=#resolve-a-url title="resolve a url">resolve</a> the value of
79386 must then <a href=#navigate>navigate</a> the element's browsing context to
79387 the resulting <a href=#absolute-url>absolute URL</a>, with <a href=#replacement-enabled>replacement
79388 enabled</a>, and with the <code><a href=#frame>frame</a></code> element's
79389 document's <a href=#browsing-context>browsing context</a> as the <a href=#source-browsing-context>source
79393 is set, the user agent must <a href=#resolve-a-url title="resolve a
79395 element, and if that is successful, the nested <a href=#browsing-context>browsing
79396 context</a> must be <a href=#navigate title=navigate>navigated</a> to
79397 the resulting <a href=#absolute-url>absolute URL</a>, with the
79398 <code><a href=#frame>frame</a></code> element's document's <a href=#browsing-context>browsing
79399 context</a> as the <a href=#source-browsing-context>source browsing context</a>.</p>
79402 <a href=#browsing-context-name>browsing context name</a> must be set to the value of this
79403 attribute; otherwise, the <a href=#browsing-context-name>browsing context name</a> must be
79407 is set, the nested <a href=#browsing-context>browsing context</a>'s <a href=#browsing-context-name title="browsing context name">name</a> must be changed to the new
79408 value. If the attribute is removed, the <a href=#browsing-context-name>browsing context
79411 <p>When content loads in a <code><a href=#frame>frame</a></code>, after any <code title=event-load>load</code> events are fired within the content
79412 itself, the user agent must <a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire
79414 the <code><a href=#frame>frame</a></code> element. When content fails to load (e.g. due
79415 href=#queue-a-task>queue a
79416 task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the element instead.</p>
79418 <p>The <a href=#task-source>task source</a> for the <a href=#concept-task title=concept-task>tasks</a> above is the <a href=#dom-manipulation-task-source>DOM
79421 <p>When there is an <a href=#active-parser>active parser</a> in the
79422 <code><a href=#frame>frame</a></code>, and when anything in the <code><a href=#frame>frame</a></code> is
79423 <a href=#delay-the-load-event title="delay the load event">delaying the load event</a> of
79424 the <code><a href=#frame>frame</a></code>'s <a href=#browsing-context>browsing context</a>'s
79425 <a href=#active-document>active document</a>, the <code><a href=#frame>frame</a></code> must
79426 <a href=#delay-the-load-event>delay the load event</a> of its document.</p>
79428 <p>The <code><a href=#frame>frame</a></code> element must implement the
79429 <code><a href=#htmlframeelement>HTMLFrameElement</a></code> interface.</p>
79431 <pre class=idl>interface <dfn id=htmlframeelement>HTMLFrameElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79432 attribute DOMString <a href=#dom-frame-frameborder title=dom-frame-frameBorder>frameBorder</a>;
79433 attribute DOMString <a href=#dom-frame-longdesc title=dom-frame-longDesc>longDesc</a>;
79434 attribute DOMString <a href=#dom-frame-marginheight title=dom-frame-marginHeight>marginHeight</a>;
79435 attribute DOMString <a href=#dom-frame-marginwidth title=dom-frame-marginWidth>marginWidth</a>;
79436 attribute DOMString <a href=#dom-frame-name title=dom-frame-name>name</a>;
79437 attribute boolean <a href=#dom-frame-noresize title=dom-frame-noResize>noResize</a>;
79438 attribute DOMString <a href=#dom-frame-scrolling title=dom-frame-scrolling>scrolling</a>;
79439 attribute DOMString <a href=#dom-frame-src title=dom-frame-src>src</a>;
79440 readonly attribute Document <a href=#dom-frame-contentdocument title=dom-frame-contentDocument>contentDocument</a>;
79444 <code><a href=#frame>frame</a></code> element must <a href=#reflect>reflect</a> the respective
79448 attribute of the <code><a href=#frame>frame</a></code> element must
79449 <a href=#reflect>reflect</a> the element's <code title=attr-frame-frameborder>frameborder</code> content
79453 IDL attribute of the <code><a href=#frame>frame</a></code> element must
79454 <a href=#reflect>reflect</a> the element's <code title=attr-frame-longdesc>longdesc</code> content attribute.</p>
79457 attribute of the <code><a href=#frame>frame</a></code> element must
79458 <a href=#reflect>reflect</a> the element's <code title=attr-frame-marginheight>marginheight</code> content
79462 attribute of the <code><a href=#frame>frame</a></code> element must
79463 <a href=#reflect>reflect</a> the element's <code title=attr-frame-marginwidth>marginwidth</code> content
79467 IDL attribute of the <code><a href=#frame>frame</a></code> element must
79468 <a href=#reflect>reflect</a> the element's <code title=attr-frame-noresize>noresize</code> content attribute.</p>
79471 IDL attribute of the <code><a href=#frame>frame</a></code> element must return the
79472 <code><a href=#document>Document</a></code> object of the <a href=#active-document>active document</a> of
79473 the <code><a href=#frame>frame</a></code> element's <a href=#nested-browsing-context>nested browsing
79480 <p>User agents must treat <code><a href=#acronym>acronym</a></code> elements in a manner
79481 equivalent to <code><a href=#the-abbr-element>abbr</a></code> elements.</p>
79484 interface <a href=#htmlanchorelement>HTMLAnchorElement</a> {
79485 attribute DOMString <a href=#dom-a-coords title=dom-a-coords>coords</a>;
79486 attribute DOMString <a href=#dom-a-charset title=dom-a-charset>charset</a>;
79487 attribute DOMString <a href=#dom-a-name title=dom-a-name>name</a>;
79488 attribute DOMString <a href=#dom-a-rev title=dom-a-rev>rev</a>;
79489 attribute DOMString <a href=#dom-a-shape title=dom-a-shape>shape</a>;
79493 <code><a href=#the-a-element>a</a></code> element must <a href=#reflect>reflect</a> the respective
79497 interface <a href=#htmlareaelement>HTMLAreaElement</a> {
79498 attribute boolean <a href=#dom-area-nohref title=dom-area-noHref>noHref</a>;
79502 attribute of the <code><a href=#the-area-element>area</a></code> element must <a href=#reflect>reflect</a>
79503 the element's <code title=attr-area-nohref><a href=#attr-area-nohref>nohref</a></code> content
79506 <hr><p>The <code><a href=#basefont>basefont</a></code> element must implement the
79507 <code><a href=#htmlbasefontelement>HTMLBaseFontElement</a></code> interface.</p>
79509 <pre class=idl>interface <dfn id=htmlbasefontelement>HTMLBaseFontElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79510 attribute DOMString <a href=#dom-basefont-color title=dom-basefont-color>color</a>;
79511 attribute DOMString <a href=#dom-basefont-face title=dom-basefont-face>face</a>;
79512 attribute long <a href=#dom-basefont-size title=dom-basefont-size>size</a>; <!-- yes, long, not DOMString (so says DOM2 HTML) -->
79517 the <code><a href=#basefont>basefont</a></code> element must <a href=#reflect>reflect</a> the
79521 interface <a href=#htmlbodyelement>HTMLBodyElement</a> {
79522 attribute DOMString <a href=#dom-body-text title=dom-body-text>text</a>;
79523 attribute DOMString <a href=#dom-body-bgcolor title=dom-body-bgColor>bgColor</a>;
79524 attribute DOMString <a href=#dom-body-background title=dom-body-background>background</a>;
79525 attribute DOMString <a href=#dom-body-link title=dom-body-link>link</a>;
79526 attribute DOMString <a href=#dom-body-vlink title=dom-body-vLink>vLink</a>;
79527 attribute DOMString <a href=#dom-body-alink title=dom-body-aLink>aLink</a>;
79531 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79532 the element's <code title=attr-body-text><a href=#attr-body-text>text</a></code> content
79536 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79537 the element's <code title=attr-body-bgcolor><a href=#attr-body-bgcolor>bgcolor</a></code> content
79541 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79542 the element's <code title=attr-background><a href=#attr-background>background</a></code>
79543 content attribute. (The <code title=attr-background><a href=#attr-background>background</a></code> content is <em>not</em>
79544 defined to contain a <a href=#url>URL</a>, despite rules regarding its
79548 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79549 the element's <code title=attr-body-link><a href=#attr-body-link>link</a></code> content
79553 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79554 the element's <code title=attr-body-alink><a href=#attr-body-alink>alink</a></code> content
79558 attribute of the <code><a href=#the-body-element-0>body</a></code> element must <a href=#reflect>reflect</a>
79559 the element's <code title=attr-body-vlink><a href=#attr-body-vlink>vlink</a></code> content
79563 interface <a href=#htmlbrelement>HTMLBRElement</a> {
79564 attribute DOMString <a href=#dom-br-clear title=dom-br-clear>clear</a>;
79568 attribute of the <code><a href=#the-br-element>br</a></code> element must <a href=#reflect>reflect</a>
79572 interface <a href=#htmltablecaptionelement>HTMLTableCaptionElement</a> {
79573 attribute DOMString <a href=#dom-caption-align title=dom-caption-align>align</a>;
79577 attribute of the <code><a href=#the-caption-element>caption</a></code> element must
79578 <a href=#reflect>reflect</a> the content attribute of the same name.</p>
79581 interface <a href=#htmltablecolelement>HTMLTableColElement</a> {
79582 attribute DOMString <a href=#dom-col-align title=dom-col-align>align</a>;
79583 attribute DOMString <a href=#dom-col-ch title=dom-col-ch>ch</a>;
79584 attribute DOMString <a href=#dom-col-choff title=dom-col-chOff>chOff</a>;
79585 attribute DOMString <a href=#dom-col-valign title=dom-col-vAlign>vAlign</a>;
79586 attribute DOMString <a href=#dom-col-width title=dom-col-width>width</a>;
79590 the <code><a href=#the-col-element>col</a></code> element must <a href=#reflect>reflect</a> the
79594 of the <code><a href=#the-col-element>col</a></code> element must <a href=#reflect>reflect</a> the
79595 element's <code title=attr-col-char><a href=#attr-col-char>char</a></code> content
79599 attribute of the <code><a href=#the-col-element>col</a></code> element must <a href=#reflect>reflect</a>
79600 the element's <code title=attr-col-charoff><a href=#attr-col-charoff>charoff</a></code> content
79604 attribute of the <code><a href=#the-col-element>col</a></code> element must <a href=#reflect>reflect</a>
79605 the element's <code title=attr-col-valign><a href=#attr-col-valign>valign</a></code> content
79608 <hr><p>User agents must treat <code><a href=#dir>dir</a></code> elements in a manner
79609 equivalent to <code><a href=#the-ul-element>ul</a></code> elements.</p>
79611 <p>The <code><a href=#dir>dir</a></code> element must implement the
79612 <code><a href=#htmldirectoryelement>HTMLDirectoryElement</a></code> interface.</p>
79614 <pre class=idl>interface <dfn id=htmldirectoryelement>HTMLDirectoryElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79615 attribute boolean <a href=#dom-dir-compact title=dom-dir-compact>compact</a>;
79619 attribute of the <code><a href=#dir>dir</a></code> element must <a href=#reflect>reflect</a>
79623 interface <a href=#htmldivelement>HTMLDivElement</a> {
79624 attribute DOMString <a href=#dom-div-align title=dom-div-align>align</a>;
79628 attribute of the <code><a href=#the-div-element>div</a></code> element must <a href=#reflect>reflect</a>
79632 interface <a href=#htmldlistelement>HTMLDListElement</a> {
79633 attribute boolean <a href=#dom-dl-compact title=dom-dl-compact>compact</a>;
79637 attribute of the <code><a href=#the-dl-element>dl</a></code> element must <a href=#reflect>reflect</a>
79641 interface <a href=#htmlembedelement>HTMLEmbedElement</a> {
79642 attribute DOMString <a href=#dom-embed-align title=dom-embed-align>align</a>;
79643 attribute DOMString <a href=#dom-embed-name title=dom-embed-name>name</a>;
79647 the <code><a href=#the-embed-element>embed</a></code> element must <a href=#reflect>reflect</a> the
79650 <hr><p>The <code><a href=#font>font</a></code> element must implement the
79651 <code><a href=#htmlfontelement>HTMLFontElement</a></code> interface.</p>
79653 <pre class=idl>interface <dfn id=htmlfontelement>HTMLFontElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
79654 attribute DOMString <a href=#dom-font-color title=dom-font-color>color</a>;
79655 attribute DOMString <a href=#dom-font-face title=dom-font-face>face</a>;
79656 attribute DOMString <a href=#dom-font-size title=dom-font-size>size</a>; <!-- yes, DOMString, not long (so says DOM2 HTML) -->
79661 the <code><a href=#font>font</a></code> element must <a href=#reflect>reflect</a> the
79665 interface <a href=#htmlheadingelement>HTMLHeadingElement</a> {
79666 attribute DOMString <a href=#dom-hx-align title=dom-hx-align>align</a>;
79670 attribute of the <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>–<code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code> elements must
79671 <a href=#reflect>reflect</a> the content attribute of the same name.</p>
79674 <code><a href=#the-head-element-0>head</a></code> elements (with the <code><a href=#htmlheadelement>HTMLHeadElement</a></code>
79675 interface) is intentionally omitted. Unless so required by <a href=#other-applicable-specifications title="other applicable specifications">another applicable
79681 interface <a href=#htmlhrelement>HTMLHRElement</a> {
79682 attribute DOMString <a href=#dom-hr-align title=dom-hr-align>align</a>;
79683 attribute DOMString <a href=#dom-hr-color title=dom-hr-color>color</a>;
79684 attribute boolean <a href=#dom-hr-noshade title=dom-hr-noShade>noShade</a>;
79685 attribute DOMString <a href=#dom-hr-size title=dom-hr-size>size</a>;
79686 attribute DOMString <a href=#dom-hr-width title=dom-hr-width>width</a>;
79690 <code><a href=#the-hr-element>hr</a></code> element must <a href=#reflect>reflect</a> the respective
79694 attribute of the <code><a href=#the-hr-element>hr</a></code> element must <a href=#reflect>reflect</a>
79699 interface <a href=#htmlhtmlelement>HTMLHtmlElement</a> {
79700 attribute DOMString <a href=#dom-html-version title=dom-html-version>version</a>;
79704 attribute of the <code><a href=#the-html-element-0>html</a></code> element must <a href=#reflect>reflect</a>
79708 interface <a href=#htmliframeelement>HTMLIFrameElement</a> {
79709 attribute DOMString <a href=#dom-iframe-align title=dom-iframe-align>align</a>;
79710 attribute DOMString <a href=#dom-iframe-frameborder title=dom-iframe-frameBorder>frameBorder</a>;
79711 attribute DOMString <a href=#dom-iframe-longdesc title=dom-iframe-longDesc>longDesc</a>;
79712 attribute DOMString <a href=#dom-iframe-marginheight title=dom-iframe-marginHeight>marginHeight</a>;
79713 attribute DOMString <a href=#dom-iframe-marginwidth title=dom-iframe-marginWidth>marginWidth</a>;
79714 attribute DOMString <a href=#dom-iframe-scrolling title=dom-iframe-scrolling>scrolling</a>;
79719 attributes of the <code><a href=#the-iframe-element>iframe</a></code> element must
79720 <a href=#reflect>reflect</a> the respective content attributes of the same
79724 attribute of the <code><a href=#the-iframe-element>iframe</a></code> element must
79725 <a href=#reflect>reflect</a> the element's <code title=attr-iframe-frameborder><a href=#attr-iframe-frameborder>frameborder</a></code> content
79729 IDL attribute of the <code><a href=#the-iframe-element>iframe</a></code> element must
79730 <a href=#reflect>reflect</a> the element's <code title=attr-iframe-longdesc><a href=#attr-iframe-longdesc>longdesc</a></code> content attribute.</p>
79733 attribute of the <code><a href=#the-iframe-element>iframe</a></code> element must
79734 <a href=#reflect>reflect</a> the element's <code title=attr-iframe-marginheight><a href=#attr-iframe-marginheight>marginheight</a></code> content
79738 attribute of the <code><a href=#the-iframe-element>iframe</a></code> element must
79739 <a href=#reflect>reflect</a> the element's <code title=attr-iframe-marginwidth><a href=#attr-iframe-marginwidth>marginwidth</a></code> content
79743 interface <a href=#htmlimageelement>HTMLImageElement</a> {
79744 attribute DOMString <a href=#dom-img-name title=dom-img-name>name</a>;
79745 attribute DOMString <a href=#dom-img-align title=dom-img-align>align</a>;
79746 attribute DOMString <a href=#dom-img-border title=dom-img-border>border</a>;
79747 attribute unsigned long <a href=#dom-img-hspace title=dom-img-hspace>hspace</a>;
79748 attribute DOMString <a href=#dom-img-longdesc title=dom-img-longDesc>longDesc</a>;
79749 attribute unsigned long <a href=#dom-img-vspace title=dom-img-vspace>vspace</a>;
79753 the <code><a href=#the-img-element>img</a></code> element must <a href=#reflect>reflect</a> the
79757 attribute of the <code><a href=#the-img-element>img</a></code> element must <a href=#reflect>reflect</a>
79758 the element's <code title=attr-img-longdesc><a href=#attr-img-longdesc>longdesc</a></code> content
79762 interface <a href=#htmlinputelement>HTMLInputElement</a> {
79763 attribute DOMString <a href=#dom-input-align title=dom-input-align>align</a>;
79764 attribute DOMString <a href=#dom-input-usemap title=dom-input-useMap>useMap</a>;
79768 attribute of the <code><a href=#the-input-element>input</a></code> element must <a href=#reflect>reflect</a>
79772 attribute of the <code><a href=#the-input-element>input</a></code> element must
79773 <a href=#reflect>reflect</a> the element's <code title=attr-input-usemap><a href=#attr-input-usemap>usemap</a></code> content attribute.</p>
79776 interface <a href=#htmllegendelement>HTMLLegendElement</a> {
79777 attribute DOMString <a href=#dom-legend-align title=dom-legend-align>align</a>;
79781 attribute of the <code><a href=#the-legend-element>legend</a></code> element must <a href=#reflect>reflect</a>
79785 interface <a href=#htmllielement>HTMLLIElement</a> {
79786 attribute DOMString <a href=#dom-li-type title=dom-li-type>type</a>;
79790 attribute of the <code><a href=#the-li-element>li</a></code> element must <a href=#reflect>reflect</a>
79794 interface <a href=#htmllinkelement>HTMLLinkElement</a> {
79795 attribute DOMString <a href=#dom-link-charset title=dom-link-charset>charset</a>;
79796 attribute DOMString <a href=#dom-link-rev title=dom-link-rev>rev</a>;
79797 attribute DOMString <a href=#dom-link-target title=dom-link-target>target</a>;
79802 the <code><a href=#the-link-element>link</a></code> element must <a href=#reflect>reflect</a> the
79805 <hr><p>User agents must treat <code><a href=#listing>listing</a></code> elements in a manner
79806 equivalent to <code><a href=#the-pre-element>pre</a></code> elements.</p>
79809 interface <a href=#htmlmenuelement>HTMLMenuElement</a> {
79810 attribute boolean <a href=#dom-menu-compact title=dom-menu-compact>compact</a>;
79814 attribute of the <code><a href=#menus>menu</a></code> element must <a href=#reflect>reflect</a>
79818 interface <a href=#htmlmetaelement>HTMLMetaElement</a> {
79819 attribute DOMString <a href=#dom-meta-scheme title=dom-meta-scheme>scheme</a>;
79822 <p>User agents may treat the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> content attribute on the
79823 <code><a href=#meta>meta</a></code> element as an extension of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> content attribute when processing
79824 a <code><a href=#meta>meta</a></code> element with a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute whose value is one that
79825 the user agent recognizes as supporting the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> attribute.</p>
79827 <p>User agents are encouraged to ignore the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> attribute and instead process
79829 each expected value of the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> attribute.</p>
79833 <p>For example, if the user agent acts on <code><a href=#meta>meta</a></code>
79834 elements with <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attributes
79835 having the value "eGMS.subject.keyword", and knows that the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> attribute is used with this
79836 metadata name, then it could take the <code title=attr-meta-scheme><a href=#attr-meta-scheme>scheme</a></code> attribute into account,
79837 acting as if it was an extension of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute. Thus the following
79838 two <code><a href=#meta>meta</a></code> elements could be treated as two elements
79857 attribute of the <code><a href=#meta>meta</a></code> element must <a href=#reflect>reflect</a>
79861 interface <a href=#htmlobjectelement>HTMLObjectElement</a> {
79862 attribute DOMString <a href=#dom-object-align title=dom-object-align>align</a>;
79863 attribute DOMString <a href=#dom-object-archive title=dom-object-archive>archive</a>;
79864 attribute DOMString <a href=#dom-object-border title=dom-object-border>border</a>;
79865 attribute DOMString <a href=#dom-object-code title=dom-object-code>code</a>;
79866 attribute DOMString <a href=#dom-object-codebase title=dom-object-codeBase>codeBase</a>;
79867 attribute DOMString <a href=#dom-object-codetype title=dom-object-codeType>codeType</a>;
79868 attribute boolean <a href=#dom-object-declare title=dom-object-declare>declare</a>;
79869 attribute unsigned long <a href=#dom-object-hspace title=dom-object-hspace>hspace</a>;
79870 attribute DOMString <a href=#dom-object-standby title=dom-object-standby>standby</a>;
79871 attribute unsigned long <a href=#dom-object-vspace title=dom-object-vspace>vspace</a>;
79875 of the <code><a href=#the-object-element>object</a></code> element must <a href=#reflect>reflect</a> the
79879 attribute of the <code><a href=#the-object-element>object</a></code> element must <a href=#reflect>reflect</a>
79880 the element's <code title=attr-object-codebase><a href=#attr-object-codebase>codebase</a></code> content
79884 attribute of the <code><a href=#the-object-element>object</a></code> element must <a href=#reflect>reflect</a>
79885 the element's <code title=attr-object-codetype><a href=#attr-object-codetype>codetype</a></code> content
79889 interface <a href=#htmlolistelement>HTMLOListElement</a> {
79890 attribute boolean <a href=#dom-ol-compact title=dom-ol-compact>compact</a>;
79891 attribute DOMString <a href=#dom-ol-type title=dom-ol-type>type</a>;
79896 the <code><a href=#the-ol-element>ol</a></code> element must <a href=#reflect>reflect</a> the respective
79900 interface <a href=#htmlparagraphelement>HTMLParagraphElement</a> {
79901 attribute DOMString <a href=#dom-p-align title=dom-p-align>align</a>;
79905 attribute of the <code><a href=#the-p-element>p</a></code> element must <a href=#reflect>reflect</a>
79909 interface <a href=#htmlparamelement>HTMLParamElement</a> {
79910 attribute DOMString <a href=#dom-param-type title=dom-param-type>type</a>;
79911 attribute DOMString <a href=#dom-param-valuetype title=dom-param-valueType>valueType</a>;
79915 attribute of the <code><a href=#the-param-element>param</a></code> element must
79916 <a href=#reflect>reflect</a> the content attribute of the same name.</p>
79919 IDL attribute of the <code><a href=#the-param-element>param</a></code> element must
79920 <a href=#reflect>reflect</a> the element's <code title=attr-param-valuetype><a href
79922 <hr><p>User agents must treat <code><a href=#plaintext>plaintext</a></code> elements in a
79923 manner equivalent to <code><a href=#the-pre-element>pre</a></code> elements.</p>
79926 interface <a href=#htmlpreelement>HTMLPreElement</a> {
79927 attribute unsigned long <a href=#dom-pre-width title=dom-pre-width>width</a>;
79931 attribute of the <code><a href=#the-pre-element>pre</a></code> element must <a href=#reflect>reflect</a>
79935 interface <a href=#htmlscriptelement>HTMLScriptElement</a> {
79936 attribute DOMString <a href=#dom-script-event title=dom-script-event>event</a>;
79937 attribute DOMString <a href=#dom-script-htmlfor title=dom-script-htmlFor>htmlFor</a>;
79942 attributes of the <code><a href=#script>script</a></code> element must return the empty
79946 interface <a href=#htmltableelement>HTMLTableElement</a> {
79947 attribute DOMString <a href=#dom-table-align title=dom-table-align>align</a>;
79948 attribute DOMString <a href=#dom-table-bgcolor title=dom-table-bgColor>bgColor</a>;
79949 attribute DOMString <a href=#dom-table-border title=dom-table-border>border</a>;
79950 attribute DOMString <a href=#dom-table-cellpadding title=dom-table-cellPadding>cellPadding</a>;
79951 attribute DOMString <a href=#dom-table-cellspacing title=dom-table-cellSpacing>cellSpacing</a>;
79952 attribute DOMString <a href=#dom-table-frame title=dom-table-frame>frame</a>;
79953 attribute DOMString <a href=#dom-table-rules title=dom-table-rules>rules</a>;
79954 attribute DOMString <a href=#dom-table-width title=dom-table-width>width</a>;
79958 the <code><a href=#the-table-element>table</a></code> element must <a href=#reflect>reflect</a> the
79962 attribute of the <code><a href=#the-table-element>table</a></code> element must <a href=#reflect>reflect</a>
79963 the element's <code title=attr-table-bgcolor><a href=#attr-table-bgcolor>bgcolor</a></code> content
79967 attribute of the <code><a href=#the-table-element>table</a></code> element must <a href=#reflect>reflect</a>
79968 the element's <code title=attr-table-cellpadding><a href=#attr-table-cellpadding>cellpadding</a></code> content
79972 attribute of the <code><a href=#the-table-element>table</a></code> element must <a href=#reflect>reflect</a>
79973 the element's <code title=attr-table-cellspacing><a href=#attr-table-cellspacing>cellspacing</a></code> content
79977 interface <a href=#htmltablesectionelement>HTMLTableSectionElement</a> {
79978 attribute DOMString <a href=#dom-tbody-align title=dom-tbody-align>align</a>;
79979 attribute DOMString <a href=#dom-tbody-ch title=dom-tbody-ch>ch</a>;
79980 attribute DOMString <a href=#dom-tbody-choff title=dom-tbody-chOff>chOff</a>;
79981 attribute DOMString <a href=#dom-tbody-valign title=dom-tbody-vAlign>vAlign</a>;
79985 attribute of the <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and
79986 <code><a href=#the-tfoot-element>tfoot</a></code> elements must <a href=#reflect>reflect</a> the content
79990 of the <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and
79991 <code><a href=#the-tfoot-element>tfoot</a></code> elements must <a href=#reflect>reflect</a> the elements'
79992 <code title=attr-tbody-char><a href=#attr-tbody-char>char</a></code> content attributes.</p>
79995 attribute of the <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and
79996 <code><a href=#the-tfoot-element>tfoot</a></code> elements must <a href=#reflect>reflect</a> the elements'
79997 <code title=attr-tbody-charoff><a href=#attr-tbody-charoff>charoff</a></code> content attributes.</p>
80000 attribute of the <code><a href=#the-tbody-element>tbody</a></code>, <code><a href=#the-thead-element>thead</a></code>, and
80001 <code><a href=#the-tfoot-element>tfoot</a></code> element must <a href=#reflect>reflect</a> the elements'
80002 <code title=attr-tbody-valign><a href=#attr-tbody-valign>valign</a></code> content
80006 interface <a href=#htmltablecellelement>HTMLTableCellElement</a> {
80007 attribute DOMString <a href=#dom-tdth-abbr title=dom-tdth-abbr>abbr</a>;
80008 attribute DOMString <a href=#dom-tdth-align title=dom-tdth-align>align</a>;
80009 attribute DOMString <a href=#dom-tdth-axis title=dom-tdth-axis>axis</a>;
80010 attribute DOMString <a href=#dom-tdth-bgcolor title=dom-tdth-bgColor>bgColor</a>;
80011 attribute DOMString <a href=#dom-tdth-ch title=dom-tdth-ch>ch</a>;
80012 attribute DOMString <a href=#dom-tdth-choff title=dom-tdth-chOff>chOff</a>;
80013 attribute DOMString <a href=#dom-tdth-height title=dom-tdth-height>height</a>;
80014 attribute boolean <a href=#dom-tdth-nowrap title=dom-tdth-noWrap>noWrap</a>;
80015 attribute DOMString <a href=#dom-tdth-valign title=dom-tdth-vAlign>vAlign</a>;
80016 attribute DOMString <a href=#dom-tdth-width title=dom-tdth-width>width</a>;
80020 the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements must
80021 <a href=#reflect>reflect</a> the respective content attributes of the same
80025 attribute of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements must
80026 <a href=#reflect>reflect</a> the elements' <code title=attr-tdth-bgcolor><a href=#attr-tdth-bgcolor>bgcolor</a></code> content attributes.</p>
80029 attribute of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements must
80030 <a href=#reflect>reflect</a> the elements' <code title=attr-tdth-char><a href=#attr-tdth-char>char</a></code> content attributes.</p>
80033 attribute of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements must
80034 <a href=#reflect>reflect</a> the elements' <code title=attr-tdth-charoff><a href=#attr-tdth-charoff>charoff</a></code> content attributes.</p>
80037 attribute of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> elements must
80038 <a href=#reflect>reflect</a> the elements' <code title=attr-tdth-nowrap><a href=#attr-tdth-nowrap>nowrap</a></code> content attributes.</p>
80041 attribute of the <code><a href=#the-td-element>td</a></code> and <code><a href=#the-th-element>th</a></code> element must
80042 <a href=#reflect>reflect</a> the elements' <code title=attr-tdth-valign><a href=#attr-tdth-valign>valign</a></code> content attributes.</p>
80045 interface <a href=#htmltablerowelement>HTMLTableRowElement</a> {
80046 attribute DOMString <a href=#dom-tr-align title=dom-tr-align>align</a>;
80047 attribute DOMString <a href=#dom-tr-bgcolor title=dom-tr-bgColor>bgColor</a>;
80048 attribute DOMString <a href=#dom-tr-ch title=dom-tr-ch>ch</a>;
80049 attribute DOMString <a href=#dom-tr-choff title=dom-tr-chOff>chOff</a>;
80050 attribute DOMString <a href=#dom-tr-valign title=dom-tr-vAlign>vAlign</a>;
80054 attribute of the <code><a href=#the-tr-element>tr</a></code> element must <a href=#reflect>reflect</a>
80058 attribute of the <code><a href=#the-tr-element>tr</a></code> element must <a href=#reflect>reflect</a>
80059 the element's <code title=attr-tr-bgcolor><a href=#attr-tr-bgcolor>bgcolor</a></code> content
80063 the <code><a href=#the-tr-element>tr</a></code> element must <a href=#reflect>reflect</a> the element's
80064 <code title=attr-tr-char><a href=#attr-tr-char>char</a></code> content attribute.</p>
80067 attribute of the <code><a href=#the-tr-element>tr</a></code> element must <a href=#reflect>reflect</a>
80068 the element's <code title=attr-tr-charoff><a href=#attr-tr-charoff>charoff</a></code> content
80072 attribute of the <code><a href=#the-tr-element>tr</a></code> element must <a href=#reflect>reflect</a>
80073 the element's <code title=attr-tr-valign><a href=#attr-tr-valign>valign</a></code> content
80077 interface <a href=#htmlulistelement>HTMLUListElement</a> {
80078 attribute boolean <a href=#dom-ul-compact title=dom-ul-compact>compact</a>;
80079 attribute DOMString <a href=#dom-ul-type title=dom-ul-type>type</a>;
80084 the <code><a href=#the-ul-element>ul</a></code> element must <a href=#reflect>reflect</a> the respective
80087 <hr><p>User agents must treat <code><a href=#xmp>xmp</a></code> elements in a manner
80088 equivalent to <code><a href=#the-pre-element>pre</a></code> elements.</p>
80090 <hr><p>The <code><a href=#bgsound>bgsound</a></code>, <code><a href=#isindex-0>isindex</a></code>,
80091 <code><a href=#multicol>multicol</a></code>, <code><a href=#nextid>nextid</a></code>, <code><a href=#rb>rb</a></code>, and
80092 <code><a href=#spacer>spacer</a></code> elements must use the
80093 <code><a href=#htmlunknownelement>HTMLUnknownElement</a></code> interface.</p> <!-- has to be
80099 interface <a href=#htmldocument>HTMLDocument</a> {
80100 attribute DOMString <a href=#dom-document-fgcolor title=dom-document-fgColor>fgColor</a>;
80101 attribute DOMString <a href=#dom-document-bgcolor title=dom-document-bgColor>bgColor</a>;
80102 attribute DOMString <a href=#dom-document-linkcolor title=dom-document-linkColor>linkColor</a>;
80103 attribute DOMString <a href=#dom-document-vlinkcolor title=dom-document-vlinkColor>vlinkColor</a>;
80104 attribute DOMString <a href=#dom-document-alinkcolor title=dom-document-alinkColor>alinkColor</a>;
80106 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-anchors title=dom-document-anchors>anchors</a>;
80107 readonly attribute <a href=#htmlcollection>HTMLCollection</a> <a href=#dom-document-applets title=dom-document-applets>applets</a>;
80109 void <a href=#dom-document-clear title=dom-document-clear>clear</a>();
80111 readonly attribute <a href=#htmlallcollection>HTMLAllCollection</a> <a href=#dom-document-all title=dom-document-all>all</a>;
80114 <p>The attributes of the <code><a href=#document>Document</a></code> object listed in the
80115 first column of the following table must <a href=#reflect>reflect</a> the
80116 content attribute on <a href=#the-body-element>the body element</a> with the name
80118 row, if <a href=#the-body-element>the body element</a> is a <code><a href=#the-body-element-0>body</a></code> element
80119 (as opposed to a <code><a href=#frameset>frameset</a></code> element). When there is no
80120 <a href=#the-body-element title="the body element">body element</a> or if it is a
80121 <code><a href=#frameset>frameset</a></code> element, the attributes must instead return
80127 <td><code title=attr-body-text><a href=#attr-body-text>text</a></code>
80129 <td><code title=attr-body-bgcolor><a href=#attr-body-bgcolor>bgcolor</a></code>
80131 <td><code title=attr-body-link><a href=#attr-body-link>link</a></code>
80133 <td><code title=attr-body-vlink><a href=#attr-body-vlink>vlink</a></code>
80135 <td><code title=attr-body-alink><a href=#attr-body-alink>alink</a></code>
80137 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
80138 <code><a href=#document>Document</a></code> node, whose filter matches only <code><a href=#the-a-element>a</a></code>
80139 elements with <code title=attr-a-name><a href=#attr-a-name>name</a></code>
80143 attribute must return an <code><a href=#htmlcollection>HTMLCollection</a></code> rooted at the
80144 <code><a href=#document>Document</a></code> node, whose filter matches only
80145 <code><a href=#the-applet-element>applet</a></code> elements.</p>
80151 attribute must return an <code><a href=#htmlallcollection>HTMLAllCollection</a></code> rooted at the
80152 <code><a href=#document>Document</a></code> node, whose filter matches all elements.</p>
80154 <p>The object returned for <code title=dom-document-all><a href=#dom-document-all>all</a></code>
80158 JavaScript converts the object returned for <code title=dom-document-all><a href=#dom-document-all>all</a></code> to the false value.</li>
80161 JavaScript, the object returned for <code title=dom-document-all><a href=#dom-document-all>all</a></code> is equal to the <code title="">undefined</code> value.</li>
80165 for <code title=dom-document-all><a href=#dom-document-all>all</a></code>.</li>
80167 </ul><p class=note>These requirements are a <a href=#willful-violation>willful
80175 presence of <code title=dom-document-all><a href=#dom-document-all>document.all</a></code> as a
80177 legacy user agents and uses the <code title=dom-document-all><a href=#dom-document-all>document.all</a></code> object without testing
80178 for its presence first. <a href=#refsECMA262>[ECMA262]</a></p>
80219 to definitively specify the <a href="#document's-character-encoding">document's character
80220 encoding</a>, overriding any <a href=#character-encoding-declaration title="character encoding
80224 character encoding name, and must be an <a href=#ascii-case-insensitive>ASCII
80225 case-insensitive</a> match for the <a href=#preferred-mime-name>preferred MIME
80226 name</a> for that encoding. <a href=#refsIANACHARSET>[IANACHARSET]</a></p>
80230 <dd>See the section on <a href=#character-encoding-declaration title="character encoding
80252 unfortunate security problems. In particular, the <code><a href=#the-img-element>img</a></code>
80259 the <i>same-origin policy</i>. An <a href=#origin>origin</a> in most
80265 <a href=#origin>origin</a> than any sensitive content on that site.
80282 with the <code><a href=#text/html>text/html</a></code> type asserts that the resource is
80283 an <a href=#html-documents title="HTML documents">HTML document</a> using
80284 <a href=#syntax>the HTML syntax</a>.
80296 available in the Content-Type Processing Model specification. <a href=#refsMIMESNIFF>[MIMESNIFF]</a></dd>
80314 </dl><p>Fragment identifiers used with <code><a href=#text/html>text/html</a></code> resources
80315 refer to <a href=#the-indicated-part-of-the-document>the indicated part of the document</a>.</p>
80335 <dd>Same as for <code><a href=#text/html>text/html</a></code></dd>
80337 <dd>Same as for <code><a href=#text/html>text/html</a></code></dd>
80340 <p>The purpose of the <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> MIME type
80344 by assigning the <code><a href=#document>Document</a></code> objects generated from
80345 resources labeled as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> unique
80348 as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> as regular
80349 <code><a href=#text/html>text/html</a></code> files, authors should avoid using the <code title="">.html</code> or <code title="">.htm</code> extensions for
80350 resources labeled as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>.</p>
80351 <p>Beyond this, the type is identical to <code><a href=#text/html>text/html</a></code>,
80355 <dd>Same as for <code><a href=#text/html>text/html</a></code></dd>
80359 with the <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> type asserts that the
80360 resource is an <a href=#html-documents title="HTML documents">HTML document</a>
80361 using <a href=#syntax>the HTML syntax</a>.
80364 <dd>Same as for <code><a href=#text/html>text/html</a></code></dd>
80368 <dd>Documents labeled as <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code> are
80370 <code><a href=#text/html>text/html</a></code>.</dd>
80386 </dl><p>Fragment identifiers used with <code><a href=#text/html-sandboxed>text/html-sandboxed</a></code>
80387 resources refer to <a href=#the-indicated-part-of-the-document>the indicated part of the
80411 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80413 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80415 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80417 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80419 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80422 Labeling a resource with the <code><a href=#application/xhtml+xml>application/xhtml+xml</a></code>
80424 a root element from the <a href=#html-namespace-0>HTML namespace</a>. As such, the
80426 in XML specification, and this specification. <a href=#refsXML>[XML]</a> <a href=#refsXMLNS>[XMLNS]</a>
80429 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80433 <dd>Same as for <code>application/xml</code> <a href=#refsRFC3023>[RFC3023]</a></dd>
80437 root element from the <a href=#html-namespace-0>HTML namespace</a>.</dd>
80451 </dl><p>Fragment identifiers used with <code><a href=#application/xhtml+xml>application/xhtml+xml</a></code>
80452 resources have the same semantics as with any <a href=#xml-mime-type>XML MIME
80453 type</a>. <a href=#refsRFC3023>[RFC3023]</a></p>
80523 <code><a href=#text/cache-manifest>text/cache-manifest</a></code> resources.</p>
80550 <a href=#hyperlink-auditing>hyperlink auditing</a>, this type introduces no new
80568 <dd><code><a href=#text/ping>text/ping</a></code> resources always consist of the four
80581 of a Web browser's processing of the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute.</dd>
80587 <code><a href=#text/ping>text/ping</a></code> resources.</p>
80654 <code><a href=#text/srt>text/srt</a></code> resources.</p>
80674 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80676 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80680 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80682 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80687 <code><a href=#application/microdata+json>application/microdata+json</a></code> type asserts that the
80696 are the JSON specification and this specification. <a href=#refsJSON>[JSON]</a>
80700 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80704 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80706 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80708 <dd>Same as for <code>application/json</code> <a href=#refsJSON>[JSON]</a></dd>
80721 <code><a href=#application/microdata+json>application/microdata+json</a></code> resources have the same
80722 semantics as when used with <code>application/json</code>. <a href=#refsJSON>[JSON]</a></p>
80730 Permanent Message Header Field Registry. <a href=#refsRFC3864>[RFC3864]</a></p>
80749 Permanent Message Header Field Registry. <a href=#refsRFC3864>[RFC3864]</a></p>
80785 <tbody><tr><th><code><a href=#the-a-element>a</a></code></th>
80787 <td><a href=#flow-content title="Flow content">flow</a>;
80788 <a href=#phrasing-content title="Phrasing content">phrasing</a>*;
80789 <a href=#interactive-content title="Interactive content">interactive</a></td>
80790 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80791 <td><a href=#transparent>transparent</a>*</td>
80792 <td><a href=#global-attributes title="global attributes">globals</a>;
80793 <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>;
80794 <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>;
80796 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>;
80798 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>;
80799 <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>;
80800 <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>;
80801 <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code></td>
80802 <td><code><a href=#htmlanchorelement>HTMLAnchorElement</a></code></td>
80803 <tr><th><code><a href=#the-abbr-element>abbr</a></code></th>
80805 <td><a href=#flow-content title="Flow content">flow</a>;
80806 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80807 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80808 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80809 <td><a href=#global-attributes title="global attributes">globals</a></td>
80810 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80811 <tr><th><code><a href=#the-address-element>address</a></code></th>
80813 <td><a href=#flow-content title="Flow content">flow</a>;
80814 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
80815 <td><a href=#flow-content title="Flow content">flow</a></td>
80816 <td><a href=#flow-content title="Flow content">flow</a>*</td>
80817 <td><a href=#global-attributes title="global attributes">globals</a></td>
80818 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80819 <tr><th><code><a href=#the-area-element>area</a></code></th>
80821 <td><a href=#flow-content title="Flow content">flow</a>;
80822 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80823 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
80825 <td><a href=#global-attributes title="global attributes">globals</a>;
80826 <code title=attr-area-alt><a href=#attr-area-alt>alt</a></code>;
80827 <code title=attr-area-coords><a href=#attr-area-coords>coords</a></code>;
80828 <code title=attr-area-shape><a href=#attr-area-shape>shape</a></code>;
80829 <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code>;
80830 <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code>;
80832 <code title=attr-hyperlink-ping><a href=#ping>ping</a></code>;
80834 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code>;
80835 <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>;
80836 <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>;
80837 <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code></td>
80838 <td><code><a href=#htmlareaelement>HTMLAreaElement</a></code></td>
80839 <tr><th><code><a href=#the-article-element>article</a></code></th>
80841 <td><a href=#flow-content title="Flow content">flow</a>;
80842 <a href=#sectioning-content title="Sectioning content">sectioning</a>;
80843 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
80844 <td><a href=#flow-content title="Flow content">flow</a></td>
80845 <td><a href=#flow-content title="Flow content">flow</a></td>
80846 <td><a href=#global-attributes title="global attributes">globals</a></td>
80847 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80848 <tr><th><code><a href=#the-aside-element>aside</a></code></th>
80850 <td><a href=#flow-content title="Flow content">flow</a>;
80851 <a href=#sectioning-content title="Sectioning content">sectioning</a>;
80852 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
80853 <td><a href=#flow-content title="Flow content">flow</a></td>
80854 <td><a href=#flow-content title="Flow content">flow</a></td>
80855 <td><a href=#global-attributes title="global attributes">globals</a></td>
80856 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80857 <tr><th><code><a href=#audio>audio</a></code></th>
80859 <td><a href=#flow-content title="Flow content">flow</a>;
80860 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
80861 <a href=#embedded-content title="Embedded content">embedded</a>;
80862 <a href=#interactive-content title="Interactive content">interactive</a></td>
80863 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80864 <td><code><a href=#the-source-element>source</a></code>*;
80865 <a href=#transparent>transparent</a>*</td>
80866 <td><a href=#global-attributes title="global attributes">globals</a>;
80867 <code title=attr-media-src><a href=#attr-media-src>src</a></code>;
80868 <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code>;
80869 <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code>;
80870 <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code>;
80871 <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code></td>
80872 <td><code><a href=#htmlaudioelement>HTMLAudioElement</a></code></td>
80873 <tr><th><code><a href=#the-b-element>b</a></code></th>
80875 <td><a href=#flow-content title="Flow content">flow</a>;
80876 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80877 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80878 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80879 <td><a href=#global-attributes title="global attributes">globals</a></td>
80880 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80881 <tr><th><code><a href=#the-base-element>base</a></code></th>
80882 <td>Base URL and default target <a href=#browsing-context>browsing context</a> for <a hrefhref=#attr-fs-target title=attr-fs-target>forms</a></td>
80883 <td><a href=#metadata-content title="Metadata content">metadata</a></td>
80884 <td><code><a href=#the-head-element-0>head</a></code></td>
80886 <td><a href=#global-attributes title="global attributes">globals</a>;
80887 <code title=attr-base-href><a href=#attr-base-href>href</a></code>;
80888 <code title=attr-base-target><a href=#attr-base-target>target</a></code></td>
80889 <td><code><a href=#htmlbaseelement>HTMLBaseElement</a></code></td>
80890 <tr><th><code><a href=#the-bdo-element>bdo</a></code></th>
80892 <td><a href=#flow-content title="Flow content">flow</a>;
80893 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80894 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80895 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80896 <td><a href=#global-attributes title="global attributes">globals</a></td>
80897 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80898 <tr><th><code><a href=#the-blockquote-element>blockquote</a></code></th>
80900 <td><a href=#flow-content title="Flow content">flow</a>;
80901 <a href=#sectioning-root title="Sectioning root">sectioning root</a>;
80902 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
80903 <td><a href=#flow-content title="Flow content">flow</a></td>
80904 <td><a href=#flow-content title="Flow content">flow</a></td>
80905 <td><a href=#global-attributes title="global attributes">globals</a>;
80906 <code title=attr-blockquote-cite><a href=#attr-blockquote-cite>cite</a></code></td>
80907 <td><code><a href=#htmlquoteelement>HTMLQuoteElement</a></code></td>
80908 <tr><th><code><a href=#the-body-element-0>body</a></code></th>
80910 <td><a href=#sectioning-root title="Sectioning root">sectioning root</a></td>
80911 <td><code><a href=#the-html-element-0>html</a></code></td>
80912 <td><a href=#flow-content title="Flow content">flow</a></td>
80913 <td><a href=#global-attributes title="global attributes">globals</a>;
80914 <code title=handler-window-onafterprint><a href=#handler-window-onafterprint>onafterprint</a></code>;
80915 <code title=handler-window-onbeforeprint><a href=#handler-window-onbeforeprint>onbeforeprint</a></code>;
80916 <code title=handler-window-onbeforeunload><a href=#handler-window-onbeforeunload>onbeforeunload</a></code>;
80917 <code title=handler-window-onblur><a href=#handler-window-onblur>onblur</a></code>;
80918 <code title=handler-window-onerror><a href=#handler-window-onerror>onerror</a></code>;
80919 <code title=handler-window-onfocus><a href=#handler-window-onfocus>onfocus</a></code>;
80920 <code title=handler-window-onhashchange><a href=#handler-window-onhashchange>onhashchange</a></code>;
80921 <code title=handler-window-onload><a href=#handler-window-onload>onload</a></code>;
80922 <code title=handler-window-onmessage><a href=#handler-window-onmessage>onmessage</a></code>;
80923 <code title=handler-window-onoffline><a href=#handler-window-onoffline>onoffline</a></code>;
80924 <code title=handler-window-ononline><a href=#handler-window-ononline>ononline</a></code>;
80925 <code title=handler-window-onpagehide><a href=#handler-window-onpagehide>onpagehide</a></code>;
80926 <code title=handler-window-onpageshow><a href=#handler-window-onpageshow>onpageshow</a></code>;
80927 <code title=handler-window-onpopstate><a href=#handler-window-onpopstate>onpopstate</a></code>;
80928 <code title=handler-window-onredo><a href=#handler-window-onredo>onredo</a></code>;
80929 <code title=handler-window-onresize><a href=#handler-window-onresize>onresize</a></code>;
80930 <code title=handler-window-onstorage><a href=#handler-window-onstorage>onstorage</a></code>;
80931 <code title=handler-window-onundo><a href=#handler-window-onundo>onundo</a></code>;
80932 <code title=handler-window-onunload><a href=#handler-window-onunload>onunload</a></code></td>
80933 <td><code><a href=#htmlbodyelement>HTMLBodyElement</a></code></td>
80934 <tr><th><code><a href=#the-br-element>br</a></code></th>
80936 <td><a href=#flow-content title="Flow content">flow</a>;
80937 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80938 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80940 <td><a href=#global-attributes title="global attributes">globals</a></td>
80941 <td><code><a href=#htmlbrelement>HTMLBRElement</a></code></td>
80942 <tr><th><code><a href=#the-button-element>button</a></code></th>
80944 <td><a href=#flow-content title="Flow content">flow</a>;
80945 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
80946 <a href=#interactive-content title="Interactive content">interactive</a>;
80947 <a href=#category-listed title=category-listed>listed</a>;
80948 <a href=#category-label title=category-label>labelable</a>;
80949 <a href=#category-submit title=category-submit>submittable</a>;
80950 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
80951 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80952 <td><a href=#phrasing-content>Phrasing content</a>*</td>
80953 <td><a href=#global-attributes title="global attributes">globals</a>;
80954 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>;
80955 <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code>;
80956 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
80957 <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>;
80958 <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>;
80959 <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>;
80960 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>;
80961 <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>;
80962 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>;
80963 <code title=attr-button-type><a href=#attr-button-type>type</a></code>;
80964 <code title=attr-button-value><a href=#attr-button-value>value</a></code></td>
80965 <td><code><a href=#htmlbuttonelement>HTMLButtonElement</a></code></td>
80966 <tr><th><code><a href=#the-canvas-element>canvas</a></code></th>
80968 <td><a href=#flow-content title="Flow content">flow</a>;
80969 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
80970 <a href=#embedded-content title="Embedded content">embedded</a></td>
80971 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80972 <td><a href=#transparent>transparent</a></td>
80973 <td><a href=#global-attributes title="global attributes">globals</a>;
80974 <code title=attr-canvas-width><a href=#attr-canvas-width>width</a></code>;
80975 <code title=attr-canvas-height><a href=#attr-canvas-height>height</a></code></td>
80976 <td><code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code></td>
80977 <tr><th><code><a href=#the-caption-element>caption</a></code></th>
80980 <td><code><a href=#the-table-element>table</a></code></td>
80981 <td><a href=#flow-content title="Flow content">flow</a>*</td>
80982 <td><a href=#global-attributes title="global attributes">globals</a></td>
80983 <td><code><a href=#htmltablecaptionelement>HTMLTableCaptionElement</a></code></td>
80984 <tr><th><code><a href=#the-cite-element>cite</a></code></th>
80986 <td><a href=#flow-content title="Flow content">flow</a>;
80987 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80988 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80989 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80990 <td><a href=#global-attributes title="global attributes">globals</a></td>
80991 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
80992 <tr><th><code><a href=#the-code-element>code</a></code></th>
80994 <td><a href=#flow-content title="Flow content">flow</a>;
80995 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80996 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80997 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
80998 <td><a href=#global-attributes title="global attributes">globals</a></td>
80999 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81000 <tr><th><code><a href=#the-col-element>col</a></code></th>
81003 <td><code><a href=#the-colgroup-element>colgroup</a></code></td>
81005 <td><a href=#global-attributes title="global attributes">globals</a>;
81006 <code title=attr-col-span><a href=#attr-col-span>span</a></code></td>
81007 <td><code><a href=#htmltablecolelement>HTMLTableColElement</a></code></td>
81008 <tr><th><code><a href=#the-colgroup-element>colgroup</a></code></th>
81011 <td><code><a href=#the-table-element>table</a></code></td>
81012 <td><code><a href=#the-col-element>col</a></code></td>
81013 <td><a href=#global-attributes title="global attributes">globals</a>;
81014 <code title=attr-colgroup-span><a href=#attr-colgroup-span>span</a></code></td>
81015 <td><code><a href=#htmltablecolelement>HTMLTableColElement</a></code></td>
81016 <tr><th><code><a href=#the-command>command</a></code></th>
81018 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81019 <a href=#flow-content title="Flow content">flow</a>;
81020 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81021 <td><code><a href=#the-head-element-0>head</a></code>;
81022 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81024 <td><a href=#global-attributes title="global attributes">globals</a>;
81025 <code title=attr-command-type><a href=#attr-command-type>type</a></code>;
81026 <code title=attr-command-label><a href=#attr-command-label>label</a></code>;
81027 <code title=attr-command-icon><a href=#attr-command-icon>icon</a></code>;
81028 <code title=attr-command-disabled><a href=#attr-command-disabled>disabled</a></code>;
81029 <code title=attr-command-checked><a href=#attr-command-checked>checked</a></code>;
81030 <code title=attr-command-radiogroup><a href=#attr-command-radiogroup>radiogroup</a></code></td>
81031 <td><code><a href=#htmlcommandelement>HTMLCommandElement</a></code></td>
81032 <tr><th><code><a href=#the-datalist-element>datalist</a></code></th>
81033 <td>Container for options for <a href=#attr-input-list title=attr-input-list>combo box control</a></td>
81034 <td><a href=#flow-content title="Flow content">flow</a>;
81035 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81036 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81037 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>;
81038 <code><a href=#the-option-element>option</a></code></td>
81039 <td><a href=#global-attributes title="global attributes">globals</a></td>
81040 <td><code><a href=#htmldatalistelement>HTMLDataListElement</a></code></td>
81041 <tr><th><code><a href=#the-dd-element>dd</a></code></th>
81042 <td>Content for corresponding <code><a href=#the-dt-element>dt</a></code> element(s)</td>
81044 <td><code><a href=#the-dl-element>dl</a></code></td>
81045 <td><a href=#flow-content title="Flow content">flow</a></td>
81046 <td><a href=#global-attributes title="global attributes">globals</a></td>
81047 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81048 <tr><th><code><a href=#the-del-element>del</a></code></th>
81050 <td><a href=#flow-content title="Flow content">flow</a>;
81051 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81052 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81053 <td><a href=#transparent>transparent</a></td>
81054 <td><a href=#global-attributes title="global attributes">globals</a>;
81055 <code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code>;
81056 <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code></td>
81057 <td><code><a href=#htmlmodelement>HTMLModElement</a></code></td>
81058 <tr><th><code><a href=#the-details-element>details</a></code></th>
81060 <td><a href=#flow-content title="Flow content">flow</a>;
81061 <a href=#sectioning-root title="Sectioning root">sectioning root</a>;
81062 <a href=#interactive-content title="Interactive content">interactive</a></td>
81063 <td><a href=#flow-content title="Flow content">flow</a></td>
81064 <td><code><a href=#the-summary-element>summary</a></code>*;
81065 <a href=#flow-content title="Flow content">flow</a></td>
81066 <td><a href=#global-attributes title="global attributes">globals</a>;
81067 <code title=attr-details-open><a href=#attr-details-open>open</a></code></td>
81068 <td><code><a href=#htmldetailselement>HTMLDetailsElement</a></code></td>
81069 <tr><th><code><a href=#the-dfn-element>dfn</a></code></th>
81071 <td><a href=#flow-content title="Flow content">flow</a>;
81072 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81073 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81074 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81075 <td><a href=#global-attributes title="global attributes">globals</a></td>
81076 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81077 <tr><th><code><a href=#the-div-element>div</a></code></th>
81079 <td><a href=#flow-content title="Flow content">flow</a>;
81080 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81081 <td><a href=#flow-content title="Flow content">flow</a></td>
81082 <td><a href=#flow-content title="Flow content">flow</a></td>
81083 <td><a href=#global-attributes title="global attributes">globals</a></td>
81084 <td><code><a href=#htmldivelement>HTMLDivElement</a></code></td>
81085 <tr><th><code><a href=#the-dl-element>dl</a></code></th>
81087 <td><a href=#flow-content title="Flow content">flow</a></td>
81088 <td><a href=#flow-content title="Flow content">flow</a></td>
81089 <td><code><a href=#the-dt-element>dt</a></code>*;
81090 <code><a href=#the-dd-element>dd</a></code>*</td>
81091 <td><a href=#global-attributes title="global attributes">globals</a></td>
81092 <td><code><a href=#htmldlistelement>HTMLDListElement</a></code></td>
81093 <tr><th><code><a href=#the-dt-element>dt</a></code></th>
81094 <td>Legend for corresponding <code><a href=#the-dd-element>dd</a></code> element(s)</td>
81096 <td><code><a href=#the-dl-element>dl</a></code></td>
81098 <td><a href=#global-attributes title="global attributes">globals</a></td>
81099 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81100 <tr><th><code><a href=#the-em-element>em</a></code></th>
81102 <td><a href=#flow-content title="Flow content">flow</a>;
81103 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81104 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81105 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81106 <td><a href=#global-attributes title="global attributes">globals</a></td>
81107 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81108 <tr><th><code><a href=#the-embed-element>embed</a></code></th>
81109 <td><a href=#plugin>Plugin</a></td>
81110 <td><a href=#flow-content title="Flow content">flow</a>;
81111 href=#phrasing-content title="Phrasing content">phrasing</a>;
81112 <a href=#embedded-content title="Embedded content">embedded</a>;
81113 <a href=#interactive-content title="Interactive content">interactive</a></td>
81114 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81116 <td><a href=#global-attributes title="global attributes">globals</a>;
81117 <code title=attr-embed-src><a href=#attr-embed-src>src</a></code>;
81118 <code title=attr-embed-type><a href=#attr-embed-type>type</a></code>;
81119 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>;
81120 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code>;
81122 <td><code><a href=#htmlembedelement>HTMLEmbedElement</a></code></td>
81123 <tr><th><code><a href=#the-fieldset-element>fieldset</a></code></th>
81125 <td><a href=#flow-content title="Flow content">flow</a>;
81126 <a href=#sectioning-root title="Sectioning root">sectioning root</a>;
81127 <a href=#category-listed title=category-listed>listed</a>;
81128 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81129 <td><a href=#flow-content title="Flow content">flow</a></td>
81130 <td><code><a href=#the-legend-element>legend</a></code>*;
81131 <a href=#flow-content title="Flow content">flow</a></td>
81132 <td><a href=#global-attributes title="global attributes">globals</a>;
81133 <code title=attr-fieldset-disabled><a href=#attr-fieldset-disabled>disabled</a></code>;
81134 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81135 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code></td>
81136 <td><code><a href=#htmlfieldsetelement>HTMLFieldSetElement</a></code></td>
81137 <tr><th><code><a href=#the-figcaption-element>figcaption</a></code></th>
81138 <td>Caption for <code><a href=#the-figure-element>figure</a></code></td>
81140 <td><code><a href=#the-figure-element>figure</a></code></td>
81141 <td><a href=#flow-content title="Flow content">flow</a></td>
81142 <td><a href=#global-attributes title="global attributes">globals</a></td>
81143 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81144 <tr><th><code><a href=#the-figure-element>figure</a></code></th>
81146 <td><a href=#flow-content title="Flow content">flow</a>;
81147 <a href=#sectioning-root title="Sectioning root">sectioning root</a></td>
81148 <td><a href=#flow-content title="Flow content">flow</a></td>
81149 <td><code><a href=#the-figcaption-element>figcaption</a></code>*;
81150 <a href=#flow-content title="Flow content">flow</a></td>
81151 <td><a href=#global-attributes title="global attributes">globals</a></td>
81152 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81153 <tr><th><code><a href=#the-footer-element>footer</a></code></th>
81155 <td><a href=#flow-content title="Flow content">flow</a>;
81156 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81157 <td><a href=#flow-content title="Flow content">flow</a></td>
81158 <td><a href=#flow-content title="Flow content">flow</a>*</td>
81159 <td><a href=#global-attributes title="global attributes">globals</a></td>
81160 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81161 <tr><th><code><a href=#the-form-element>form</a></code></th>
81163 <td><a href=#flow-content title="Flow content">flow</a></td>
81164 <td><a href=#flow-content title="Flow content">flow</a></td>
81165 <td><a href=#flow-content title="Flow content">flow</a>*</td>
81166 <td><a href=#global-attributes title="global attributes">globals</a>;
81167 <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>accept-charset</a></code>;
81168 <code title=attr-fs-action><a href=#attr-fs-action>action</a></code>;
81169 <code title=attr-form-autocomplete><a href=#attr-form-autocomplete>autocomplete</a></code>;
81170 <code title=attr-fs-enctype><a href=#attr-fs-enctype>enctype</a></code>;
81171 <code title=attr-fs-method><a href=#attr-fs-method>method</a></code>;
81172 <code title=attr-form-name><a href=#attr-form-name>name</a></code>;
81173 <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>novalidate</a></code>;
81174 <code title=attr-fs-target><a href=#attr-fs-target>target</a></code></td>
81175 <td><code><a href=#htmlformelement>HTMLFormElement</a></code></td>
81176 <tr><th><code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code></th>
81178 <td><a href=#flow-content title="Flow content">flow</a>;
81179 <a href=#heading-content title="Heading content">heading</a>;
81180 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81181 <td><code><a href=#the-hgroup-element>hgroup</a></code>;
81182 <a href=#flow-content title="Flow content">flow</a></td>
81183 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81184 <td><a href=#global-attributes title="global attributes">globals</a></td>
81185 <td><code><a href=#htmlheadingelement>HTMLHeadingElement</a></code></td>
81186 <tr><th><code><a href=#the-head-element-0>head</a></code></th>
81189 <td><code><a href=#the-html-element-0>html</a></code></td>
81190 <td><a href=#metadata-content title="Metadata content">metadata content</a>*</td>
81191 <td><a href=#global-attributes title="global attributes">globals</a></td>
81192 <td><code><a href=#htmlheadelement>HTMLHeadElement</a></code></td>
81193 <tr><th><code><a href=#the-header-element>header</a></code></th>
81195 <td><a href=#flow-content title="Flow content">flow</a>;
81196 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81197 <td><a href=#flow-content title="Flow content">flow</a></td>
81198 <td><a href=#flow-content title="Flow content">flow</a>*</td>
81199 <td><a href=#global-attributes title="global attributes">globals</a></td>
81200 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81201 <tr><th><code><a href=#the-hgroup-element>hgroup</a></code></th>
81203 <td><a href=#flow-content title="Flow content">flow</a>;
81204 <a href=#heading-content title="Heading content">heading</a>;
81205 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81206 <td><a href=#flow-content title="Flow content">flow</a></td>
81207 <td>One or more <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>, <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>, and/or <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code></td>
81208 <td><a href=#global-attributes title="global attributes">globals</a></td>
81209 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81210 <tr><th><code><a href=#the-hr-element>hr</a></code></th>
81212 <td><a href=#flow-content title="Flow content">flow</a></td>
81213 <td><a href=#flow-content title="Flow content">flow</a></td>
81215 <td><a href=#global-attributes title="global attributes">globals</a></td>
81216 <td><code><a href=#htmlhrelement>HTMLHRElement</a></code></td>
81217 <tr><th><code><a href=#the-html-element-0>html</a></code></th>
81221 <td><code><a href=#the-head-element-0>head</a></code>*;
81222 <code><a href=#the-body-element-0>body</a></code>*</td>
81223 <td><a href=#global-attributes title="global attributes">globals</a>;
81224 <code title=attr-html-manifest><a href=#attr-html-manifest>manifest</a></code></td>
81225 <td><code><a href=#htmlhtmlelement>HTMLHtmlElement</a></code></td>
81226 <tr><th><code><a href=#the-i-element>i</a></code></th>
81228 <td><a href=#flow-content title="Flow content">flow</a>;
81229 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81230 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81231 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81232 <td><a href=#global-attributes title="global attributes">globals</a></td>
81233 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81234 <tr><th><code><a href=#the-iframe-element>iframe</a></code></th>
81235 <td><a href=#nested-browsing-context>Nested browsing context</a></td>
81236 <td><a href=#flow-content title="Flow content">flow</a>;
81237 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81238 <a href=#embedded-content title="Embedded content">embedded</a>;
81239 <a href=#interactive-content title="Interactive content">interactive</a></td>
81240 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81242 <td><a href=#global-attributes title="global attributes">globals</a>;
81243 <code title=attr-iframe-src><a href=#attr-iframe-src>src</a></code>;
81244 <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>srcdoc</a></code>;
81245 <code title=attr-iframe-name><a href=#attr-iframe-name>name</a></code>;
81246 <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>sandbox</a></code>;
81247 <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code>;
81248 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>;
81249 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code></td>
81250 <td><code><a href=#htmliframeelement>HTMLIFrameElement</a></code></td>
81251 <tr><th><code><a href=#the-img-element>img</a></code></th>
81253 <td><a href=#flow-content title="Flow content">flow</a>;
81254 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81255 <a href=#embedded-content title="Embedded content">embedded</a>;
81256 <a href=#interactive-content title="Interactive content">interactive</a>*</td>
81257 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81259 <td><a href=#global-attributes title="global attributes">globals</a>;
81260 <code title=attr-img-alt><a href=#attr-img-alt>alt</a></code>;
81261 <code title=attr-img-src><a href=#attr-img-src>src</a></code>;
81262 <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code>;
81263 <code title=attr-img-ismap><a href=#attr-img-ismap>ismap</a></code>;
81264 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>;
81265 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code></td>
81266 <td><code><a href=#htmlimageelement>HTMLImageElement</a></code></td>
81267 <tr><th><code><a href=#the-input-element>input</a></code></th>
81269 <td><a href=#flow-content title="Flow content">flow</a>;
81270 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81271 <a href=#interactive-content title="Interactive content">interactive</a>*;
81272 <a href=#category-listed title=category-listed>listed</a>;
81273 <a href=#category-label title=category-label>labelable</a>;
81274 <a href=#category-submit title=category-submit>submittable</a>;
81275 <a href=#category-reset title=category-reset>resettable</a>;
81276 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81277 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81279 <td><a href=#global-attributes title="global attributes">globals</a>;
81280 <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>;
81281 <code title=attr-input-alt><a href=#attr-input-alt>alt</a></code>;
81282 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>autocomplete</a></code>;
81283 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>;
81284 <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>;
81285 <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code>;
81286 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81287 <code title=attr-fs-formaction><a href=#attr-fs-formaction>formaction</a></code>;
81288 <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>formenctype</a></code>;
81289 <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>formmethod</a></code>;
81290 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>formnovalidate</a></code>;
81291 <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>formtarget</a></code>;
81292 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code>;
81293 <code title=attr-input-list><a href=#attr-input-list>list</a></code>;
81294 <code title=attr-input-max><a href=#attr-input-max>max</a></code>;
81295 <code title=attr-input-maxlength><a href=#attr-input-maxlength>maxlength</a></code>;
81296 <code title=attr-input-min><a href=#attr-input-min>min</a></code>;
81297 <code title=attr-input-multiple><a href=#attr-input-multiple>multiple</a></code>;
81298 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>;
81299 <code title=attr-input-pattern><a href=#attr-input-pattern>pattern</a></code>;
81300 <code title=attr-input-placeholder><a href=#attr-input-placeholder>placeholder</a></code>;
81301 <code title=attr-input-readonly><a href=#attr-input-readonly>readonly</a></code>;
81302 <code title=attr-input-required><a href=#attr-input-required>required</a></code>;
81303 <code title=attr-input-size><a href=#attr-input-size>size</a></code>;
81304 <code title=attr-input-src><a href=#attr-input-src>src</a></code>;
81305 <code title=attr-input-step><a href=#attr-input-step>step</a></code>;
81306 <code title=attr-input-type><a href=#attr-input-type>type</a></code>;
81307 <code title=attr-input-value><a href=#attr-input-value>value</a></code>;
81308 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code></td>
81309 <td><code><a href=#htmlinputelement>HTMLInputElement</a></code></td>
81310 <tr><th><code><a href=#the-ins-element>ins</a></code></th>
81312 <td><a href=#flow-content title="Flow content">flow</a>;
81313 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81314 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81315 <td><a href=#transparent>transparent</a></td>
81316 <td><a href=#global-attributes title="global attributes">globals</a>;
81317 <code title=attr-mod-cite><a href=#attr-mod-cite>cite</a></code>;
81318 <code title=attr-mod-datetime><a href=#attr-mod-datetime>datetime</a></code></td>
81319 <td><code><a href=#htmlmodelement>HTMLModElement</a></code></td>
81320 <tr><th><code><a href=#the-kbd-element>kbd</a></code></th>
81322 <td><a href=#flow-content title="Flow content">flow</a>;
81323 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81324 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81325 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81326 <td><a href=#global-attributes title="global attributes">globals</a></td>
81327 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81328 <tr><th><code><a href=#the-keygen-element>keygen</a></code></th>
81330 <td><a href=#flow-content title="Flow content">flow</a>;
81331 <a href
81332 <a href=#interactive-content title="Interactive content">interactive</a>;
81333 <a href=#category-listed title=category-listed>listed</a>;
81334 <a href=#category-label title=category-label>labelable</a>;
81335 <a href=#category-submit title=category-submit>submittable</a>;
81336 <a href=#category-reset title=category-reset>resettable</a>;
81337 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81338 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81340 <td><a href=#global-attributes title="global attributes">globals</a>;
81341 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>;
81342 <code title=attr-keygen-challenge><a href=#attr-keygen-challenge>challenge</a></code>;
81343 <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code>;
81344 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81345 <code title=attr-keygen-keytype><a href=#attr-keygen-keytype>keytype</a></code>;
81346 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code></td>
81347 <td><code><a href=#htmlkeygenelement>HTMLKeygenElement</a></code></td>
81348 <tr><th><code><a href=#the-label-element>label</a></code></th>
81350 <td><a href=#flow-content title="Flow content">flow</a>;
81351 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81352 <a href=#interactive-content title="Interactive content">interactive</a>;
81353 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81354 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81355 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81356 <td><a href=#global-attributes title="global attributes">globals</a>;
81357 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81358 <code title=attr-label-for><a href=#attr-label-for>for</a></code></td>
81359 <td><code><a href=#htmllabelelement>HTMLLabelElement</a></code></td>
81360 <tr><th><code><a href=#the-legend-element>legend</a></code></th>
81361 <td>Caption for <code><a href=#the-fieldset-element>fieldset</a></code></td>
81363 <td><code><a href=#the-fieldset-element>fieldset</a></code></td>
81364 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81365 <td><a href=#global-attributes title="global attributes">globals</a></td>
81366 <td><code><a href=#htmllegendelement>HTMLLegendElement</a></code></td>
81367 <tr><th><code><a href=#the-li-element>li</a></code></th>
81370 <td><code><a href=#the-ol-element>ol</a></code>; <code><a href=#the-ul-element>ul</a></code>; <code><a href=#menus>menu</a></code></td>
81371 <td><a href=#flow-content title="Flow content">flow</a></td>
81372 <td><a href=#global-attributes title="global attributes">globals</a>;
81373 <code title=attr-li-value><a href=#attr-li-value>value</a></code>*</td>
81374 <td><code><a href=#htmllielement>HTMLLIElement</a></code></td>
81375 <tr><th><code><a href=#the-link-element>link</a></code></th>
81377 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81378 <a href=#flow-content title="Flow content">flow</a>*;
81379 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81380 <td><code><a href=#the-head-element-0>head</a></code>;
81381 <code><a href=#the-noscript-element>noscript</a></code>*;
81382 <a href=#phrasing-content title="phrasing content">phrasing</a>*</td>
81384 <td><a href=#global-attributes title="global attributes">globals</a>;
81385 <code title=attr-link-href><a href=#attr-link-href>href</a></code>;
81386 <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code>;
81387 <code title=attr-link-media><a href=#attr-link-media>media</a></code>;
81388 <code title=attr-link-hreflang><a href=#attr-link-hreflang>hreflang</a></code>;
81389 <code title=attr-link-type><a href=#attr-link-type>type</a></code>;
81390 <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code></td>
81391 <td><code><a href=#htmllinkelement>HTMLLinkElement</a></code></td>
81392 <tr><th><code><a href=#the-map-element>map</a></code></th>
81393 <td><a href=#image-map>Image map</a></td>
81394 <td><a href=#flow-content title="Flow content">flow</a>;
81395 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81396 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81397 <td><a href=#transparent>transparent</a>;
81398 <code><a href=#the-area-element>area</a></code>*</td>
81399 <td><a href=#global-attributes title="global attributes">globals</a>;
81400 <code title=attr-map-name><a href=#attr-map-name>name</a></code></td>
81401 <td><code><a href=#htmlmapelement>HTMLMapElement</a></code></td>
81402 <tr><th><code><a href=#the-mark-element>mark</a></code></th>
81404 <td><a href=#flow-content title="Flow content">flow</a>;
81405 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81406 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81407 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81408 <td><a href=#global-attributes title="global attributes">globals</a></td>
81409 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81410 <tr><th><code><a href=#menus>menu</a></code></th>
81412 <td><a href=#flow-content title="Flow content">flow</a>;
81413 <a href=#interactive-content title="Interactive content">interactive</a>*</td>
81414 <td><a href=#flow-content title="Flow content">flow</a></td>
81415 <td><code><a href=#the-li-element>li</a></code>*;
81416 <a href=#flow-content title="Flow content">flow</a></td>
81417 <td><a href=#global-attributes title="global attributes">globals</a>;
81418 <code title=attr-menu-type><a href=#attr-menu-type>type</a></code>;
81419 <code title=attr-menu-label><a href=#attr-menu-label>label</a></code></td>
81420 <td><code><a href=#htmlmenuelement>HTMLMenuElement</a></code></td>
81421 <tr><th><code><a href=#meta>meta</a></code></th>
81423 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81424 <a href=#flow-content title="Flow content">flow</a>*;
81425 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81426 <td><code><a href=#the-head-element-0>head</a></code>;
81427 <code><a href=#the-noscript-element>noscript</a></code>*;
81428 <a href=#phrasing-content title="phrasing content">phrasing</a>*</td>
81430 <td><a href=#global-attributes title="global attributes">globals</a>;
81431 <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>;
81432 <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>;
81433 <code title=attr-meta-content><a href=#attr-meta-content>content</a></code>;
81434 <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code></td>
81435 <td><code><a href=#htmlmetaelement>HTMLMetaElement</a></code></td>
81436 <tr><th><code><a href=#the-meter-element>meter</a></code></th>
81438 <td><a href=#flow-content title="Flow content">flow</a>;
81439 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81440 <a href=#category-label title=category-label>labelable</a>;
81441 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81442 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81443 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81444 <td><a href=#global-attributes title="global attributes">globals</a>;
81445 <code title=attr-meter-value><a href=#attr-meter-value>value</a></code>;
81446 <code title=attr-meter-min><a href=#attr-meter-min>min</a></code>;
81447 <code title=attr-meter-max><a href=#attr-meter-max>max</a></code>;
81448 <code title=attr-meter-low><a href=#attr-meter-low>low</a></code>;
81449 <code title=attr-meter-high><a href=#attr-meter-high>high</a></code>;
81450 <code title=attr-meter-optimum><a href=#attr-meter-optimum>optimum</a></code>;
81451 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code></td>
81452 <td><code><a href=#htmlmeterelement>HTMLMeterElement</a></code></td>
81453 <tr><th><code><a href=#the-nav-element>nav</a></code></th>
81455 <td><a href=#flow-content title="Flow content">flow</a>;
81456 <a href=#sectioning-content title="Sectioning content">sectioning</a>;
81457 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81458 <td><a href=#flow-content title="Flow content">flow</a></td>
81459 <td><a href=#flow-content title="Flow content">flow</a></td>
81460 <td><a href=#global-attributes title="global attributes">globals</a></td>
81461 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81462 <tr><th><code><a href=#the-noscript-element>noscript</a></code></th>
81464 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81465 <a href=#flow-content title="Flow content">flow</a>;
81466 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81467 <td><code><a href=#the-head-element-0>head</a></code>*;
81468 <a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81470 <td><a href=#global-attributes title="global attributes">globals</a></td>
81471 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81472 <tr><th><code><a href=#the-object-element>object</a></code></th>
81473 <td>Image, <a href=#nested-browsing-context>nested browsing context</a>, or <a href=#plugin>plugin</a></td>
81474 <td><a href=#flow-content title="Flow content">flow</a>;
81475 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81476 <a href=#embedded-content title="Embedded content">embedded</a>;
81477 <a href=#interactive-content title="Interactive content">interactive</a>*;
81478 <a href=#category-listed title=category-listed>listed</a>;
81479 <a href=#category-submit title=category-submit>submittable</a>;
81480 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81481 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81482 <td><code><a href=#the-param-element>param</a></code>*;
81483 <a href=#transparent>transparent</a></td>
81484 <td><a href=#global-attributes title="global attributes">globals</a>;
81485 <code title=attr-object-data><a href=#attr-object-data>data</a></code>;
81486 <code title=attr-object-type><a href=#attr-object-type>type</a></code>;
81487 <code title=attr-object-name><a href=#attr-object-name>name</a></code>;
81488 <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code>;
81489 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81490 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>;
81491 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code></td>
81492 <td><code><a href=#htmlobjectelement>HTMLObjectElement</a></code></td>
81493 <tr><th><code><a href=#the-ol-element>ol</a></code></th>
81495 <td><a href=#flow-content title="Flow content">flow</a></td>
81496 <td><a href=#flow-content title="Flow content">flow</a></td>
81497 <td><code><a href=#the-li-element>li</a></code></td>
81498 <td><a href=#global-attributes title="global attributes">globals</a>;
81499 <code title=attr-ol-reversed><a href=#attr-ol-reversed>reversed</a></code>;
81500 <code title=attr-ol-start><a href=#attr-ol-start>start</a></code></td>
81501 <td><code><a href=#htmlolistelement>HTMLOListElement</a></code></td>
81502 <tr><th><code><a href=#the-optgroup-element>optgroup</a></code></th>
81505 <td><code><a href=#the-select-element>select</a></code></td>
81506 <td><code><a href=#the-option-element>option</a></code></td>
81507 <td><a href=#global-attributes title="global attributes">globals</a>;
81508 <code title=attr-optgroup-disabled><a href=#attr-optgroup-disabled>disabled</a></code>;
81509 <code title=attr-optgroup-label><a href=#attr-optgroup-label>label</a></code></td>
81510 <td><code><a href=#htmloptgroupelement>HTMLOptGroupElement</a></code></td>
81511 <tr><th><code><a href=#the-option-element>option</a></code></th>
81514 <td><code><a href=#the-select-element>select</a></code>;
81515 <code><a href=#the-datalist-element>datalist</a></code>;
81516 <code><a href=#the-optgroup-element>optgroup</a></code></td>
81517 <td><a href=#text-content title="text content">text</a></td>
81518 <td><a href=#global-attributes title="global attributes">globals</a>;
81519 <code title=attr-option-disabled><a href=#attr-option-disabled>disabled</a></code>;
81520 <code title=attr-option-label><a href=#attr-option-label>label</a></code>;
81521 <code title=attr-option-selected><a href=#attr-option-selected>selected</a></code>;
81522 <code title=attr-option-value><a href=#attr-option-value>value</a></code></td>
81523 <td><code><a href=#htmloptionelement>HTMLOptionElement</a></code></td>
81524 <tr><th><code><a href=#the-output-element>output</a></code></th>
81526 <td><a href=#flow-content title="Flow content">flow</a>;
81527 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81528 <a href=#category-listed title=category-listed>listed</a>;
81529 <a href=#category-label title=category-label>labelable</a>;
81530 <a href=#category-reset title=category-reset>resettable</a>;
81531 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81532 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81533 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81534 <td><a href=#global-attributes title="global attributes">globals</a>;
81535 <code title=attr-output-for><a href=#attr-output-for>for</a></code>;
81536 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81537 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code></td>
81538 <td><code><a href=#htmloutputelement>HTMLOutputElement</a></code></td>
81539 <tr><th><code><a href=#the-p-element>p</a></code></th>
81541 <td><a href=#flow-content title="Flow content">flow</a>;
81542 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81543 <td><a href=#flow-content title="Flow content">flow</a></td>
81544 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81545 <td><a href=#global-attributes title="global attributes">globals</a></td>
81546 <td><code><a href=#htmlparagraphelement>HTMLParagraphElement</a></code></td>
81547 <tr><th><code><a href=#the-param-element>param</a></code></th>
81548 <td>Parameter for <code><a href=#the-object-element>object</a></code></td>
81550 <td><code><a href=#the-object-element>object</a></code></td>
81552 <td><a href=#global-attributes title="global attributes">globals</a>;
81553 <code title=attr-param-name><a href=#attr-param-name>name</a></code>;
81554 <code title=attr-param-value><a href=#attr-param-value>value</a></code></td>
81555 <td><code><a href=#htmlparamelement>HTMLParamElement</a></code></td>
81556 <tr><th><code><a href=#the-pre-element>pre</a></code></th>
81558 <td><a href=#flow-content title="Flow content">flow</a>;
81559 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81560 <td><a href=#flow-content title="Flow content">flow</a></td>
81561 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81562 <td><a href=#global-attributes title="global attributes">globals</a></td>
81563 <td><code><a href=#htmlpreelement>HTMLPreElement</a></code></td>
81564 href=#the-progress-element>progress</a></code></th>
81566 <td><a href=#flow-content title="Flow content">flow</a>;
81567 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81568 <a href=#category-label title=category-label>labelable</a>;
81569 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81570 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81571 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81572 <td><a href=#global-attributes title="global attributes">globals</a>;
81573 <code title=attr-progress-value><a href=#attr-progress-value>value</a></code>;
81574 <code title=attr-progress-max><a href=#attr-progress-max>max</a></code>;
81575 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code></td>
81576 <td><code><a href=#htmlprogresselement>HTMLProgressElement</a></code></td>
81577 <tr><th><code><a href=#the-q-element>q</a></code></th>
81579 <td><a href=#flow-content title="Flow content">flow</a>;
81580 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81581 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81582 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81583 <td><a href=#global-attributes title="global attributes">globals</a>;
81584 <code title=attr-q-cite><a href=#attr-q-cite>cite</a></code></td>
81585 <td><code><a href=#htmlquoteelement>HTMLQuoteElement</a></code></td>
81586 <tr><th><code><a href=#the-rp-element>rp</a></code></th>
81589 <td><code><a href=#the-ruby-element>ruby</a></code></td>
81590 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81591 <td><a href=#global-attributes title="global attributes">globals</a></td>
81592 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81593 <tr><th><code><a href=#the-rt-element>rt</a></code></th>
81596 <td><code><a href=#the-ruby-element>ruby</a></code></td>
81597 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81598 <td><a href=#global-attributes title="global attributes">globals</a></td>
81599 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81600 <tr><th><code><a href=#the-ruby-element>ruby</a></code></th>
81602 <td><a href=#flow-content title="Flow content">flow</a>;
81603 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81604 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81605 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>;
81606 <code><a href=#the-rt-element>rt</a></code> element;
81607 <code><a href=#the-rp-element>rp</a></code> element*</td>
81608 <td><a href=#global-attributes title="global attributes">globals</a></td>
81609 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81610 <tr><th><code><a href=#the-samp-element>samp</a></code></th>
81612 <td><a href=#flow-content title="Flow content">flow</a>;
81613 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81614 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81615 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81616 <td><a href=#global-attributes title="global attributes">globals</a></td>
81617 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81618 <tr><th><code><a href=#script>script</a></code></th>
81620 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81621 <a href=#flow-content title="Flow content">flow</a>;
81622 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81623 <td><code><a href=#the-head-element-0>head</a></code>;
81624 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81626 <td><a href=#global-attributes title="global attributes">globals</a>;
81627 <code title=attr-script-src><a href=#attr-script-src>src</a></code>;
81628 <code title=attr-script-async><a href=#attr-script-async>async</a></code>;
81629 <code title=attr-script-defer><a href=#attr-script-defer>defer</a></code>;
81630 <code title=attr-script-type><a href=#attr-script-type>type</a></code>;
81631 <code title=attr-script-charset><a href=#attr-script-charset>charset</a></code></td>
81632 <td><code><a href=#htmlscriptelement>HTMLScriptElement</a></code></td>
81633 <tr><th><code><a href=#the-section-element>section</a></code></th>
81635 <td><a href=#flow-content title="Flow content">flow</a>;
81636 <a href=#sectioning-content title="Sectioning content">sectioning</a>;
81637 <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidate</a></td>
81638 <td><a href=#flow-content title="Flow content">flow</a></td>
81639 <td><a href=#flow-content title="Flow content">flow</a></td>
81640 <td><a href=#global-attributes title="global attributes">globals</a></td>
81641 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81642 <tr><th><code><a href=#the-select-element>select</a></code></th>
81644 <td><a href=#flow-content title="Flow content">flow</a>;
81645 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81646 <a href=#interactive-content title="Interactive content">interactive</a>;
81647 <a href=#category-listed title=category-listed>listed</a>;
81648 <a href=#category-label title=category-label>labelable</a>;
81649 <a href=#category-submit title=category-submit>submittable</a>;
81650 <a href=#category-reset title=category-reset>resettable</a>;
81651 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81652 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81653 <td><code><a href=#the-option-element>option</a></code>, <code><a href=#the-optgroup-element>optgroup</a></code></td>
81654 <td><a href=#global-attributes title="global attributes">globals</a>;
81655 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>;
81656 <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code>;
81657 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81658 <code title=attr-select-multiple><a href=#attr-select-multiple>multiple</a></code>;
81659 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>;
81660 <code title=attr-select-size><a href=#attr-select-size>size</a></code></td>
81661 <td><code><a href=#htmlselectelement>HTMLSelectElement</a></code></td>
81662 <tr><th><code><a href=#the-small-element>small</a></code></th>
81664 <td><a href=#flow-content title="Flow content">flow</a>;
81665 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81666 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81667 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81668 <td><a href=#global-attributes title="global attributes">globals</a></td>
81669 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81670 <tr><th><code><a href=#the-source-element>source</a></code></th>
81671 <td>Media source for <code><a href=#video>video</a></code> or <code><a href=#audio>audio</a></code></td>
81673 <td><code><a href=#video>video</a></code>;
81674 <code><a href=#audio>audio</a></code></td>
81676 <td><a href=#global-attributes title="global attributes">globals</a>;
81677 <code title=attr-source-src><a href=#attr-source-src>src</a></code>;
81678 <code title=attr-source-type><a href=#attr-source-type>type</a></code>;
81679 <code title=attr-source-media><a href=#attr-source-media>media</a></code></td>
81680 <td><code><a href=#htmlsourceelement>HTMLSourceElement</a></code></td>
81681 <tr><th><code><a href=#the-span-element>span</a></code></th>
81683 <td><a href=#flow-content title="Flow content">flow</a>;
81684 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81685 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81686 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81687 <td><a href=#global-attributes title="global attributes">globals</a></td>
81688 <td><code><a href=#htmlspanelement>HTMLSpanElement</a></code></td>
81689 <tr><th><code><a href=#the-strong-element>strong</a></code></th>
81691 <td><a href=#flow-content title="Flow content">flow</a>;
81692 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81693 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81694 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81695 <td><a href=#global-attributes title="global attributes">globals</a></td>
81696 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81697 <tr><th><code><a href=#the-style-element>style</a></code></th>
81699 <td><a href=#metadata-content title="Metadata content">metadata</a>;
81700 <a href=#flow-content title="Flow content">flow</a></td>
81701 <td><code><a href=#the-head-element-0>head</a></code>;
81702 <code><a href=#the-noscript-element>noscript</a></code>*;
81703 <a href=#flow-content title="flow content">flow</a>*</td>
81705 <td><a href=#global-attributes title="global attributes">globals</a>;
81706 <code title=attr-style-media><a href=#attr-style-media>media</a></code>;
81707 <code title=attr-style-type><a href=#attr-style-type>type</a></code>;
81708 <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code></td>
81709 <td><code><a href=#htmlstyleelement>HTMLStyleElement</a></code></td>
81710 <tr><th><code><a href=#the-sub-and-sup-elements>sub</a></code></th>
81712 <td><a href=#flow-content title="Flow content">flow</a>;
81713 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81714 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81715 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81716 <td><a href=#global-attributes title="global attributes">globals</a></td>
81717 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81718 <tr><th><code><a href=#the-summary-element>summary</a></code></th>
81719 <td>Caption for <code><a href=#the-details-element>details</a></code></td>
81721 <td><code><a href=#the-details-element>details</a></code></td>
81722 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81723 <td><a href=#global-attributes title="global attributes">globals</a></td>
81724 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81725 <tr><th><code><a href=#the-sub-and-sup-elements>sup</a></code></th>
81727 <td><a href=#flow-content title="Flow content">flow</a>;
81728 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81729 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81730 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81731 <td><a href=#global-attributes title="global attributes">globals</a></td>
81732 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81733 <tr><th><code><a href=#the-table-element>table</a></code></th>
81735 <td><a href=#flow-content title="Flow content">flow</a></td>
81736 <td><a href=#flow-content title="Flow content">flow</a></td>
81737 <td><code><a href=#the-caption-element>caption</a></code>*;
81738 <code><a href=#the-colgroup-element>colgroup</a></code>*;
81739 <code><a href=#the-thead-element>thead</a></code>*;
81740 <code><a href=#the-tbody-element>tbody</a></code>*;
81741 <code><a href=#the-tfoot-element>tfoot</a></code>*;
81742 <code><a href=#the-tr-element>tr</a></code>*</td>
81743 <td><a href=#global-attributes title="global attributes">globals</a>;
81744 <code title=attr-table-summary><a href=#attr-table-summary>summary</a></code></td>
81745 <td><code><a href=#htmltableelement>HTMLTableElement</a></code></td>
81746 <tr><th><code><a href=#the-tbody-element>tbody</a></code></th>
81749 <td><code><a href=#the-table-element>table</a></code></td>
81750 <td><code><a href=#the-tr-element>tr</a></code></td>
81751 <td><a href=#global-attributes title="global attributes">globals</a></td>
81752 <td><code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code></td>
81753 <tr><th><code><a href=#the-td-element>td</a></code></th>
81755 <td><a href=#sectioning-root title="Sectioning root">sectioning root</a></td>
81756 <td><code><a href=#the-tr-element>tr</a></code></td>
81757 <td><a href=#flow-content title="Flow content">flow</a></td>
81758 <td><a href=#global-attributes title="global attributes">globals</a>;
81759 <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code>;
81760 <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>rowspan</a></code>;
81761 <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code></td>
81762 <td><code><a href=#htmltabledatacellelement>HTMLTableDataCellElement</a></code></td>
81763 <tr><th><code><a href=#the-textarea-element>textarea</a></code></th>
81765 <td><a href=#flow-content title="Flow content">flow</a>;
81766 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81767 <a href=#interactive-content title="Interactive content">interactive</a>;
81768 <a href=#category-listed title=category-listed>listed</a>;
81769 <a href=#category-label title=category-label>labelable</a>;
81770 <a href=#category-submit title=category-submit>submittable</a>;
81771 <a href=#category-reset title=category-reset>resettable</a>;
81772 <a href=#form-associated-element title="Form-associated element">form-associated</a></td>
81773 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81774 <td><a href=#text-content title="text content">text</a></td>
81775 <td><a href=#global-attributes title="global attributes">globals</a>;
81776 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>autofocus</a></code>;
81777 <code title=attr-textarea-cols><a href=#attr-textarea-cols>cols</a></code>;
81778 <code title=attr-fe-disabled><a href=#attr-fe-disabled>disabled</a></code>;
81779 <code title=attr-fae-form><a href=#attr-fae-form>form</a></code>;
81780 <code title=attr-textarea-maxlength><a href=#attr-textarea-maxlength>maxlength</a></code>;
81781 <code title=attr-fe-name><a href=#attr-fe-name>name</a></code>;
81782 <code title=attr-textarea-placeholder><a href=#attr-textarea-placeholder>placeholder</a></code>;
81783 <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>readonly</a></code>;
81784 <code title=attr-textarea-required><a href=#attr-textarea-required>required</a></code>;
81785 <code title=attr-textarea-rows><a href=#attr-textarea-rows>rows</a></code>;
81786 <code title=attr-textarea-wrap><a href=#attr-textarea-wrap>wrap</a></code></td>
81787 <td><code><a href=#htmltextareaelement>HTMLTextAreaElement</a></code></td>
81788 <tr><th><code><a href=#the-tfoot-element>tfoot</a></code></th>
81791 <td><code><a href=#the-table-element>table</a></code></td>
81792 <td><code><a href=#the-tr-element>tr</a></code></td>
81793 <td><a href=#global-attributes title="global attributes">globals</a></td>
81794 <td><code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code></td>
81795 <tr><th><code><a href=#the-th-element>th</a></code></th>
81798 <td><code><a href=#the-tr-element>tr</a></code></td>
81799 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81800 <td><a href=#global-attributes title="global attributes">globals</a>;
81801 <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>colspan</a></code>;
81802 href=#attr-tdth-rowspan>rowspan</a></code>;
81803 <code title=attr-tdth-headers><a href=#attr-tdth-headers>headers</a></code>;
81804 <code title=attr-th-scope><a href=#attr-th-scope>scope</a></code></td>
81805 <td><code><a href=#htmltableheadercellelement>HTMLTableHeaderCellElement</a></code></td>
81806 <tr><th><code><a href=#the-thead-element>thead</a></code></th>
81809 <td><code><a href=#the-table-element>table</a></code></td>
81810 <td><code><a href=#the-tr-element>tr</a></code></td>
81811 <td><a href=#global-attributes title="global attributes">globals</a></td>
81812 <td><code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code></td>
81813 <tr><th><code><a href=#the-time-element>time</a></code></th>
81815 <td><a href=#flow-content title="Flow content">flow</a>;
81816 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81817 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81818 <td><a href=#phrasing-content title="Phrasing content">phrasing</a>*</td>
81819 <td><a href=#global-attributes title="global attributes">globals</a>;
81820 <code title=attr-time-datetime><a href=#attr-time-datetime>datetime</a></code>;
81821 <code title=attr-time-pubdate><a href=#attr-time-pubdate>pubdate</a></code></td>
81822 <td><code><a href=#htmltimeelement>HTMLTimeElement</a></code></td>
81823 <tr><th><code><a href=#the-title-element-0>title</a></code></th>
81825 <td><a href=#metadata-content title="Metadata content">metadata</a></td>
81826 <td><code><a href=#the-head-element-0>head</a></code></td>
81827 <td><a href=#text-content title="text content">text</a></td>
81828 <td><a href=#global-attributes title="global attributes">globals</a></td>
81829 <td><code><a href=#htmltitleelement>HTMLTitleElement</a></code></td>
81830 <tr><th><code><a href=#the-tr-element>tr</a></code></th>
81833 <td><code><a href=#the-table-element>table</a></code>;
81834 <code><a href=#the-thead-element>thead</a></code>;
81835 <code><a href=#the-tbody-element>tbody</a></code>;
81836 <code><a href=#the-tfoot-element>tfoot</a></code></td>
81837 <td><code><a href=#the-th-element>th</a></code>*;
81838 <code><a href=#the-td-element>td</a></code></td>
81839 <td><a href=#global-attributes title="global attributes">globals</a></td>
81840 <td><code><a href=#htmltablerowelement>HTMLTableRowElement</a></code></td>
81841 </tr><!--TT--><tr><th><code><a href=#the-track-element>track</a></code></th>
81844 <td><code><a href=#audio>audio</a></code>;
81845 <code><a href=#video>video</a></code></td>
81847 <td><a href=#global-attributes title="global attributes">globals</a>;
81848 <code title=attr-track-kind><a href=#attr-track-kind>kind</a></code>;
81849 <code title=attr-track-label><a href=#attr-track-label>label</a></code>;
81850 <code title=attr-track-src><a href=#attr-track-src>src</a></code>;
81851 <code title=attr-track-srclang><a href=#attr-track-srclang>srclang</a></code></td>
81852 <td><code><a href=#htmltrackelement>HTMLTrackElement</a></code></td>
81853 </tr><!--TT--><tr><th><code><a href=#the-ul-element>ul</a></code></th>
81855 <td><a href=#flow-content title="Flow content">flow</a></td>
81856 <td><a href=#flow-content title="Flow content">flow</a></td>
81857 <td><code><a href=#the-li-element>li</a></code></td>
81858 <td><a href=#global-attributes title="global attributes">globals</a></td>
81859 <td><code><a href=#htmlulistelement>HTMLUListElement</a></code></td>
81860 <tr><th><code><a href=#the-var-element>var</a></code></th>
81862 <td><a href=#flow-content title="Flow content">flow</a>;
81863 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81864 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81865 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81866 <td><a href=#global-attributes title="global attributes">globals</a></td>
81867 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81868 <tr><th><code><a href=#video>video</a></code></th>
81870 <td><a href=#flow-content title="Flow content">flow</a>;
81871 <a href=#phrasing-content title="Phrasing content">phrasing</a>;
81872 <a href=#embedded-content title="Embedded content">embedded</a>;
81873 <a href=#interactive-content title="Interactive content">interactive</a></td>
81874 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81875 <td><code><a href=#the-source-element>source</a></code>*;
81876 <a href=#transparent>transparent</a>*</td>
81877 <td><a href=#global-attributes title="global attributes">globals</a>;
81878 <code title=attr-media-src><a href=#attr-media-src>src</a></code>;
81879 <code title=attr-video-poster><a href=#attr-video-poster>poster</a></code>;
81880 <code title=attr-media-preload><a href=#attr-media-preload>preload</a></code>;
81881 <code title=attr-media-autoplay><a href=#attr-media-autoplay>autoplay</a></code>;
81882 <code title=attr-media-loop><a href=#attr-media-loop>loop</a></code>;
81883 <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code>;
81884 <code title=attr-dim-width><a href=#attr-dim-width>width</a></code>;
81885 <code title=attr-dim-height><a href=#attr-dim-height>height</a></code></td>
81886 <td><code><a href=#htmlvideoelement>HTMLVideoElement</a></code></td>
81887 <tr><th><code><a href=#the-wbr-element>wbr</a></code></th>
81889 <td><a href=#flow-content title="Flow content">flow</a>;
81890 <a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81891 <td><a href=#phrasing-content title="Phrasing content">phrasing</a></td>
81893 <td><a href=#global-attributes title="global attributes">globals</a></td>
81894 <td><code><a href=#htmlelement>HTMLElement</a></code></td>
81910 <tbody><tr><td> <a href=#metadata-content>Metadata content</a>
81912 <code><a href=#the-base-element>base</a></code>;
81913 <code><a href=#the-command>command</a></code>;
81914 <code><a href=#the-link-element>link</a></code>;
81915 <code><a href=#meta>meta</a></code>;
81916 <code><a href=#the-noscript-element>noscript</a></code>;
81917 <code><a href=#script>script</a></code>;
81918 <code><a href=#the-style-element>style</a></code>;
81919 <code><a href=#the-title-element-0>title</a></code>
81923 <tr><td> <a href=#flow-content>Flow content</a>
81925 <code><a href=#the-a-element>a</a></code>;
81926 <code><a href=#the-abbr-element>abbr</a></code>;
81927 <code><a href=#the-address-element>address</a></code>;
81928 <code><a href=#the-article-element>article</a></code>;
81929 <code><a href=#the-aside-element>aside</a></code>;
81930 <code><a href=#audio>audio</a></code>;
81931 <code><a href=#the-b-element>b</a></code>;
81932 <code><a href=#the-bdo-element>bdo</a></code>;
81933 <code><a href=#the-blockquote-element>blockquote</a></code>;
81934 <code><a href=#the-br-element>br</a></code>;
81935 <code><a href=#the-button-element>button</a></code>;
81936 <code><a href=#the-canvas-element>canvas</a></code>;
81937 <code><a href=#the-cite-element>cite</a></code>;
81938 <code><a href=#the-code-element>code</a></code>;
81939 <code><a href=#the-command>command</a></code>;
81941 <code><a href=#the-datalist-element>datalist</a></code>;
81942 <code><a href=#the-del-element>del</a></code>;
81943 <code><a href=#the-details-element>details</a></code>;
81944 <code><a href=#the-dfn-element>dfn</a></code>;
81945 <code><a href=#the-div-element>div</a></code>;
81946 <code><a href=#the-dl-element>dl</a></code>;
81947 <code><a href=#the-em-element>em</a></code>;
81948 <code><a href=#the-embed-element>embed</a></code>;
81949 <code><a href=#the-fieldset-element>fieldset</a></code>;
81950 <code><a href=#the-figure-element>figure</a></code>;
81951 <code><a href=#the-footer-element>footer</a></code>;
81952 <code><a href=#the-form-element>form</a></code>;
81953 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>;
81954 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>;
81955 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>;
81956 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>;
81957 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>;
81958 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>;
81959 <code><a href=#the-header-element>header</a></code>;
81960 <code><a href=#the-hgroup-element>hgroup</a></code>;
81961 <code><a href=#the-hr-element>hr</a></code>;
81962 <code><a href=#the-i-element>i</a></code>;
81963 <code><a href=#the-iframe-element>iframe</a></code>;
81964 <code><a href=#the-img-element>img</a></code>;
81965 <code><a href=#the-input-element>input</a></code>;
81966 <code><a href=#the-ins-element>ins</a></code>;
81967 <code><a href=#the-kbd-element>kbd</a></code>;
81968 <code><a href=#the-keygen-element>keygen</a></code>;
81969 <code><a href=#the-label-element>label</a></code>;
81970 <code><a href=#the-map-element>map</a></code>;
81971 <code><a href=#the-mark-element>mark</a></code>;
81972 <code><a href=#math>math</a></code>;
81973 <code><a href=#menus>menu</a></code>;
81974 <code><a href=#the-meter-element>meter</a></code>;
81975 <code><a href=#the-nav-element>nav</a></code>;
81976 <code><a href=#the-noscript-element>noscript</a></code>;
81977 <code><a href=#the-object-element>object</a></code>;
81978 <code><a href=#the-ol-element>ol</a></code>;
81979 <code><a href=#the-output-element>output</a></code>;
81980 <code><a href=#the-p-element>p</a></code>;
81981 <code><a href=#the-pre-element>pre</a></code>;
81982 <code><a href=#the-progress-element>progress</a></code>;
81983 <code><a href=#the-q-element>q</a></code>;
81984 <code><a href=#the-ruby-element>ruby</a></code>;
81985 <code><a href=#the-samp-element>samp</a></code>;
81986 <code><a href=#script>script</a></code>;
81987 <code><a href=#the-section-element>section</a></code>;
81988 <code><a href=#the-select-element>select</a></code>;
81989 <code><a href=#the-small-element>small</a></code>;
81990 <code><a href=#the-span-element>span</a></code>;
81991 <code><a href=#the-strong-element>strong</a></code>;
81992 <code><a href=#the-sub-and-sup-elements>sub</a></code>;
81993 <code><a href=#the-sub-and-sup-elements>sup</a></code>;
81994 <code><a href=#svg>svg</a></code>;
81995 <code><a href=#the-table-element>table</a></code>;
81996 <code><a href=#the-textarea-element>textarea</a></code>;
81997 <code><a href=#the-time-element>time</a></code>;
81998 <code><a href=#the-ul-element>ul</a></code>;
81999 <code><a href=#the-var-element>var</a></code>;
82000 <code><a href=#video>video</a></code>;
82001 <code><a href=#the-wbr-element>wbr</a></code>;
82002 <a href=#text-content title="text content">Text</a>
82004 <code><a href=#the-area-element>area</a></code> (if it is a descendant of a <code><a href=#the-map-element>map</a></code> element);
82006 <code><a href=#the-link-element>link</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present);
82007 <code><a href=#meta>meta</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present);
82009 <code><a href=#the-style-element>style</a></code> (if the <code title=attr-style-scoped><a href=#attr-style-scoped>scoped</a></code> attribute is present)
82011 <tr><td> <a href=#sectioning-content>Sectioning content</a>
82013 <code><a href=#the-article-element>article</a></code>;
82014 <code><a href=#the-aside-element>aside</a></code>;
82015 <code><a href=#the-nav-element>nav</a></code>;
82016 <code><a href=#the-section-element>section</a></code>
82020 <tr><td> <a href=#heading-content>Heading content</a>
82022 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>;
82023 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>;
82024 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>;
82025 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>;
82026 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>;
82027 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>;
82028 <code><a href=#the-hgroup-element>hgroup</a></code>
82032 <tr><td> <a href=#phrasing-content>Phrasing content</a>
82034 <code><a href=#the-abbr-element>abbr</a></code>;
82035 <code><a href=#audio>audio</a></code>;
82036 <code><a href=#the-b-element>b</a></code>;
82037 <code><a href=#the-bdo-element>bdo</a></code>;
82038 <code><a href=#the-br-element>br</a></code>;
82039 <code><a href=#the-button-element>button</a></code>;
82040 <code><a href=#the-canvas-element>canvas</a></code>;
82041 <code><a href=#the-cite-element>cite</a></code>;
82042 <code><a href=#the-code-element>code</a></code>;
82043 <code><a href=#the-command>command</a></code>;
82044 <code><a href=#the-datalist-element>datalist</a></code>;
82045 <code><a href=#the-dfn-element>dfn</a></code>;
82046 <code><a href=#the-em-element>em</a></code>;
82047 <code><a href=#the-embed-element>embed</a></code>;
82048 <code><a href=#the-i-element>i</a></code>;
82049 <code><a href=#the-iframe-element>iframe</a></code>;
82050 <code><a href=#the-img-element>img</a></code>;
82051 <code><a href=#the-input-element>input</a></code>;
82052 <code><a href=#the-kbd-element>kbd</a></code>;
82053 <code><a href=#the-keygen-element>keygen</a></code>;
82054 <code><a href=#the-label-element>label</a></code>;
82055 <code><a href=#the-mark-element>mark</a></code>;
82056 <code><a href=#math>math</a></code>;
82057 <code><a href=#the-meter-element>meter</a></code>;
82058 <code><a href=#the-noscript-element>noscript</a></code>;
82059 <code><a href=#the-object-element>object</a></code>;
82060 <code><a href=#the-output-element>output</a></code>;
82061 <code><a href=#the-progress-element>progress</a></code>;
82062 <code><a href=#the-q-element>q</a></code>;
82063 <code><a href=#the-ruby-element>ruby</a></code>;
82064 <code><a href=#the-samp-element>samp</a></code>;
82065 <code><a href=#script>script</a></code>;
82066 <code><a href=#the-select-element>select</a></code>;
82067 <code><a href=#the-small-element>small</a></code>;
82068 <code><a href=#the-span-element>span</a></code>;
82069 <code><a href=#the-strong-element>strong</a></code>;
82070 <code><a href=#the-sub-and-sup-elements>sub</a></code>;
82071 <code><a href=#the-sub-and-sup-elements>sup</a></code>;
82072 <code><a href=#svg>svg</a></code>;
82073 <code><a href=#the-textarea-element>textarea</a></code>;
82074 <code><a href=#the-time-element>time</a></code>;
82075 <code><a href=#the-var-element>var</a></code>;
82076 <code><a href=#video>video</a></code>;
82077 <code><a href=#the-wbr-element>wbr</a></code>;
82078 <a href=#text-content title="text content">Text</a>
82080 <code><a href=#the-a-element>a</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>);
82081 <code><a href=#the-area-element>area</a></code> (if it is a descendant of a <code><a href=#the-map-element>map</a></code> element);
82082 <code><a href=#the-del-element>del</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>);
82083 <code><a href=#the-ins-element>ins</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>);
82085 <code><a href=#the-link-element>link</a></code> (if the <code title=attr-itemprop><a href
82087 <code><a href=#the-map-element>map</a></code> (if it contains only <a href=#phrasing-content>phrasing content</a>)<!--
82089 -->; <code><a href=#meta>meta</a></code> (if the <code title=attr-itemprop><a href=#names:-the-itemprop-attribute>itemprop</a></code> attribute is present)<!--
82093 <tr><td> <a href=#embedded-content>Embedded content</a>
82095 <code><a href=#audio>audio</a></code>
82096 <code><a href=#the-canvas-element>canvas</a></code>
82097 <code><a href=#the-embed-element>embed</a></code>
82098 <code><a href=#the-iframe-element>iframe</a></code>
82099 <code><a href=#the-img-element>img</a></code>
82100 <code><a href=#math>math</a></code>
82101 <code><a href=#the-object-element>object</a></code>
82102 <code><a href=#svg>svg</a></code>
82103 <code><a href=#video>video</a></code>
82107 <tr><td> <a href=#interactive-content>Interactive content</a>
82109 <code><a href=#the-a-element>a</a></code>;
82110 <code><a href=#the-button-element>button</a></code>;
82112 <code><a href=#the-details-element>details</a></code>;
82113 <code><a href=#the-embed-element>embed</a></code>;
82114 <code><a href=#the-iframe-element>iframe</a></code>;
82115 <code><a href=#the-keygen-element>keygen</a></code>;
82116 <code><a href=#the-label-element>label</a></code>;
82117 <code><a href=#the-select-element>select</a></code>;
82118 <code><a href=#the-textarea-element>textarea</a></code>;
82120 <code><a href=#audio>audio</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present);
82121 <code><a href=#the-img-element>img</a></code> (if the <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute is present);
82122 <code><a href=#the-input-element>input</a></code> (if the <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is <em>not</em> in the <a href=#hidden-state title=attr-input-type-hidden>Hidden</a> state);
82123 <code><a href=#menus>menu</a></code> (if the <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#toolbar-state title="toolbar state">toolbar</a> state);
82124 <code><a href=#the-object-element>object</a></code> (if the <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute is present)<!-- see also comment in <object> section -->;
82125 <code><a href=#video>video</a></code> (if the <code title=attr-media-controls><a href=#attr-media-controls>controls</a></code> attribute is present)
82127 <tr><td> <a href=#sectioning-root title="sectioning root">Sectioning roots</a>
82129 <code><a href=#the-blockquote-element>blockquote</a></code>;
82130 <code><a href=#the-body-element-0>body</a></code>;
82132 <code><a href=#the-details-element>details</a></code>;
82133 <code><a href=#the-fieldset-element>fieldset</a></code>;
82134 <code><a href=#the-figure-element>figure</a></code>;
82135 <code><a href=#the-td-element>td</a></code>
82139 <tr><td> <a href=#form-associated-element title="form-associated element">Form-associated elements</a>
82141 <code><a href=#the-button-element>button</a></code>;
82142 <code><a href=#the-fieldset-element>fieldset</a></code>;
82143 <code><a href=#the-input-element>input</a></code>;
82144 <code><a href=#the-keygen-element>keygen</a></code>;
82145 <code><a href=#the-label-element>label</a></code>;
82146 <code><a href=#the-meter-element>meter</a></code>;
82147 <code><a href=#the-object-element>object</a></code>;
82148 <code><a href=#the-output-element>output</a></code>;
82149 <code><a href=#the-progress-element>progress</a></code>;
82150 <code><a href=#the-select-element>select</a></code>;
82151 <code><a href=#the-textarea-element>textarea</a></code>
82155 <tr><td> <a href=#category-listed title=category-listed>Listed elements</a>
82157 <code><a href=#the-button-element>button</a></code>;
82158 <code><a href=#the-fieldset-element>fieldset</a></code>;
82159 <code><a href=#the-input-element>input</a></code>;
82160 <code><a href=#the-keygen-element>keygen</a></code>;
82161 <code><a href=#the-object-element>object</a></code>;
82162 <code><a href=#the-output-element>output</a></code>;
82163 <code><a href=#the-select-element>select</a></code>;
82164 <code><a href=#the-textarea-element>textarea</a></code>
82168 <tr><td> <a href=#category-label title=category-label>Labelable elements</a>
82170 <code><a href=#the-button-element>button</a></code>;
82171 <code><a href=#the-input-element>input</a></code>;
82172 <code><a href=#the-keygen-element>keygen</a></code>;
82173 <code><a href=#the-meter-element>meter</a></code>;
82174 <code><a href=#the-output-element>output</a></code>;
82175 <code><a href=#the-progress-element>progress</a></code>;
82176 <code><a href=#the-select-element>select</a></code>;
82177 <code><a href=#the-textarea-element>textarea</a></code>
82181 <tr><td> <a href=#category-submit title=category-submit>Submittable elements</a>
82183 <code><a href=#the-button-element>button</a></code>;
82184 <code><a href=#the-input-element>input</a></code>;
82185 <code><a href=#the-keygen-element>keygen</a></code>;
82186 <code><a href=#the-object-element>object</a></code>;
82187 <code><a href=#the-select-element>select</a></code>;
82188 <code><a href=#the-textarea-element>textarea</a></code>
82192 <tr><td> <a href=#category-reset title=category-reset>Resettable elements</a>
82194 <code><a href=#the-input-element>input</a></code>;
82195 <code><a href=#the-keygen-element>keygen</a></code>;
82196 <code><a href=#the-output-element>output</a></code>;
82197 <code><a href=#the-select-element>select</a></code>;
82198 <code><a href=#the-textarea-element>textarea</a></code>
82202 <tr><td> <a href=#formatblock-candidate title="formatBlock candidate"><code title="">formatBlock</code> candidates</a>
82204 <code><a href=#the-section-element>section</a></code>;
82205 <code><a href=#the-nav-element>nav</a></code>;
82206 <code><a href=#the-article-element>article</a></code>;
82207 <code><a href=#the-aside-element>aside</a></code>;
82208 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>;
82209 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>;
82210 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>;
82211 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>;
82212 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>;
82213 <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>;
82214 <code><a href=#the-hgroup-element>hgroup</a></code>;
82215 <code><a href=#the-header-element>header</a></code>;
82216 <code><a href=#the-footer-element>footer</a></code>;
82217 <code><a href=#the-address-element>address</a></code>;
82218 <code><a href=#the-p-element>p</a></code>;
82219 <code><a href=#the-pre-element>pre</a></code>;
82220 <code><a href=#the-blockquote-element>blockquote</a></code>;
82221 <code><a href=#the-div-element>div</a></code>
82235 <td> <code title=attr-input-accept><a href=#attr-input-accept>input</a></code>
82236 <td> Hint for expected file type in <a href=#file-upload-state title=attr-input-type-file>file upload controls</a>
82237 <td> <a href=#set-of-comma-separated-tokens>Set of comma-separated tokens</a>* consisting of <a href=#valid-mime-type title="valid MIME type">valid MIME types with no parameters</a> or <code title="">audio/*</code>, <code title="">video/*</code>, or <code title="">image/*</code>
82239 <td> <code title=attr-form-accept-charset><a href=#attr-form-accept-charset>form</a></code>
82240 <td> Character encodings to use for <a href=#form-submission>form submission</a>
82241 <td> <a href=#ordered-set-of-unique-space-separated-tokens>Ordered set of unique space-separated tokens</a> consisting of <a href=#preferred-mime-name title="preferred MIME name">preferred MIME names</a> of <a href=#ascii-compatible-character-encoding title="ASCII-compatible character encoding">ASCII-compatible character encodings</a>*
82243 <td> <a href=#the-accesskey-attribute title=attr-accesskey>HTML elements</a>
82245 <td> <a href=#ordered-set-of-unique-space-separated-tokens>Ordered set of unique space-separated tokens</a> consisting of one Unicode code point in length
82247 <td> <code title=attr-fs-action><a href=#attr-fs-action>form</a></code>
82248 <td> <a href=#url>URL</a> to use for <a href=#form-submission>form submission</a>
82249 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82251 <td> <code title=attr-area-alt><a href=#attr-area-alt>area</a></code>;
82252 <code title=attr-img-alt><a href=#attr-img-alt>img</a></code>;
82253 <code title=attr-input-alt><a href=#attr-input-alt>input</a></code>
82255 <td> <a href=#attribute-text>Text</a>*
82257 <td> <code title=attr-script-async><a href=#attr-script-async>script</a></code>
82259 <td> <a href=#boolean-attribute>Boolean attribute</a>
82261 <td> <code title=attr-form-autocomplete><a href=#attr-form-autocomplete>form</a></code>;
82262 <code title=attr-input-autocomplete><a href=#attr-input-autocomplete>input</a></code>
82266 <td> <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>button</a></code>;
82267 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>input</a></code>;
82268 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>keygen</a></code>;
82269 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>select</a></code>;
82270 <code title=attr-fe-autofocus><a href=#attr-fe-autofocus>textarea</a></code>
82272 <td> <a href=#boolean-attribute>Boolean attribute</a>
82274 <td> <code title=attr-media-autoplay><a href=#attr-media-autoplay>audio</a></code>;
82275 <code title=attr-media-autoplay><a href=#attr-media-autoplay>video</a></code>
82276 <td> Hint that the <a href=#media-resource>media resource</a> can be started automatically when the page is loaded
82277 <td> <a href=#boolean-attribute>Boolean attribute</a>
82279 <td> <code title=attr-keygen-challenge><a href=#attr-keygen-challenge>keygen</a></code>
82281 <td> <a href=#attribute-text>Text</a>
82283 <td> <code title=attr-meta-charset><a href=#attr-meta-charset>meta</a></code>
82284 <td> <a href=#character-encoding-declaration>Character encoding declaration</a>
82285 <td> <a href=#preferred-mime-name>Preferred MIME name</a> of an encoding*
82287 <td> <code title=attr-script-charset><a href=#attr-script-charset>script</a></code>
82289 <td> <a href=#preferred-mime-name>Preferred MIME name</a> of an encoding*
82291 <td> <code title=attr-command-checked><a href=#attr-command-checked>command</a></code>;
82292 <code title=attr-input-checked><a href=#attr-input-checked>input</a></code>
82294 <td> <a href=#boolean-attribute>Boolean attribute</a>
82296 <td> <code title=attr-blockquote-cite><a href=#attr-blockquote-cite>blockquote</a></code>;
82297 <code title=attr-mod-cite><a href=#attr-mod-cite>del</a></code>;
82298 <code title=attr-mod-cite><a href=#attr-mod-cite>ins</a></code>;
82299 <code title=attr-q-cite><a href=#attr-q-cite>q</a></code>
82301 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82303 <td> <a href=#classes title=attr-class>HTML elements</a>
82305 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a>
82307 <td> <code title=attr-textarea-cols><a href=#attr-textarea-cols>textarea</a></code>
82309 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a> greater than zero
82311 <td> <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>td</a></code>;
82312 <code title=attr-tdth-colspan><a href=#attr-tdth-colspan>th</a></code>
82314 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a> greater than zero
82316 <td> <code title=attr-meta-content><a href=#attr-meta-content>meta</a></code>
82318 <td> <a href=#attribute-text>Text</a>*
82320 <td> <a href=#attr-contenteditable title=attr-contenteditable>HTML elements</a>
82321 <td> Whether the element is <a href=#editable>editable</a>
82324 <td> <a href=#attr-contextmenu title=attr-contextmenu>HTML elements</a>
82328 <td> <code title=attr-media-controls><a href=#attr-media-controls>audio</a></code>;
82329 <code title=attr-media-controls><a href=#attr-media-controls>video</a></code>
82331 <td> <a href=#boolean-attribute>Boolean attribute</a>
82333 <td> <code title=attr-area-coords><a href=#attr-area-coords>area</a></code>
82334 <td> Coordinates for the shape to be created in an <a href=#image-map>image map</a>
82335 <td> <a href=#valid-list-of-integers>Valid list of integers</a>*
82337 <td> <code title=attr-object-data><a href=#attr-object-data>object</a></code>
82339 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82341 <td> <code title=attr-mod-datetime><a href=#attr-mod-datetime>del</a></code>;
82342 <code title=attr-mod-datetime><a href=#attr-mod-datetime>ins</a></code>
82344 <td> <a href=#valid-global-date-and-time-string>Valid global date and time string</a>
82346 <td> <code title=attr-time-datetime><a href=#attr-time-datetime>time</a></code>
82348 <td> <a href=#valid-date-or-time-string>Valid date or time string</a>*
82350 <td> <code title=attr-script-defer><a href=#attr-script-defer>script</a></code>
82352 <td> <a href=#boolean-attribute>Boolean attribute</a>
82354 <td> <a href=#the-dir-attribute title=attr-dir>HTML elements</a>
82355 <td> <a href=#the-directionality title="the directionality">The text directionality</a> of the element
82358 <td> <code title=attr-fe-disabled><a href=#attr-fe-disabled>button</a></code>;
82359 <code title=attr-command-disabled><a href=#attr-command-disabled>command</a></code>;
82360 <code title=attr-fieldset-disabled><a href=#attr-fieldset-disabled>fieldset</a></code>;
82361 <code title=attr-fe-disabled><a href=#attr-fe-disabled>input</a></code>;
82362 <code title=attr-fe-disabled><a href=#attr-fe-disabled>keygen</a></code>;
82363 <code title=attr-optgroup-disabled><a href=#attr-optgroup-disabled>optgroup</a></code>;
82364 <code title=attr-option-disabled><a href=#attr-option-disabled>option</a></code>;
82365 <code title=attr-fe-disabled><a href=#attr-fe-disabled>select</a></code>;
82366 <code title=attr-fe-disabled><a href=#attr-fe-disabled>textarea</a></code>
82368 <td> <a href=#boolean-attribute>Boolean attribute</a>
82370 <td> <a href=#the-draggable-attribute title=attr-draggable>HTML elements</a>
82374 <td> <code title=attr-fs-enctype><a href=#attr-fs-enctype>form</a></code>
82375 <td> Form data set encoding type to use for <a href=#form-submission>form submission</a>
82376 <td> "<code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code>"; "<code title=attr-fs-enctype-formdata><a href=#attr-fs-enctype-formdata>multipart/form-data</a></code>"; "<code title=attr-fs-enctype-text><a href=#attr-fs-enctype-text>text/plain</a></code>"
82378 <td> <code title=attr-label-for><a href=#attr-label-for>label</a></code>
82382 <td> <code title=attr-output-for><a href=#attr-output-for>output</a></code>
82384 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of IDs*
82386 <td> <code title=attr-fae-form><a href=#attr-fae-form>button</a></code>;
82387 <code title=attr-fae-form><a href=#attr-fae-form>fieldset</a></code>;
82388 <code title=attr-fae-form><a href=#attr-fae-form>input</a></code>;
82389 <code title=attr-fae-form><a href=#attr-fae-form>keygen</a></code>;
82390 <code title=attr-fae-form><a href=#attr-fae-form>label</a></code>;
82391 <code title=attr-fae-form><a href=#attr-fae-form>meter</a></code>;
82392 <code title=attr-fae-form><a href=#attr-fae-form>object</a></code>;
82393 <code title=attr-fae-form><a href=#attr-fae-form>output</a></code>;
82394 <code title=attr-fae-form><a href=#attr-fae-form>progress</a></code>;
82395 <code title=attr-fae-form><a href=#attr-fae-form>select</a></code>;
82396 <code title=attr-fae-form><a href=#attr-fae-form>textarea</a></code>
82397 <td> Associates the control with a <code><a href=#the-form-element>form</a></code> element
82400 <td> <code title=attr-fs-formaction><a href=#attr-fs-formaction>button</a></code>;
82401 <code title=attr-fs-formaction><a href=#attr-fs-formaction>input</a></code>
82402 <td> <a href=#url>URL</a> to use for <a href=#form-submission>form submission</a>
82403 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82405 <td> <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>button</a></code>;
82406 <code title=attr-fs-formenctype><a href=#attr-fs-formenctype>input</a></code>
82407 <td> Form data set encoding type to use for <a href=#form-submission>form submission</a>
82408 <td> "<code title=attr-fs-enctype-urlencoded><a href=#attr-fs-enctype-urlencoded>application/x-www-form-urlencoded</a></code>"; "<code title=attr-fs-enctype-formdata><a href=#attr-fs-enctype-formdata>multipart/form-data</a></code>"; "<code title=attr-fs-enctype-text><a href=#attr-fs-enctype-text>text/plain</a></code>"
82410 <td> <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>button</a></code>;
82411 <code title=attr-fs-formmethod><a href=#attr-fs-formmethod>input</a></code>
82412 <td> HTTP method to use for <a href=#form-submission>form submission</a>
82415 <td> <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>button</a></code>;
82416 <code title=attr-fs-formnovalidate><a href=#attr-fs-formnovalidate>input</a></code>
82417 <td> Bypass form control validation for <a href=#form-submission>form submission</a>
82418 <td> <a href=#boolean-attribute>Boolean attribute</a>
82420 <td> <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>button</a></code>;
82421 <code title=attr-fs-formtarget><a href=#attr-fs-formtarget>input</a></code>
82422 <td> <a href=#browsing-context>Browsing context</a> for <a href=#form-submission>form submission</a>
82423 <td> <a href=#valid-browsing-context-name-or-keyword>Valid browsing context name or keyword</a>
82425 <td> <code title=attr-tdth-headers><a href=#attr-tdth-headers>td</a></code>;
82426 <code title=attr-tdth-headers><a href=#attr-tdth-headers>th</a></code>
82428 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of IDs*
82430 <td> <code title=attr-canvas-height><a href=#attr-canvas-height>canvas</a></code>;
82431 <code title=attr-dim-height><a href=#attr-dim-height>embed</a></code>;
82432 <code title=attr-dim-height><a href=#attr-dim-height>iframe</a></code>;
82433 <code title=attr-dim-height><a href=#attr-dim-height>img</a></code>;
82434 <code title=attr-dim-height><a href=#attr-dim-height>input</a></code>;
82435 <code title=attr-dim-height><a href=#attr-dim-height>object</a></code>;
82436 <code title=attr-dim-height><a href=#attr-dim-height>video</a></code>
82438 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a>
82440 <td> <a href=#the-hidden-attribute title=attr-hidden>HTML elements</a>
82442 <td> <a href=#boolean-attribute>Boolean attribute</a>
82444 <td> <code title=attr-meter-high><a href=#attr-meter-high>meter</a></code>
82446 <td> <a href=#valid-floating-point-number>Valid floating point number</a>*
82447 <tr><th> <code title="">href</code>
82448 <td> <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>a</a></code>;
82449 <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>area</a></code>
82450 <td> Address of the <a href=#hyperlink>hyperlink</a>
82451 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82452 <tr><th> <code title="">href</code>
82453 <td> <code title=attr-link-href><a href=#attr-link-href>link</a></code>
82454 <td> Address of the <a href=#hyperlink>hyperlink</a>
82455 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82456 <tr><th> <code title="">href</code>
82457 <td> <code title=attr-base-href><a href=#attr-base-href>base</a></code>
82458 <td> <a href=#document-base-url>Document base URL</a>
82459 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82461 <td> <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>a</a></code>;
82462 <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>area</a></code>;
82463 <code title=attr-link-hreflang><a href=#attr-link-hreflang>link</a></code>
82467 <td> <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>meta</a></code>
82469 <td> <a href=#attribute-text>Text</a>*
82471 <td> <code title=attr-command-icon><a href=#attr-command-icon>command</a></code>
82473 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82475 <td> <a href=#the-id-attribute title=attr-id>HTML elements</a>
82476 <td> The element's <a href=#concept-id title=concept-id>ID</a>
82477 <td> <a href=#attribute-text>Text</a>*
82479 <td> <code title=attr-img-ismap><a href=#attr-img-ismap>img</a></code>
82481 <td> <a href=#boolean-attribute>Boolean attribute</a>
82484 <td> <a href=#attr-itemid title=attr-itemid>HTML elements</a>
82485 <td> <a href=#global-identifier>Global identifier</a> for a microdata item
82486 <td> <a href=#valid-url-potentially-surrounded-by-spaces>Valid URL potentially surrounded by spaces</a>
82488 <td> <a href=#names:-the-itemprop-attribute title=attr-itemprop>HTML elements</a>
82489 <td> <a href=#property-names>Property names</a> of a microdata item
82490 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of <a href=#absolute-url title="absolute URL">valid absolute URLs</a>, <a href=#defined-property-name title="defined property name">defined property names</a>, or text*
82492 <td> <code title=attr-itemref><a href=#attr-itemref>itemref</a></code>
82494 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of IDs*
82496 <td> <a href=#attr-itemscope title=attr-itemscope>HTML elements</a>
82498 <td> <a href=#boolean-attribute>Boolean attribute</a>
82500 <td> <a href=#attr-itemtype title=attr-itemtype>HTML elements</a>
82501 <td> <a href=#item-type>Item type</a> of a microdata item
82502 <td> <a href=#absolute-url title="absolute URL">Valid absolute URL</a>*
82505 <td> <code title=attr-keygen-keytype><a href=#attr-keygen-keytype>keygen</a></code>
82507 <td> <a href=#attribute-text>Text</a>*
82510 <td> <code title=attr-track-kind><a href=#attr-track-kind>track</a></code>
82512 <td> "<code title=attr-track-kind-subtitles><a href=#attr-track-kind-subtitles>subtitles</a></code>";
82513 "<code title=attr-track-kind-captions><a href=#attr-track-kind-captions>captions</a></code>";
82514 "<code title=attr-track-kind-descriptions><a href=#attr-track-kind-descriptions>descriptions</a></code>";
82515 "<code title=attr-track-kind-chapters><a href=#attr-track-kind-chapters>chapters</a></code>";
82516 "<code title=attr-track-kind-metadata><a href=#attr-track-kind-metadata>metadata</a></code>"
82519 <td> <code title=attr-command-label><a href=#attr-command-label>command</a></code>;
82520 <code title=attr-menu-label><a href=#attr-menu-label>menu</a></code>;
82521 <code title=attr-optgroup-label><a href=#attr-optgroup-label>optgroup</a></code>;
82522 <code title=attr-option-label><a href=#attr-option-label>option</a></code>;
82524 <code title=attr-track-label><a href=#attr-track-label>track</a></code>
82527 <td> <a href=#attribute-text>Text</a>
82529 <td> <a href=#attr-lang title=attr-lang>HTML elements</a>
82530 <td> <a href=#language>Language</a> of the element
82533 <td> <code title=attr-input-list><a href=#attr-input-list>input</a></code>
82537 <td> <code title=attr-media-loop><a href=#attr-media-loop>audio</a></code>;
82538 <code title=attr-media-loop><a href=#attr-media-loop>video</a></code>
82539 <td> Whether to loop the <a href=#media-resource>media resource</a>
82540 <td> <a href=#boolean-attribute>Boolean attribute</a>
82542 <td> <code title=attr-meter-low><a href=#attr-meter-low>meter</a></code>
82544 <td> <a href=#valid-floating-point-number>Valid floating point number</a>*
82546 <td> <code title=attr-html-manifest><a href=#attr-html-manifest>html</a></code>
82547 <td> <a href=#concept-appcache-manifest title=concept-appcache-manifest>Application cache manifest</a>
82548 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82550 <td> <code title=attr-input-max><a href=#attr-input-max>input</a></code>
82554 <td> <code title=attr-meter-max><a href=#attr-meter-max>meter</a></code>;
82555 <code title=attr-progress-max><a href=#attr-progress-max>progress</a></code>
82557 <td> <a href=#valid-floating-point-number>Valid floating point number</a>*
82559 <td> <code title=attr-input-maxlength><a href=#attr-input-maxlength>input</a></code>;
82560 <code title=attr-textarea-maxlength><a href=#attr-textarea-maxlength>textarea</a></code>
82562 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a>
82564 <td> <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>a</a></code>;
82565 <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>area</a></code>;
82566 <code title=attr-link-media><a href=#attr-link-media>link</a></code>;
82567 <code title=attr-source-media><a href=#attr-source-media>source</a></code>;
82568 <code title=attr-style-media><a href=#attr-style-media>style</a></code>
82570 <td> <a href=#valid-media-query>Valid media query</a>
82572 <td> <code title=attr-fs-method><a href=#attr-fs-method>form</a></code>
82573 <td> HTTP method to use for <a href=#form-submission>form submission</a>
82576 <td> <code title=attr-input-min><a href=#attr-input-min>input</a></code>
82580 <td> <code title=attr-meter-min><a href=#attr-meter-min>meter</a></code>
82582 <td> <a href=#valid-floating-point-number>Valid floating point number</a>*
82584 <td> <code title=attr-input-multiple><a href=#attr-input-multiple>input</a></code>;
82585 <code title=attr-select-multiple><a href=#attr-select-multiple>select</a></code>
82587 <td> <a href=#boolean-attribute>Boolean attribute</a>
82589 <td> <code title=attr-fe-name><a href=#attr-fe-name>button</a></code>;
82590 <code title=attr-fe-name><a href=#attr-fe-name>fieldset</a></code>;
82591 <code title=attr-fe-name><a href=#attr-fe-name>input</a></code>;
82592 <code title=attr-fe-name><a href=#attr-fe-name>keygen</a></code>;
82593 <code title=attr-fe-name><a href=#attr-fe-name>output</a></code>;
82594 <code title=attr-fe-name><a href=#attr-fe-name>select</a></code>;
82595 <code title=attr-fe-name><a href=#attr-fe-name>textarea</a></code>
82596 <td> Name of form control to use for <a href=#form-submission>form submission</a> and in the <code title=dom-form-elements><a href=#dom-form-elements>form.elements</a></code> API
82597 <td> <a href=#attribute-text>Text</a>*
82599 <td> <code title=attr-form-name><a href=#attr-form-name>form</a></code>
82600 <td> Name of form to use in the <code title=dom-document-forms><a href=#dom-document-forms>document.forms</a></code> API
82601 <td> <a href=#attribute-text>Text</a>*
82603 <td> <code title=attr-iframe-name><a href=#attr-iframe-name>iframe</a></code>;
82604 <code title=attr-object-name><a href=#attr-object-name>object</a></code>
82605 <td> Name of <a href=#nested-browsing-context>nested browsing context</a>
82606 <td> <a href=#valid-browsing-context-name-or-keyword>Valid browsing context name or keyword</a>
82608 <td> <code title=attr-map-name><a href=#attr-map-name>map</a></code>
82609 <td> Name of <a href=#image-map>image map</a> to reference from the <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>usemap</a></code> attribute
82610 <td> <a href=#attribute-text>Text</a>*
82612 <td> <code title=attr-meta-name><a href=#attr-meta-name>meta</a></code>
82614 <td> <a href=#attribute-text>Text</a>*
82616 <td> <code title=attr-param-name><a href=#attr-param-name>param</a></code>
82618 <td> <a href=#attribute-text>Text</a>
82620 <td> <code title=attr-fs-novalidate><a href=#attr-fs-novalidate>form</a></code>
82621 <td> Bypass form control validation for <a href=#form-submission>form submission</a>
82622 <td> <a href=#boolean-attribute>Boolean attribute</a>
82624 <td> <code title=attr-details-open><a href=#attr-details-open>details</a></code>
82626 <td> <a href=#boolean-attribute>Boolean attribute</a>
82628 <td> <code title=attr-meter-optimum><a href=#attr-meter-optimum>meter</a></code>
82630 <td> <a href=#valid-floating-point-number>Valid floating point number</a>*
82632 <td> <code title=attr-input-pattern><a href=#attr-input-pattern>input</a></code>
82637 <td> <code title=attr-hyperlink-ping><a href=#ping>a</a></code>;
82638 <code title=attr-hyperlink-ping><a href=#ping>area</a></code>
82639 <td> <a href=#url title=URL>URLs</a> to ping
82640 <td> <a href=#set-of-space-separated-tokens>Set of space-separated tokens</a> consisting of <a href=#valid-non-empty-url title="valid non-empty URL">valid non-empty URLs</a>
82643 <td> <code title=attr-input-placeholder><a href=#attr-input-placeholder>input</a></code>;
82644 <code title=attr-textarea-placeholder><a href=#attr-textarea-placeholder>textarea</a></code>
82646 <td> <a href=#attribute-text>Text</a>*
82648 <td> <code title=attr-video-poster><a href=#attr-video-poster>video</a></code>
82650 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82652 <td> <code title=attr-media-preload><a href=#attr-media-preload>audio</a></code>;
82653 <code title=attr-media-preload><a href=#attr-media-preload>video</a></code>
82654 <td> Hints how much buffering the <a href=#media-resource>media resource</a> will likely need
82655 <td> "<code title=attr-media-preload-none><a href=#attr-media-preload-none>none</a></code>";
82656 "<code title=attr-media-preload-metadata><a href=#attr-media-preload-metadata>metadata</a></code>";
82657 "<code title=attr-media-preload-auto><a href=#attr-media-preload-auto>auto</a></code>"
82659 <td> <code title=attr-time-pubdate><a href=#attr-time-pubdate>time</a></code>
82660 <td> Whether the element's value represents a publication time for the nearest <code><a href=#the-article-element>article</a></code> or <code><a href=#the-body-element-0>body</a></code>
82661 <td> <a href=#boolean-attribute>Boolean attribute</a>
82663 <td> <code title=attr-command-radiogroup><a href=#attr-command-radiogroup>command</a></code>
82665 <td> <a href=#attribute-text>Text</a>
82667 <td> <code title=attr-input-readonly><a href=#attr-input-readonly>input</a></code>;
82668 <code title=attr-textarea-readonly><a href=#attr-textarea-readonly>textarea</a></code>
82670 <td> <a href=#boolean-attribute>Boolean attribute</a>
82672 <td> <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>a</a></code>;
82673 <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>area</a></code>;
82674 <code title=attr-link-rel><a href=#attr-link-rel>link</a></code>
82676 <td> <a href=#set-of-space-separated-tokens>Set of space-separated tokens</a>*
82678 <td> <code title=attr-input-required><a href=#attr-input-required>input</a></code>;
82679 <code title=attr-textarea-required><a href=#attr-textarea-required>textarea</a></code>
82680 <td> Whether the control is required for <a href=#form-submission>form submission</a>
82681 <td> <a href=#boolean-attribute>Boolean attribute</a>
82683 <td> <code title=attr-ol-reversed><a href=#attr-ol-reversed>ol</a></code>
82685 <td> <a href=#boolean-attribute>Boolean attribute</a>
82687 <td> <code title=attr-textarea-rows><a href=#attr-textarea-rows>textarea</a></code>
82689 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a> greater than zero
82691 <td> <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>td</a></code>;
82692 <code title=attr-tdth-rowspan><a href=#attr-tdth-rowspan>th</a></code>
82694 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a>
82696 <td> <code title=attr-iframe-sandbox><a href=#attr-iframe-sandbox>iframe</a></code>
82698 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of
82699 "<code title=attr-iframe-sandbox-allow-same-origin><a href=#attr-iframe-sandbox-allow-same-origin>allow-same-origin</a></code>",
82700 "<code title=attr-iframe-sandbox-allow-forms><a href=#attr-iframe-sandbox-allow-forms>allow-forms</a></code>", and
82701 "<code title=attr-iframe-sandbox-allow-scripts><a href=#attr-iframe-sandbox-allow-scripts>allow-scripts</a></code>"
82703 <td> <a href=#attr-spellcheck title=attr-spellcheck>HTML elements</a>
82707 <td> <code title=attr-th-scope><a href=#attr-th-scope>th</a></code>
82709 <td> "<code title=attr-th-scope-row><a href=#attr-th-scope-row>row</a></code>";
82710 "<code title=attr-th-scope-col><a href=#attr-th-scope-col>col</a></code>";
82711 "<code title=attr-th-scope-rowgroup><a href=#attr-th-scope-rowgroup>rowgroup</a></code>";
82712 "<code title=attr-th-scope-colgroup><a href=#attr-th-scope-colgroup>colgroup</a></code>"
82714 <td> <code title=attr-style-scoped><a href=#attr-style-scoped>style</a></code>
82716 <td> <a href=#boolean-attribute>Boolean attribute</a>
82718 <td> <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>iframe</a></code>
82720 <td> <a href=#boolean-attribute>Boolean attribute</a>
82722 <td> <code title=attr-option-selected><a href=#attr-option-selected>option</a></code>
82724 <td> <a href=#boolean-attribute>Boolean attribute</a>
82726 <td> <code title=attr-area-shape><a href=#attr-area-shape>area</a></code>
82727 <td> The kind of shape to be created in an <a href=#image-map>image map</a>
82728 <td> "<code title=attr-area-shape-keyword-circle><a href=#attr-area-shape-keyword-circle>circle</a></code>";
82729 "<code title=attr-area-shape-keyword-default><a href=#attr-area-shape-keyword-default>default</a></code>";
82730 "<code title=attr-area-shape-keyword-poly><a href=#attr-area-shape-keyword-poly>poly</a></code>";
82731 "<code title=attr-area-shape-keyword-rect><a href=#attr-area-shape-keyword-rect>rect</a></code>"
82733 <td> <code title=attr-input-size><a href=#attr-input-size>input</a></code>;
82734 <code title=attr-select-size><a href=#attr-select-size>select</a></code>
82736 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a> greater than zero
82738 <td> <code title=attr-link-sizes><a href=#attr-link-sizes>link</a></code>
82739 <td> Sizes of the icons (for <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code>="<code title=rel-icon><a href=#rel-icon>icon</a></code>")
82740 <td> <a href=#unordered-set-of-unique-space-separated-tokens>Unordered set of unique space-separated tokens</a> consisting of sizes*
82742 <td> <code title=attr-col-span><a href=#attr-col-span>col</a></code>;
82743 <code title=attr-colgroup-span><a href=#attr-colgroup-span>colgroup</a></code>
82745 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a> greater than zero
82747 <td> <code title=attr-media-src><a href=#attr-media-src>audio</a></code>;
82748 <code title=attr-embed-src><a href=#attr-embed-src>embed</a></code>;
82749 <code title=attr-iframe-src><a href=#attr-iframe-src>iframe</a></code>;
82750 <code title=attr-img-src><a href=#attr-img-src>img</a></code>;
82751 <code title=attr-input-src><a href=#attr-input-src>input</a></code>;
82752 <code title=attr-script-src><a href=#attr-script-src>script</a></code>;
82753 <code title=attr-source-src><a href=#attr-source-src>source</a></code>;
82755 <code title=attr-track-src><a href=#attr-track-src>track</a></code>;
82757 <code title=attr-media-src><a href=#attr-media-src>video</a></code>
82759 <td> <a href=#valid-non-empty-url-potentially-surrounded-by-spaces>Valid non-empty URL potentially surrounded by spaces</a>
82761 <td> <code title=attr-iframe-srcdoc><a href=#attr-iframe-srcdoc>iframe</a></code>
82762 <td> A document to render in the <code><a href=#the-iframe-element>iframe</a></code>
82763 <td> The source of <a href=#an-iframe-srcdoc-document>an <code>iframe</code> <code title=attr-iframe-srcdoc>srcdoc</code> document</a>*
82766 <td> <code title=attr-track-srclang><a href=#attr-track-srclang>track</a></code>
82771 <td> <code title=attr-ol-start><a href=#attr-ol-start>ol</a></code>
82773 <td> <a href=#valid-integer>Valid integer</a>
82775 <td> <code title=attr-input-step><a href=#attr-input-step>input</a></code>
82777 <td> <a href=#valid-floating-point-number>Valid floating point number</a> greater than zero, or "<code title="">any</code>"
82779 <td> <a href=#the-style-attribute title=attr-style>HTML elements</a>
82783 <td> <code title=attr-table-summary><a href=#attr-table-summary>table</a></code>
82785 <td> <a href=#attribute-text>Text</a>*
82787 <td> <a href=#attr-tabindex title=attr-tabindex>HTML elements</a>
82789 <td> <a href=#valid-integer>Valid integer</a>
82791 <td> <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>a</a></code>;
82792 <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>area</a></code>
82793 <td> <a href=#browsing-context>Browsing context</a> for <a href=#hyperlink>hyperlink</a> <a href=#navigate title=navigate>navigation</a>
82794 <td> <a href=#valid-browsing-context-name-or-keyword>Valid browsing context name or keyword</a>
82796 <td> <code title=attr-base-target><a href=#attr-base-target>base</a></code>
82797 <td> Default <a href=#browsing-context>browsing context</a> for <a href=#hyperlink>hyperlink</a> <a href=#navigate title=navigate>navigation</a> and <a href=#form-submission>form submission</a>
82798 <td> <a href=#valid-browsing-context-name-or-keyword>Valid browsing context name or keyword</a>
82800 <td> <code title=attr-fs-target><a href=#attr-fs-target>form</a></code>
82801 <td> <a href=#browsing-context>Browsing context</a> for <a href=#form-submission>form submission</a>
82802 <td> <a href=#valid-browsing-context-name-or-keyword>Valid browsing context name or keyword</a>
82804 <td> <a href=#the-title-attribute title=attr-title>HTML elements</a>
82806 <td> <a href=#attribute-text>Text</a>
82808 <td> <code title=attr-abbr-title><a href=#attr-abbr-title>abbr</a></code>;
82809 <code title=attr-dfn-title><a href=#attr-dfn-title>dfn</a></code>
82811 <td> <a href=#attribute-text>Text</a>
82813 <td> <code title=attr-command-title><a href=#attr-command-title>command</a></code>
82815 <td> <a href=#attribute-text>Text</a>
82817 <td> <code title=attr-link-title><a href=#attr-link-title>link</a></code>
82819 <td> <a href=#attribute-text>Text</a>
82821 <td> <code title=attr-link-title><a href=#attr-link-title>link</a></code>;
82822 <code title=attr-style-title><a href=#attr-style-title>style</a></code>
82824 <td> <a href=#attribute-text>Text</a>
82826 <td> <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>a</a></code>;
82827 <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>area</a></code>;
82828 <code title=attr-link-type><a href=#attr-link-type>link</a></code>
82830 <td> <a href=#valid-mime-type>Valid MIME type</a>
82832 <td> <code title=attr-button-type><a href=#attr-button-type>button</a></code>
82834 <td> "<code title=attr-button-type-submit><a href=#attr-button-type-submit>submit</a></code>";
82835 "<code title=attr-button-type-reset><a href=#attr-button-type-reset>reset</a></code>";
82836 "<code title=attr-button-type-button><a href=#attr-button-type-button>button</a></code>"
82838 <td> <code title=attr-button-type><a href=#attr-button-type>button</a></code>;
82839 <code title=attr-input-type><a href=#attr-input-type>input</a></code>
82841 <td> <a href=#attr-input-type title=attr-input-type><code>input</code> type keyword</a>
82843 <td> <code title=attr-command-type><a href=#attr-command-type>command</a></code>
82845 <td> "<code title=attr-command-type-keyword-command><a href=#attr-command-type-keyword-command>command</a></code>";
82846 "<code title=attr-command-type-keyword-checkbox><a href=#attr-command-type-keyword-checkbox>checkbox</a></code>";
82847 "<code title=attr-command-type-keyword-radio><a href=#attr-command-type-keyword-radio>radio</a></code>"
82849 <td> <code title=attr-embed-type><a href=#attr-embed-type>embed</a></code>;
82850 <code title=attr-object-type><a href=#attr-object-type>object</a></code>;
82851 <code title=attr-script-type><a href=#attr-script-type>script</a></code>;
82852 <code title=attr-source-type><a href=#attr-source-type>source</a></code>;
82853 <code title=attr-style-type><a href=#attr-style-type>style</a></code>
82855 <td> <a href=#valid-mime-type>Valid MIME type</a>
82857 <td> <code title=attr-menu-type><a href=#attr-menu-type>menu</a></code>
82859 <td> "<code title="context menu state"><a href=#context-menu-state>context</a></code>"; "<code title="toolbar state"><a href=#toolbar-state>toolbar</a></code>"
82861 <td> <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>img</a></code>;
82862 <code title=attr-hyperlink-usemap><a href=#attr-hyperlink-usemap>object</a></code>
82863 <td> Name of <a href=#image-map>image map</a> to use
82864 <td> <a href=#valid-hash-name-reference>Valid hash-name reference</a>*
82866 <td> <code title=attr-button-value><a href=#attr-button-value>button</a></code>;
82867 <code title=attr-option-value><a href=#attr-option-value>option</a></code>
82868 <td> Value to be used for <a href=#form-submission>form submission</a>
82869 <td> <a href=#attribute-text>Text</a>
82871 <td> <code title=attr-input-value><a href=#attr-input-value>input</a></code>
82875 <td> <code title=attr-li-value><a href=#attr-li-value>li</a></code>
82877 <td> <a href=#valid-integer>Valid integer</a>
82879 <td> <code title=attr-meter-value><a href=#attr-meter-value>meter</a></code>;
82880 <code title=attr-progress-value><a href=#attr-progress-value>progress</a></code>
82882 <td> <a href=#valid-floating-point-number>Valid floating point number</a>
82884 <td> <code title=attr-param-value><a href=#attr-param-value>param</a></code>
82886 <td> <a href=#attribute-text>Text</a>
82888 <td> <code title=attr-canvas-width><a href=#attr-canvas-width>canvas</a></code>;
82889 <code title=attr-dim-width><a href=#attr-dim-width>embed</a></code>;
82890 <code title=attr-dim-width><a href=#attr-dim-width>iframe</a></code>;
82891 <code title=attr-dim-width><a href=#attr-dim-width>img</a></code>;
82892 <code title=attr-dim-width><a href=#attr-dim-width>input</a></code>;
82893 <code title=attr-dim-width><a href=#attr-dim-width>object</a></code>;
82894 <code title=attr-dim-width><a href=#attr-dim-width>video</a></code>
82896 <td> <a href=#valid-non-negative-integer>Valid non-negative integer</a>
82898 <td> <code title=attr-textarea-wrap><a href=#attr-textarea-wrap>textarea</a></code>
82899 <td> How the value of the form control is to be wrapped for <a href=#form-submission>form submission</a>
82900 <td> "<code title=attr-textarea-wrap-soft><a href=#attr-textarea-wrap-soft>soft</a></code>";
82901 "<code title=attr-textarea-wrap-hard><a href=#attr-textarea-wrap-hard>hard</a></code>"
82910 <td> <a href=#handler-onabort title=handler-onabort>HTML elements</a>
82912 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82915 <td> <code title=handler-window-onafterprint><a href=#handler-window-onafterprint>body</a></code>
82916 <td> <code title=event-afterprint>afterprint</code> event handler for <code><a href=#window>Window</a></code> object
82917 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82920 <td> <code title=handler-window-onbeforeprint><a href=#handler-window-onbeforeprint>body</a></code>
82921 <td> <code title=event-beforeprint>beforeprint</code> event handler for <code><a href=#window>Window</a></code> object
82922 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82925 <td> <code title=handler-window-onbeforeunload><a href=#handler-window-onbeforeunload>body</a></code>
82926 <td> <code title=event-beforeunload>beforeunload</code> event handler for <code><a href=#window>Window</a></code> object
82927 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82930 <td> <code title=handler-window-onblur><a href=#handler-window-onblur>body</a></code>
82931 <td> <code title=event-blur>blur</code> event handler for <code><a href=#window>Window</a></code> object
82932 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82935 <td> <a href=#handler-onblur title=handler-onblur>HTML elements</a>
82937 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82940 <td> <a href=#handler-oncanplay title=handler-oncanplay>HTML elements</a>
82941 <td> <code title=event-media-canplay><a href=#event-media-canplay>canplay</a></code> event handler
82942 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82945 <td> <a href=#handler-oncanplaythrough title=handler-oncanplaythrough>HTML elements</a>
82946 <td> <code title=event-media-canplaythrough><a href=#event-media-canplaythrough>canplaythrough</a></code> event handler
82947 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82950 <td> <a href=#handler-onchange title=handler-onchange>HTML elements</a>
82952 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82955 <td> <a href=#handler-onclick title=handler-onclick>HTML elements</a>
82956 <td> <code title=event-click><a href=#event-click>click</a></code> event handler
82957 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82960 <td> <a href=#handler-oncontextmenu title=handler-oncontextmenu>HTML elements</a>
82962 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82965 <td> <a href=#handler-ondblclick title=handler-ondblclick>HTML elements</a>
82967 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82970 <td> <a href=#handler-ondrag title=handler-ondrag>HTML elements</a>
82971 <td> <code title=event-drag><a href=#event-drag>drag</a></code> event handler
82972 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82975 <td> <a href=#handler-ondragend title=handler-ondragend>HTML elements</a>
82976 <td> <code title=event-dragend><a href=#event-dragend>dragend</a></code> event handler
82977 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82980 <td> <a href=#handler-ondragenter title=handler-ondragenter>HTML elements</a>
82981 <td> <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code> event handler
82982 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82985 <td> <a href=#handler-ondragleave title=handler-ondragleave>HTML elements</a>
82986 <td> <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code> event handler
82987 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82990 <td> <a href=#handler-ondragover title=handler-ondragover>HTML elements</a>
82991 <td> <code title=event-dragover><a href=#event-dragover>dragover</a></code> event handler
82992 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
82995 <td> <a href=#handler-ondragstart title=handler-ondragstart>HTML elements</a>
82996 <td> <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event handler
82997 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83000 <td> <a href=#handler-ondrop title=handler-ondrop>HTML elements</a>
83001 <td> <code title=event-drop><a href=#event-drop>drop</a></code> event handler
83002 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83005 <td> <a href=#handler-ondurationchange title=handler-ondurationchange>HTML elements</a>
83006 <td> <code title=event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> event handler
83007 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83010 <td> <a href=#handler-onemptied title=handler-onemptied>HTML elements</a>
83011 <td> <code title=event-media-emptied><a href=#event-media-emptied>emptied</a></code> event handler
83012 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83015 <td> <a href=#handler-onended title=handler-onended>HTML elements</a>
83016 <td> <code title=event-media-ended><a href=#event-media-ended>ended</a></code> event handler
83017 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83020 <td> <code title=handler-window-onerror><a href=#handler-window-onerror>body</a></code>
83021 <td> <code title=event-error>error</code> event handler for <code><a href=#window>Window</a></code> object, and handler for <a href=#runtime-script-errors>script error notifications</a>
83022 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83025 <td> <a href=#handler-onerror title=handler-onerror>HTML elements</a>
83027 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83030 <td> <code title=handler-window-onfocus><a href=#handler-window-onfocus>body</a></code>
83031 <td> <code title=event-focus>focus</code> event handler for <code><a href=#window>Window</a></code> object
83032 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83035 <td> <a href=#handler-onfocus title=handler-onfocus>HTML elements</a>
83037 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83040 <td> <a href=#handler-onformchange title=handler-onformchange>HTML elements</a>
83042 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83045 <td> <a href=#handler-onforminput title=handler-onforminput>HTML elements</a>
83047 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83050 <td> <code title=handler-window-onhashchange><a href=#handler-window-onhashchange>body</a></code>
83051 <td> <code title=event-hashchange><a href=#event-hashchange>hashchange</a></code> event handler for <code><a href=#window>Window</a></code> object
83052 <td> <a href
83055 <td> <a href=#handler-oninput title=handler-oninput>HTML elements</a>
83057 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83060 <td> <a href=#handler-oninvalid title=handler-oninvalid>HTML elements</a>
83062 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83065 <td> <a href=#handler-onkeydown title=handler-onkeydown>HTML elements</a>
83067 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83070 <td> <a href=#handler-onkeypress title=handler-onkeypress>HTML elements</a>
83072 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83075 <td> <a href=#handler-onkeyup title=handler-onkeyup>HTML elements</a>
83077 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83080 <td> <code title=handler-window-onload><a href=#handler-window-onload>body</a></code>
83081 <td> <code title=event-load>load</code> event handler for <code><a href=#window>Window</a></code> object
83082 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83085 <td> <a href=#handler-onload title=handler-onload>HTML elements</a>
83087 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83090 <td> <a href=#handler-onloadeddata title=handler-onloadeddata>HTML elements</a>
83091 <td> <code title=event-media-loadeddata><a href=#event-media-loadeddata>loadeddata</a></code> event handler
83092 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83095 <td> <a href=#handler-onloadedmetadata title=handler-onloadedmetadata>HTML elements</a>
83096 <td> <code title=event-media-loadedmetadata><a href=#event-media-loadedmetadata>loadedmetadata</a></code> event handler
83097 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83100 <td> <a href=#handler-onloadstart title=handler-onloadstart>HTML elements</a>
83101 <td> <code title=event-media-loadstart><a href=#event-media-loadstart>loadstart</a></code> event handler
83102 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83105 <td> <code title=handler-window-onmessage><a href=#handler-window-onmessage>body</a></code>
83106 <td> <code title=event-message><a href=#event-message>message</a></code> event handler for <code><a href=#window>Window</a></code> object
83107 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83110 <td> <a href=#handler-onmousedown title=handler-onmousedown>HTML elements</a>
83112 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83115 <td> <a href=#handler-onmousemove title=handler-onmousemove>HTML elements</a>
83117 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83120 <td> <a href=#handler-onmouseout title=handler-onmouseout>HTML elements</a>
83122 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83125 <td> <a href=#handler-onmouseover title=handler-onmouseover>HTML elements</a>
83127 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83130 <td> <a href=#handler-onmouseup title=handler-onmouseup>HTML elements</a>
83132 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83135 <td> <a href=#handler-onmousewheel title=handler-onmousewheel>HTML elements</a>
83137 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83140 <td> <code title=handler-window-onoffline><a href=#handler-window-onoffline>body</a></code>
83141 <td> <code title=event-offline><a href=#event-offline>offline</a></code> event handler for <code><a href=#window>Window</a></code> object
83142 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83145 <td> <code title=handler-window-ononline><a href=#handler-window-ononline>body</a></code>
83146 <td> <code title=event-online><a href=#event-online>online</a></code> event handler for <code><a href=#window>Window</a></code> object
83147 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83150 <td> <a href=#handler-onpause title=handler-onpause>HTML elements</a>
83151 <td> <code title=event-media-pause><a href=#event-media-pause>pause</a></code> event handler
83152 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83155 <td> <a href=#handler-onplay title=handler-onplay>HTML elements</a>
83156 <td> <code title=event-media-play><a href=#event-media-play>play</a></code> event handler
83157 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83160 <td> <a href=#handler-onplaying title=handler-onplaying>HTML elements</a>
83161 <td> <code title=event-media-playing><a href=#event-media-playing>playing</a></code> event handler
83162 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83165 <td> <code title=handler-window-onpagehide><a href=#handler-window-onpagehide>body</a></code>
83166 <td> <code title=event-pagehide><a href=#event-pagehide>pagehide</a></code> event handler for <code><a href=#window>Window</a></code> object
83167 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83170 <td> <code title=handler-window-onpageshow><a href=#handler-window-onpageshow>body</a></code>
83171 <td> <code title=event-pageshow><a href=#event-pageshow>pageshow</a></code> event handler for <code><a href=#window>Window</a></code> object
83172 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83175 <td> <code title=handler-window-onpopstate><a href=#handler-window-onpopstate>body</a></code>
83176 <td> <code title=event-popstate><a href=#event-popstate>popstate</a></code> event handler for <code><a href=#window>Window</a></code> object
83177 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83180 <td> <a href=#handler-onprogress title=handler-onprogress>HTML elements</a>
83181 <td> <code title=event-media-progress><a href=#event-media-progress>progress</a></code> event handler
83182 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83185 <td> <a href=#handler-onratechange title=handler-onratechange>HTML elements</a>
83186 <td> <code title=event-media-ratechange><a href=#event-media-ratechange>ratechange</a></code> event handler
83187 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83190 <td> <a href=#handler-onreadystatechange title=handler-onreadystatechange>HTML elements</a>
83192 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83195 <td> <code title=handler-window-onredo><a href=#handler-window-onredo>body</a></code>
83196 <td> <code title=event-redo><a href=#event-redo>redo</a></code> event handler for <code><a href=#window>Window</a></code> object
83197 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83200 <td> <code title=handler-window-onresize><a href=#handler-window-onresize>body</a></code>
83201 <td> <code title=event-resize>resize</code> event handler for <code><a href=#window>Window</a></code> object
83202 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83205 <td> <a href=#handler-onscroll title=handler-onscroll>HTML elements</a>
83207 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83210 <td> <a href=#handler-onseeked title=handler-onseeked>HTML elements</a>
83211 <td> <code title=event-media-seeked><a href=#event-media-seeked>seeked</a></code> event handler
83212 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83215 <td> <a href=#handler-onseeking title=handler-onseeking>HTML elements</a>
83216 <td> <code title=event-media-seeking><a href=#event-media-seeking>seeking</a></code> event handler
83217 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83220 <td> <a href=#handler-onselect title=handler-onselect>HTML elements</a>
83222 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83225 <td> <a href=#handler-onshow title=handler-onshow>HTML elements</a>
83227 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83230 <td> <a href=#handler-onstalled title=handler-onstalled>HTML elements</a>
83231 <td> <code title=event-media-stalled><a href=#event-media-stalled>stalled</a></code> event handler
83232 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83235 <td> <code title=handler-window-onstorage><a href=#handler-window-onstorage>body</a></code>
83236 <td> <code title=event-storage>storage</code> event handler for <code><a href=#window>Window</a></code> object
83237 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83240 <td> <a href=#handler-onsubmit title=handler-onsubmit>HTML elements</a>
83242 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83245 <td> <a href=#handler-onsuspend title=handler-onsuspend>HTML elements</a>
83246 <td> <code title=event-media-suspend><a href=#event-media-suspend>suspend</a></code> event handler
83247 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83250 <td> <a href=#handler-ontimeupdate title=handler-ontimeupdate>HTML elements</a>
83251 <td> <code title=event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> event handler
83252 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83255 <td> <code title=handler-window-onundo><a href=#handler-window-onundo>body</a></code>
83256 <td> <code title=event-undo><a href=#event-undo>undo</a></code> event handler for <code><a href=#window>Window</a></code> object
83257 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83260 <td> <code title=handler-window-onunload><a href=#handler-window-onunload>body</a></code>
83261 <td> <code title=event-unload>unload</code> event handler for <code><a href=#window>Window</a></code> object
83262 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83265 <td> <a href=#handler-onvolumechange title=handler-onvolumechange>HTML elements</a>
83266 <td> <code title=event-media-volumechange><a href=#event-media-volumechange>volumechange</a></code> event handler
83267 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83270 <td> <a href=#handler-onwaiting title=handler-onwaiting>HTML elements</a>
83271 <td> <code title=event-media-waiting><a href=#event-media-waiting>waiting</a></code> event handler
83272 <td> <a href=#event-handler-content-attributes title="event handler content attributes">Event handler content attribute</a>
83308 <tbody><tr><td> <code><a href=#the-a-element>a</a></code>
83309 <td> <code><a href=#htmlanchorelement>HTMLAnchorElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83311 <tr><td> <code><a href=#the-abbr-element>abbr</a></code>
83312 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83314 <tr><td> <code><a href=#the-address-element>address</a></code>
83315 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83317 <tr><td> <code><a href=#the-area-element>area</a></code>
83318 <td> <code><a href=#htmlareaelement>HTMLAreaElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83320 <tr><td> <code><a href=#the-article-element>article</a></code>
83321 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83323 <tr><td> <code><a href=#the-aside-element>aside</a></code>
83324 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83326 <tr><td> <code><a href=#audio>audio</a></code>
83327 <td> <code><a href=#htmlaudioelement>HTMLAudioElement</a></code> : <code><a href=#htmlmediaelement>HTMLMediaElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83329 <tr><td> <code><a href=#the-b-element>b</a></code>
83330 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83332 <tr><td> <code><a href=#the-base-element>base</a></code>
83333 <td> <code><a href=#htmlbaseelement>HTMLBaseElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83335 <tr><td> <code><a href=#the-bdo-element>bdo</a></code>
83336 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83338 <tr><td> <code><a href=#the-blockquote-element>blockquote</a></code>
83339 <td> <code><a href=#htmlquoteelement>HTMLQuoteElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83341 <tr><td> <code><a href=#the-body-element-0>body</a></code>
83342 <td> <code><a href=#htmlbodyelement>HTMLBodyElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83344 <tr><td> <code><a href=#the-br-element>br</a></code>
83345 <td> <code><a href=#htmlbrelement>HTMLBRElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83347 <tr><td> <code><a href=#the-button-element>button</a></code>
83348 <td> <code><a href=#htmlbuttonelement>HTMLButtonElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83350 <tr><td> <code><a href=#the-canvas-element>canvas</a></code>
83351 <td> <code><a href=#htmlcanvaselement>HTMLCanvasElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83353 <tr><td> <code><a href=#the-caption-element>caption</a></code>
83354 <td> <code><a href=#htmltablecaptionelement>HTMLTableCaptionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83356 <tr><td> <code><a href=#the-cite-element>cite</a></code>
83357 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83359 <tr><td> <code><a href=#the-code-element>code</a></code>
83360 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83362 <tr><td> <code><a href=#the-col-element>col</a></code>
83363 <td> <code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83365 <tr><td> <code><a href=#the-colgroup-element>colgroup</a></code>
83366 <td> <code><a href=#htmltablecolelement>HTMLTableColElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83368 <tr><td> <code><a href=#the-command>command</a></code>
83369 <td> <code><a href=#htmlcommandelement>HTMLCommandElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83371 <tr><td> <code><a href=#the-datalist-element>datalist</a></code>
83372 <td> <code><a href=#htmldatalistelement>HTMLDataListElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83374 <tr><td> <code><a href=#the-dd-element>dd</a></code>
83375 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83377 <tr><td> <code><a href=#the-del-element>del</a></code>
83378 <td> <code><a href=#htmlmodelement>HTMLModElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83380 <tr><td> <code><a href=#the-details-element>details</a></code>
83381 <td> <code><a href=#htmldetailselement>HTMLDetailsElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83383 <tr><td> <code><a href=#the-div-element>div</a></code>
83384 <td> <code><a href=#htmldivelement>HTMLDivElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83386 <tr><td> <code><a href=#the-dl-element>dl</a></code>
83387 <td> <code><a href=#htmldlistelement>HTMLDListElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83389 <tr><td> <code><a href=#the-dt-element>dt</a></code>
83390 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83392 <tr><td> <code><a href=#the-em-element>em</a></code>
83393 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83395 <tr><td> <code><a href=#the-embed-element>embed</a></code>
83396 <td> <code><a href=#htmlembedelement>HTMLEmbedElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83398 <tr><td> <code><a href=#the-fieldset-element>fieldset</a></code>
83399 <td> <code><a href=#htmlfieldsetelement>HTMLFieldSetElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83401 <tr><td> <code><a href=#the-figcaption-element>figcaption</a></code>
83402 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83404 <tr><td> <code><a href=#the-figure-element>figure</a></code>
83405 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83407 <tr><td> <code><a href=#the-footer-element>footer</a></code>
83408 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83410 <tr><td> <code><a href=#the-form-element>form</a></code>
83411 <td> <code><a href=#htmlformelement>HTMLFormElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83413 <tr><td> <code><a href=#the-head-element-0>head</a></code>
83414 <td> <code><a href=#htmlheadelement>HTMLHeadElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83416 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h1</a></code>
83417 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83419 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h2</a></code>
83420 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83422 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h3</a></code>
83423 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83425 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h4</a></code>
83426 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83428 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h5</a></code>
83429 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83431 <tr><td> <code><a href=#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements>h6</a></code>
83432 <td> <code><a href=#htmlheadingelement>HTMLHeadingElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83434 <tr><td> <code><a href=#the-header-element>header</a></code>
83435 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83437 <tr><td> <code><a href=#the-hgroup-element>hgroup</a></code>
83438 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83440 <tr><td> <code><a href=#the-hr-element>hr</a></code>
83441 <td> <code><a href=#htmlhrelement>HTMLHRElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83443 <tr><td> <code><a href=#the-html-element-0>html</a></code>
83444 <td> <code><a href=#htmlhtmlelement>HTMLHtmlElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83446 <tr><td> <code><a href=#the-i-element>i</a></code>
83447 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83449 <tr><td> <code><a href=#the-iframe-element>iframe</a></code>
83450 <td> <code><a href=#htmliframeelement>HTMLIFrameElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83452 <tr><td> <code><a href=#the-img-element>img</a></code>
83453 <td> <code><a href=#htmlimageelement>HTMLImageElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83455 <tr><td> <code><a href=#the-input-element>input</a></code>
83456 <td> <code><a href=#htmlinputelement>HTMLInputElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83458 <tr><td> <code><a href=#the-ins-element>ins</a></code>
83459 <td> <code><a href=#htmlmodelement>HTMLModElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83461 <tr><td> <code><a href=#the-kbd-element>kbd</a></code>
83462 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83464 <tr><td> <code><a href=#the-keygen-element>keygen</a></code>
83465 <td> <code><a href=#htmlkeygenelement>HTMLKeygenElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83467 <tr><td> <code><a href=#the-label-element>label</a></code>
83468 <td> <code><a href=#htmllabelelement>HTMLLabelElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83470 <tr><td> <code><a href=#the-legend-element>legend</a></code>
83471 <td> <code><a href=#htmllegendelement>HTMLLegendElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83473 <tr><td> <code><a href=#the-li-element>li</a></code>
83474 <td> <code><a href=#htmllielement>HTMLLIElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83476 <tr><td> <code><a href=#the-link-element>link</a></code>
83477 <td> <code><a href=#htmllinkelement>HTMLLinkElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83479 <tr><td> <code><a href=#the-map-element>map</a></code>
83480 <td> <code><a href=#htmlmapelement>HTMLMapElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83482 <tr><td> <code><a href=#the-mark-element>mark</a></code>
83483 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83485 <tr><td> <code><a href=#the-meter-element>meter</a></code>
83486 <td> <code><a href=#htmlmeterelement>HTMLMeterElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83488 <tr><td> <code><a href=#the-nav-element>nav</a></code>
83489 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83491 <tr><td> <code><a href=#the-noscript-element>noscript</a></code>
83492 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83494 <tr><td> <code><a href=#the-object-element>object</a></code>
83495 <td> <code><a href=#htmlobjectelement>HTMLObjectElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83497 <tr><td> <code><a href=#the-ol-element>ol</a></code>
83498 <td> <code><a href=#htmlolistelement>HTMLOListElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83500 <tr><td> <code><a href=#the-optgroup-element>optgroup</a></code>
83501 <td> <code><a href=#htmloptgroupelement>HTMLOptGroupElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83503 <tr><td> <code><a href=#the-option-element>option</a></code>
83504 <td> <code><a href=#htmloptionelement>HTMLOptionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83506 <tr><td> <code><a href=#the-output-element>output</a></code>
83507 <td> <code><a href=#htmloutputelement>HTMLOutputElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83509 <tr><td> <code><a href=#the-p-element>p</a></code>
83510 <td> <code><a href=#htmlparagraphelement>HTMLParagraphElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83512 <tr><td> <code><a href=#the-param-element>param</a></code>
83513 <td> <code><a href=#htmlparamelement>HTMLParamElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83515 <tr><td> <code><a href=#the-pre-element>pre</a></code>
83516 <td> <code><a href=#htmlpreelement>HTMLPreElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83518 <tr><td> <code><a href=#the-progress-element>progress</a></code>
83519 <td> <code><a href=#htmlprogresselement>HTMLProgressElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83521 <tr><td> <code><a href=#the-q-element>q</a></code>
83522 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83524 <tr><td> <code><a href=#the-rp-element>rp</a></code>
83525 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83527 <tr><td> <code><a href=#the-rt-element>rt</a></code>
83528 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83530 <tr><td> <code><a href=#the-ruby-element>ruby</a></code>
83531 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83533 <tr><td> <code><a href=#the-samp-element>samp</a></code>
83534 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83536 <tr><td> <code><a href=#the-section-element>section</a></code>
83537 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83539 <tr><td> <code><a href=#the-select-element>select</a></code>
83540 <td> <code><a href=#htmlselectelement>HTMLSelectElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83542 <tr><td> <code><a href=#the-small-element>small</a></code>
83543 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83545 <tr><td> <code><a href=#the-source-element>source</a></code>
83546 <td> <code><a href=#htmlsourceelement>HTMLSourceElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83548 <tr><td> <code><a href=#the-span-element>span</a></code>
83549 <td> <code><a href=#htmlspanelement>HTMLSpanElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83551 <tr><td> <code><a href=#the-strong-element>strong</a></code>
83552 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83554 <tr><td> <code><a href=#the-style-element>style</a></code>
83555 <td> <code><a href=#htmlstyleelement>HTMLStyleElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83557 <tr><td> <code><a href=#the-sub-and-sup-elements>sub</a></code>
83558 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83560 <tr><td> <code><a href=#the-summary-element>summary</a></code>
83561 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83563 <tr><td> <code><a href=#the-sub-and-sup-elements>sup</a></code>
83564 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83566 <tr><td> <code><a href=#the-table-element>table</a></code>
83567 <td> <code><a href=#htmltableelement>HTMLTableElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83569 <tr><td> <code><a href=#the-tbody-element>tbody</a></code>
83570 <td> <code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83572 <tr><td> <code><a href=#the-td-element>td</a></code>
83573 <td> <code><a href=#htmltabledatacellelement>HTMLTableDataCellElement</a></code> : <code><a href=#htmltablecellelement>HTMLTableCellElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83575 <tr><td> <code><a href=#the-textarea-element>textarea</a></code>
83576 <td> <code><a href=#htmltextareaelement>HTMLTextAreaElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83578 <tr><td> <code><a href=#the-tfoot-element>tfoot</a></code>
83579 <td> <code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83581 <tr><td> <code><a href=#the-th-element>th</a></code>
83582 <td> <code><a href=#htmltableheadercellelement>HTMLTableHeaderCellElement</a></code> : <code><a href=#htmltablecellelement>HTMLTableCellElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83584 <tr><td> <code><a href=#the-thead-element>thead</a></code>
83585 <td> <code><a href=#htmltablesectionelement>HTMLTableSectionElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83587 <tr><td> <code><a href=#the-time-element>time</a></code>
83588 <td> <code><a href=#htmltimeelement>HTMLTimeElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83590 <tr><td> <code><a href
83591 <td> <code><a href=#htmltitleelement>HTMLTitleElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83593 <tr><td> <code><a href=#the-tr-element>tr</a></code>
83594 <td> <code><a href=#htmltablerowelement>HTMLTableRowElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83597 <tr><td> <code><a href=#the-track-element>track</a></code>
83598 <td> <code><a href=#htmltrackelement>HTMLTrackElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83601 <tr><td> <code><a href=#the-ul-element>ul</a></code>
83602 <td> <code><a href=#htmlulistelement>HTMLUListElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83604 <tr><td> <code><a href=#the-var-element>var</a></code>
83605 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83607 <tr><td> <code><a href=#video>video</a></code>
83608 <td> <code><a href=#htmlvideoelement>HTMLVideoElement</a></code> : <code><a href=#htmlmediaelement>HTMLMediaElement</a></code> : <code><a href=#htmlelement>HTMLElement</a></code>
83610 <tr><td> <code><a href=#the-wbr-element>wbr</a></code>
83611 <td> <code><a href=#htmlelement>HTMLElement</a></code>
83621 <tbody><tr><td> <code title=event-DOMActivate><a href=#event-domactivate>DOMActivate</a></code>
83622 <td> <code><a href=#event>Event</a></code>
83623 <td> Fired at an element before its <a href=#activation-behavior>activation behavior</a> is run
83626 <td> <code><a href=#event>Event</a></code>
83627 <td> Fired at the <code><a href=#document>Document</a></code> once it and its scripts have loaded, without waiting for other subresources
83630 <td> <code><a href=#event>Event</a></code>
83631 <td> Fired at the <code><a href=#window>Window</a></code> when the download was aborted by the user
83634 <td> <code><a href=#event>Event</a></code>
83635 <td> Fired at the <code><a href=#window>Window</a></code> after printing
83638 <td> <code><a href=#event>Event</a></code>
83639 <td> Fired at the <code><a href=#window>Window</a></code> before printing
83642 <td> <code><a href=#beforeunloadevent>BeforeUnloadEvent</a></code>
83643 <td> Fired at the <code><a href=#window>Window</a></code> when the page is about to be unloaded, in case the page would like to show a warning prompt
83646 <td> <code><a href=#event>Event</a></code>
83650 <td> <code><a href=#event>Event</a></code>
83654 <td> <code><a href=#event>Event</a></code>
83658 <td> <code><a href=#event>Event</a></code>
83662 <td> <code><a href=#event>Event</a></code>
83666 <td> <code><a href=#event>Event</a></code>
83670 <td> <code><a href=#event>Event</a></code>
83673 <tr><td> <code title=event-hashchange><a href=#event-hashchange>hashchange</a></code>
83674 <td> <code><a href=#hashchangeevent>HashChangeEvent</a></code>
83675 <td> Fired at the <code><a href=#window>Window</a></code> when the fragment identifier part of <a href="#the-document's-current-address">the document's current address</a> changes
83678 <td> <code><a href=#event>Event</a></code>
83682 <td> <code><a href=#event>Event</a></code>
83686 <td> <code><a href=#event>Event</a></code>
83687 <td> Fired at the <code><a href=#window>Window</a></code> when the document has finished loading; fired at an element containing a resource (e.g. <code><a href=#the-img-element>img</a></code>, <code><a href=#the-embed-element>embed</a></code>) when its resource has finished loading
83689 <tr><td> <code title=event-message><a href=#event-message>message</a></code>
83690 <td> <code><a href=#messageevent>MessageEvent</a></code>
83693 <tr><td> <code title=event-offline><a href=#event-offline>offline</a></code>
83694 <td> <code><a href=#event>Event</a></code>
83695 <td> Fired at the <code><a href=#window>Window</a></code> when the network connections fails
83697 <tr><td> <code title=event-online><a href=#event-online>online</a></code>
83698 <td> <code><a href=#event>Event</a></code>
83699 <td> Fired at the <code><a href=#window>Window</a></code> when the network connections returns
83701 <tr><td> <code title=event-pagehide><a href=#event-pagehide>pagehide</a></code>
83702 <td> <code><a href=#pagetransitionevent>PageTransitionEvent</a></code>
83703 <td> Fired at the <code><a href=#window>Window</a></code> when the page's entry in the <a href=#session-history>session history</a> stops being the <a href=#current-entry>current entry</a>
83705 <tr><td> <code title=event-pageshow><a href=#event-pageshow>pageshow</a></code>
83706 <td> <code><a href=#pagetransitionevent>PageTransitionEvent</a></code>
83707 <td> Fired at the <code><a href=#window>Window</a></code> when the page's entry in the <a href=#session-history>session history</a> becomes the <a href=#current-entry>current entry</a>
83709 <tr><td> <code title=event-popstate><a href=#event-popstate>popstate</a></code>
83710 <td> <code><a href=#popstateevent>PopStateEvent</a></code>
83711 <td> Fired at the <code><a href=#window>Window</a></code> when the user navigates the <a href=#session-history>session history</a>
83714 <td> <code><a href=#event>Event</a></code>
83715 <td> Fired at the <code><a href=#document>Document</a></code> when it finishes parsing and again when all its subresources have finished loading
83717 <tr><td> <code title=event-redo><a href=#event-redo>redo</a></code>
83718 <td> <code><a href=#undomanagerevent>UndoManagerEvent</a></code>
83719 <td> Fired at the <code><a href=#window>Window</a></code> object when the user <a href=#redo:-moving-forward-in-the-undo-transaction-history title=do-redo>goes forward in the undo transaction history</a>
83722 <td> <code><a href=#event>Event</a></code>
83723 <td> Fired at a <code><a href=#the-form-element>form</a></code> element when it is <a href=#concept-form-reset title=concept-form-reset>reset</a>
83726 <td> <code><a href=#event>Event</a></code>
83727 <td> Fired at a <code><a href=#menus>menu</a></code> element when it is shown as a context menu
83730 <td> <code><a href=#event>Event</a></code>
83731 <td> Fired at a <code><a href=#the-form-element>form</a></code> element when it is <a href=#concept-form-submit title=concept-form-submit>submitted</a>
83733 <tr><td> <code title=event-undo><a href=#event-undo>undo</a></code>
83734 <td> <code><a href=#undomanagerevent>UndoManagerEvent</a></code>
83735 <td> Fired at the <code><a href=#window>Window</a></code> object when the user <a href=#undo:-moving-back-in-the-undo-transaction-history title=do-undo>goes backward in the undo transaction history</a>
83738 <td> <code><a href=#event>Event</a></code>
83739 <td> Fired at the <code><a href=#window>Window</a></code> object when the page is going away
83741 </table><p class=note>See also <a href=#mediaevents>media element
83742 events</a>, <a href=#appcacheevents>application cache events</a>,
83743 and <a href=#dndevents>drag-and-drop events</a>.</p>
83761 <dd><cite><a href=http://www.ietf.org/rfc/std/std68.txt>Augmented
83766 <dd><cite><a href=http://tools.ietf.org/html/draft-holsten-about-uri-scheme>The
83770 <dd><cite><a href=http://www.w3.org/WAI/PF/aria/>Accessible Rich
83775 <dd><cite><a href=http://www.w3.org/WAI/PF/aria-implementation/>WAI-ARIA 1.0
83780 <dd>(Non-normative) <cite><a href=http://www.w3.org/TR/ATAG20/>Authoring Tool Accessibility
83785 <dd>(Non-normative) <cite><a href=http://www.ietf.org/rfc/rfc4287.txt>The Atom Syndication
83789 <dd><cite><a href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for
83794 <dd><cite><a href=http://www.w3.org/TR/becss/>Behavioral
83801 <dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX #9: Unicode
83805 <dd>(Non-normative) <cite><a href=http://www.unicode.org/notes/tn6/>UTN #6: BOCU-1:
83810 <dd>(Non-normative) <cite><a href=http://www.unicode.org/reports/tr26/>UTR #26: Compatibility
83815 <dd>(Non-normative) <cite><a href=http://www.w3.org/TR/charmod/>Character Model for the World
83820 <dd>(Non-normative) <cite><a href=http://www.turingarchive.org/browse.php/B/12>On computable
83828 <dd><cite><a href="http://www.ietf.org/rfc/rfc2109.txt">HTTP State
83830 <dd><cite><a href="http://www.ietf.org/rfc/rfc2965.txt">HTTP State Management
83833 <dd><cite><a href=http://tools.ietf.org/html/draft-ietf-httpstate-cookie>HTTP State
83838 <dd><cite><a href="http://www.w3.org/TR/cors/">Cross-Origin
83841 <dd><cite><a href=http://dev.w3.org/2006/waf/access-control/>Cross-Origin
83845 <dd><cite><a href=http://www.w3.org/TR/CSS/>Cascading Style Sheets Level 2
83850 <dd><cite><a href=http://dev.w3.org/csswg/css-style-attr/>CSS
83855 <dd><cite><a href="http://www.w3.org/TR/css3-color/">CSS Color
83859 <dd><cite><a href=http://dev.w3.org/csswg/css3-color/>CSS Color
83864 <dd><cite><a href=http://www.w3.org/TR/css3-fonts/>CSS Fonts
83868 <dd><cite><a href=http://dev.w3.org/csswg/cssom/>Cascading Style Sheets
83872 <dd><cite><a href=http://www.w3.org/TR/css3-ui/>CSS3 Basic User
83876 <dd><cite><a href=http://www.w3.org/TR/DOM-Level-3-Core/>Document
83881 <dd><cite><a href="http://simon.html5.org/specs/web-dom-core">Web
83888 href="http://www.w3.org/TR/DOM-Level-3-Events/">Document Object
83892 <dd><cite><a href=http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html>Document
83897 <dd><cite><a href=http://www.w3.org/TR/DOM-Level-2-Traversal-Range/>Document
83908 <dd><cite><a href=http://www.ecma-international.org/publications/standards/Ecma-262.htm>ECMAScript
83912 <dd>(Non-normative) <cite><a href=http://www.ecma-international.org/publications/standards/Ecma-357.htm>ECMAScript
83921 <dd><cite><a href="http://www.w3.org/TR/eventsource/">Server-Sent
83924 <dd><cite><a href=http://dev.w3.org/html5/eventsource/>Server-Sent
83928 <dd><cite><a href=http://dev.w3.org/2006/webapi/FileUpload/publish/FileAPI.html>File
83954 <dd>(Non-normative) <cite><a href=http://microformats.org/wiki/hatom>hAtom</a></cite>, D
83960 href="http://www.w3.org/TR/html5-diff/">HTML5 differences from
83963 <dd>(Non-normative) <cite><a href=http://dev.w3.org/html5/html4-differences/>HTML5
83967 <dd><cite><a href=http://www.ietf.org/rfc/rfc2616.txt>Hypertext
83972 <dd><cite><a href=http://www.iana.org/assignments/character-sets>Character
83976 <dd><cite><a href=http://www.iana.org/assignments/message-headers/perm-headers.html>Permanent
83980 <dd><cite><a href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&nodeid=4021199">ISO8601: Data elements and interchange formats — Information interchange — Representation of dates and times</a></cite>. ISO.</dd>
83983 <dd><cite><a href=http://anubis.dkuug.dk/jtc1/sc2/open/02n3333.pdf>ISO-8859-11:
83989 <dd><cite><a href=http://www.ietf.org/rfc/rfc4627.txt>The
83994 <dd><cite><a href=http://tools.ietf.org/html/draft-hoehrmann-javascript-scheme>The
83999 <dd><cite><a href=http://www.ietf.org/rfc/rfc2368.txt>The mailto URL
84004 <dd><cite><a href=http://www.w3.org/TR/MathML/>Mathematical
84009 <dd><cite><a href=http://tools.ietf.org/html/draft-abarth-mime-sniff>Content-Type
84014 <dd><cite><a href="http://www.w3.org/TR/css3-mediaqueries/">Media
84018 <dd><cite><a href=http://dev.w3.org/csswg/css3-mediaqueries/>Media
84023 <dd>(Non-normative) <cite><a href=https://developer.mozilla.org/en/Gecko_Plugin_API_Reference>Gecko
84027 <dd><cite><a href=http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML>Autodiscovery
84032 <dd><cite><a href=http://tools.ietf.org/html/draft-abarth-origin>The HTTP
84036 <dd><cite><a href=http://www.hixie.ch/specs/pingback/pingback>Pingback
84040 <dd><cite><a href=http://www.w3.org/TR/PNG/>Portable Network
84044 <dd><cite><a href=http://keithp.com/~keithp/porterduff/p253-porter.pdf>Compositing
84050 <dd>(Non-normative) <cite><a href=http://www.ifi.uzh.ch/mml/mduerst/papers/PDF/IUC11-UTF-8.pdf>The
84057 <dd><cite><a href="http://www.w3.org/TR/progress-events/">Progress
84060 <dd><cite><a href=http://dev.w3.org/2006/webapi/progress/Progress.html>Progress
84064 <dd><cite><a href=http://publicsuffix.org/>Public Suffix List</a></cite>.
84068 <dd><cite><a href=http://www.ietf.org/rfc/rfc1034.txt>Domain
84073 <dd><cite><a href=http://www.ietf.org/rfc/rfc1345.txt>Character Mnemonics
84077 <dd><cite><a href=http://www.ietf.org/rfc/rfc1468.txt>Japanese Character
84082 <dd><cite><a href=http://www.ietf.org/rfc/rfc1554.txt>ISO-2022-JP-2:
84086 <dd><cite><a href=http://www.ietf.org/rfc/rfc1557.txt>Korean Character
84091 <dd><cite><a href=http://www.ietf.org/rfc/rfc1842.txt>ASCII
84097 <dd><cite><a href=http://www.ietf.org/rfc/rfc1922.txt>Chinese Character
84102 <dd><cite><a href=http://www.ietf.org/rfc/rfc2045.txt>Multipurpose Internet
84107 <dd><cite><a href=http://www.ietf.org/rfc/rfc2046.txt>Multipurpose Internet
84113 <dd><cite><a href=http://www.ietf.org/rfc/rfc2119.txt>Key words for use in
84117 <dd><cite><a href=http://www.ietf.org/rfc/rfc2237.txt>Japanese Character
84121 <dd><cite><a href=http://www.ietf.org/rfc/rfc2313.txt>PKCS #1:
84125 <dd><cite><a href=http://www.ietf.org/rfc/rfc2318.txt>The
84129 <dd><cite><a href=http://www.ietf.org/rfc/rfc2388.txt>Returning Values from
84133 <dd><cite><a href=http://www.ietf.org/rfc/rfc2425.txt>A MIME
84138 <dd><cite><a href=http://www.ietf.org/rfc/rfc2426.txt>vCard MIME Directory
84142 <dd><cite><a href=http://www.ietf.org/rfc/rfc2445.txt>Internet Calendaring
84147 <dd><cite><a href=http://www.ietf.org/rfc/rfc2483.txt>URI Resolution
84152 <dd><cite><a href=http://www.ietf.org/rfc/rfc2781.txt>UTF-16, an
84156 <dd><cite><a href=http://www.ietf.org/rfc/rfc2646.txt>The Text/Plain Format
84160 <dd><cite><a href=http://www.ietf.org/rfc/rfc3023.txt>XML Media
84164 <dd><cite><a href=http://www.ietf.org/rfc/rfc3279.txt>Algorithms
84170 <dd><cite><a href=http://www.ietf.org/rfc/rfc3490.txt>Internationalizing
84175 <dd><cite><a href=http://www.ietf.org/rfc/rfc3548.txt>The Base16, Base32,
84179 <dd><cite><a href=http://www.ietf.org/rfc/rfc3864.txt>Registration Procedures
84184 <dd><cite><a href=http://www.ietf.org/rfc/rfc3986.txt>Uniform Resource
84189 <dd><cite><a href=http://www.ietf.org/rfc/rfc3987.txt>Internationalized
84193 <dd><cite><a href=http://www.ietf.org/rfc/rfc4281.txt>The Codecs Parameter
84197 <dd>(Non-normative) <cite><a href=http://www.ietf.org/rfc/rfc4329.txt>Scripting Media
84201 <dd><cite><a href=http://www.ietf.org/rfc/rfc4770.txt>vCard Extensions for
84205 <dd><cite><a href=http://www.ietf.org/rfc/rfc5280.txt>Internet
84211 <dd><cite><a href=http://www.ietf.org/rfc/rfc5322.txt>Internet Message
84215 <dd><cite><a href=http://www.ietf.org/rfc/rfc5724.txt>URI Scheme
84220 <dd>(Non-normative) <cite><a href=http://www.unicode.org/reports/tr6/>UTR #6: A Standard
84225 <dd><cite><a href=http://www.w3.org/TR/css3-selectors>Selectors</a></cite>,
84234 <dd><cite lang=en-GB><a href="http://webstore.iec.ch/webstore/webstore.nsf/artnum/025408!OpenDocument&Click=">IEC
84240 <dd><cite><a href=http://www.w3.org/TR/SVGTiny12/>Scalable Vector
84248 <dd><cite><a href=http://www.nectec.or.th/it-standards/std620/std620.htm>UDC
84254 <dd>(Non-normative) <cite><a href=http://www.w3.org/TR/UAAG20/>Web Content Accessibility
84259 <dd><cite><a href=http://www.unicode.org/versions/>The Unicode Standard</a></cite>. Unicode Consortium.</dd>
84262 <dd>(Non-normative) <cite><a href=http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html>A
84269 <dd><cite><a href=http://www.ietf.org/rfc/rfc2152.txt>UTF-7: A
84274 <dd>(Non-normative) <cite><a href=http://www.w3.org/International/questions/qa-forms-utf-8>Multilingual
84278 <dd>(Non-normative) <cite><a href=http://www.unicode.org/reports/tr36/>UTR #36: Unicode
84283 <dd>(Non-normative) <cite><a href=http://www.w3.org/TR/WCAG20/>Web Content Accessibility
84289 <dd><cite><a href="http://www.w3.org/TR/WebIDL/">Web
84292 <dd><cite><a href=http://dev.w3.org/2006/webapi/WebIDL/>Web
84296 <dd><cite><a href=http://tools.ietf.org/html/draft-nottingham-http-link-header>Web
84301 <dd><cite><a href="http://www.w3.org/TR/websockets/">The WebSocket
84304 <dd><cite><a href=http://dev.w3.org/html5/websockets/>The WebSocket
84308 <dd><cite><a href=http://dev.w3.org/html5/webdatabase/>Web SQL
84312 <dd><cite><a href=http://dev.w3.org/html5/webstorage/>Web
84318 href="http://www.w3.org/TR/webworkers/">Workers</a></cite>,
84321 <dd><cite><a href=http://dev.w3.org/html5/workers/>Web
84325 <dd><cite><a href=http://wiki.whatwg.org/>The WHATWG Wiki</a></cite>. WHATWG.</dd>
84328 <dd><cite><a href=http://www.microsoft.com/globaldev/reference/sbcs/1252.htm>Windows 1252</a></cite>. Microsoft.</dd>
84331 <dd><cite><a href=http://www.microsoft.com/globaldev/reference/sbcs/1254.htm>Windows 1254</a></cite>. Microsoft.</dd>
84334 <dd><cite><a href=http://www.microsoft.com/globaldev/reference/dbcs/932.mspx>Windows Codepage 932</a></cite>. Microsoft.</dd>
84337 <dd><cite><a href=http://www.microsoft.com/globaldev/reference/sbcs/874.mspx>Windows 874</a></cite>. Microsoft.</dd>
84340 <dd><cite><a href=http://www.microsoft.com/globaldev/reference/dbcs/949.mspx>Windows Codepage 949</a></cite>. Microsoft.</dd>
84348 <dd><cite><a href=http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf>Recommendation
84356 <dd><cite><a href="http://www.w3.org/TR/XMLHttpRequest/">The XMLHttpRequest
84359 <dd><cite><a href=http://dev.w3.org/2006/webapi/XMLHttpRequest-2/><code>XMLHttpRequest</code></a></cite>,
84363 <dd><cite><a href=http://www.w3.org/TR/xml/>Extensible Markup
84368 <dd><cite><a href=http://www.w3.org/TR/xmlbase/>XML
84372 <dd><cite><a href=http://www.w3.org/TR/xml-names/>Namespaces in
84376 <dd><cite><a href=http://www.w3.org/TR/1999/REC-xpath-19991116>XML Path
84380 <dd><cite><a href=http://www.w3.org/TR/1999/REC-xslt-19991116>XSL
84900 contributors to the <a href=http://www.w3.org/html/wg/lists/>various W3C HTML WG
84901 lists</a> and the <a href=http://www.whatwg.org/mailing-list>various WHATWG lists</a>.
84904 implementation of <code><a href=#the-canvas-element>canvas</a></code> in Safari, from which the
84908 implemented the event-based drag-and-drop mechanism, <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code>, and other
84926 broken implementation of the <a href=#adoptionAgency>adoption