1 |
// Jericho HTML Parser - Java based library for analysing and manipulating HTML
|
2 |
// Version 3.2
|
3 |
// Copyright (C) 2004-2009 Martin Jericho
|
4 |
// http://jericho.htmlparser.net/
|
5 |
//
|
6 |
// This library is free software; you can redistribute it and/or
|
7 |
// modify it under the terms of either one of the following licences:
|
8 |
//
|
9 |
// 1. The Eclipse Public License (EPL) version 1.0,
|
10 |
// included in this distribution in the file licence-epl-1.0.html
|
11 |
// or available at http://www.eclipse.org/legal/epl-v10.html
|
12 |
//
|
13 |
// 2. The GNU Lesser General Public License (LGPL) version 2.1 or later,
|
14 |
// included in this distribution in the file licence-lgpl-2.1.txt
|
15 |
// or available at http://www.gnu.org/licenses/lgpl.txt
|
16 |
//
|
17 |
// This library is distributed on an "AS IS" basis,
|
18 |
// WITHOUT WARRANTY OF ANY KIND, either express or implied.
|
19 |
// See the individual licence texts for more details.
|
20 |
|
21 |
package net.htmlparser.jericho;
|
22 |
|
23 |
import java.util.*;
|
24 |
import static net.htmlparser.jericho.HTMLElementName.*;
|
25 |
|
26 |
/**
|
27 |
* Contains static methods which group {@linkplain HTMLElementName HTML element names} by the characteristics of their associated
|
28 |
* <a href="#HTMLElement">elements</a>.
|
29 |
* <p>
|
30 |
* An <i><a name="HTMLElement">HTML element</a></i> is a <a href="Element.html#Normal">normal element</a> with a
|
31 |
* {@linkplain Element#getName() name} that matches one of the {@linkplain HTMLElementName HTML element names} (ignoring case).
|
32 |
* This type of element spans the logical HTML element as described in the
|
33 |
* <a target="_blank" href="http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.1">HTML 4.01 specification section 3.2.1</a>,
|
34 |
* which may be <a href="Element.html#ImplicitlyTerminated">implicitly terminated</a> if it specifies an
|
35 |
* {@linkplain #getEndTagOptionalElementNames() optional end tag}.
|
36 |
* <p>
|
37 |
* The term <i><a name="NonHTMLElement">Non-HTML element</a></i> refers to a <a href="Element.html#Normal">normal element</a>
|
38 |
* with a {@linkplain Element#getName() name} that does not match one of the {@linkplain HTMLElementName HTML element names}.
|
39 |
* This type of element must be either a <a href="Element.html#SingleTag">single tag element</a> or
|
40 |
* <a href="Element.html#ExplicitlyTerminated">explicitly terminated</a>.
|
41 |
* <p>
|
42 |
* All of the sets returned by the methods in this class may be modified to customise the behaviour of the parser.
|
43 |
* Care must be taken however to ensure that the sets only contain tag names in lower case.
|
44 |
* <p>
|
45 |
* Below is a table summarising the default characteristics of each <a href="#HTMLElement">HTML element</a>. See also the
|
46 |
* <a target="_blank" href="http://www.w3.org/TR/html401/index/elements.html">index of elements in the HTML 4.01 specification</a>
|
47 |
* and <a target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#elements-1">draft HTML5 specification</a>
|
48 |
* for the official tables containing similar information.
|
49 |
* <p>
|
50 |
* <style type="text/css">
|
51 |
* table#ElementSummary td, table#ElementSummary th {padding: 0px 5px 0px 5px}
|
52 |
* .StartTagOptionalColumn {text-align: center}
|
53 |
* .NestingForbiddenColumn {text-align: center}
|
54 |
* .DeprecatedColumn {text-align: center}
|
55 |
* </style>
|
56 |
* <table id="ElementSummary" class="bordered" cellspacing="0">
|
57 |
* <tr><th title="HTML Element Name">{@linkplain Element#getName() Name}</th><th title="HTML version">vers</th><th title="Box Type Block or Inline"><a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#box-gen">Box Type</a></th><th title="Start Tag Optional">{@linkplain #getStartTagOptionalElementNames() Start Tag}</th><th title="End Tag Optional">{@linkplain #getEndTagOptionalElementNames() End Tag}</th><th title="Nesting Forbidden">{@linkplain #getNestingForbiddenElementNames() Nest}</th><th title="Deprecated">{@linkplain #getDeprecatedElementNames() Depr.}</th><th title="Click on the description to view the HTML 4.01 definition of the element">Description / Specification</th></tr>
|
58 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#A A}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/links.html#edef-A">anchor</a></td></tr>
|
59 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ABBR ABBR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-ABBR">abbreviated form (e.g., WWW, HTTP, etc.)</a></td></tr>
|
60 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ACRONYM ACRONYM}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-ACRONYM">acronym</a></td></tr>
|
61 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ADDRESS ADDRESS}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-ADDRESS">information on author</a></td></tr>
|
62 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#APPLET APPLET}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-APPLET">Java applet</a></td></tr>
|
63 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#AREA AREA}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-AREA">client-side image map area</a></td></tr>
|
64 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ARTICLE article}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-article-element">self-contained syndicatable or reusable composition</a></td></tr>
|
65 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ASIDE aside}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-aside-element">sidebar for tangentially related content</a></td></tr>
|
66 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#AUDIO audio}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-audio-element">audio player</a></td></tr>
|
67 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#B B}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-B">bold text style</a></td></tr>
|
68 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BASE BASE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/links.html#edef-BASE">document base URI</a></td></tr>
|
69 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BASEFONT BASEFONT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-BASEFONT">base font size</a></td></tr>
|
70 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BDI bdi}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-bdi-element">text directionality isolation</a></td></tr>
|
71 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BDO BDO}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/dirlang.html#edef-BDO">I18N BiDi over-ride</a></td></tr>
|
72 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BIG BIG}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-BIG">large text style</a></td></tr>
|
73 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BLOCKQUOTE BLOCKQUOTE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-BLOCKQUOTE">long quotation</a></td></tr>
|
74 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BODY BODY}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag optional">{@linkplain #getStartTagOptionalElementNames() Optional}</td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#BODY">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-BODY">document body</a></td></tr>
|
75 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BR BR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-BR">forced line break</a></td></tr>
|
76 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#BUTTON BUTTON}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-BUTTON">push button</a></td></tr>
|
77 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#CANVAS canvas}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-canvas-element">scriptable bitmap canvas</a></td></tr>
|
78 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#CAPTION CAPTION}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-CAPTION">table caption</a></td></tr>
|
79 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#CENTER CENTER}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-CENTER">shorthand for DIV align=center</a></td></tr>
|
80 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#CITE CITE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-CITE">citation</a></td></tr>
|
81 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#CODE CODE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-CODE">computer code fragment</a></td></tr>
|
82 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#COL COL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-COL">table column</a></td></tr>
|
83 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#COLGROUP COLGROUP}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#COLGROUP">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-COLGROUP">table column group</a></td></tr>
|
84 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#COMMAND command}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-command">menu command</a></td></tr>
|
85 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DATALIST datalist}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-datalist-element">container for options for combo box control</a></td></tr>
|
86 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DD DD}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#DD">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-DD">definition description</a></td></tr>
|
87 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DEL DEL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-DEL">deleted text</a></td></tr>
|
88 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DETAILS details}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-details-element">disclosure control for hiding details</a></td></tr>
|
89 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DFN DFN}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-DFN">instance definition</a></td></tr>
|
90 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DIR DIR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-DIR">directory list</a></td></tr>
|
91 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DIV DIV}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-DIV">generic language/style container</a></td></tr>
|
92 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DL DL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-DL">definition list</a></td></tr>
|
93 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#DT DT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#DT">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-DT">definition term</a></td></tr>
|
94 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#EM EM}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-EM">emphasis</a></td></tr>
|
95 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#EMBED embed}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-embed-element">plugin</a></td></tr>
|
96 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FIELDSET FIELDSET}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-FIELDSET">form control group</a></td></tr>
|
97 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FIGCAPTION figcaption}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-figcaption-element">caption for figure</a></td></tr>
|
98 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FIGURE figure}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-figure-element">figure with optional caption</a></td></tr>
|
99 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FONT FONT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-FONT">local change to font</a></td></tr>
|
100 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FOOTER footer}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-footer-element">footer for a page or section</a></td></tr>
|
101 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FORM FORM}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-FORM">interactive form</a></td></tr>
|
102 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FRAME FRAME}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/frames.html#edef-FRAME">subwindow</a></td></tr>
|
103 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#FRAMESET FRAMESET}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/frames.html#edef-FRAMESET">window subdivision</a></td></tr>
|
104 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H1 H1}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H1">heading</a></td></tr>
|
105 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H2 H2}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H2">heading</a></td></tr>
|
106 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H3 H3}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H3">heading</a></td></tr>
|
107 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H4 H4}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H4">heading</a></td></tr>
|
108 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H5 H5}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H5">heading</a></td></tr>
|
109 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#H6 H6}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-H6">heading</a></td></tr>
|
110 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#HEAD HEAD}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag optional">{@linkplain #getStartTagOptionalElementNames() Optional}</td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#HEAD">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-HEAD">document head</a></td></tr>
|
111 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#HEADER header}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-header-element">introductory or navigational aids for a page or section</a></td></tr>
|
112 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#HGROUP hgroup}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-hgroup-element">heading group</a></td></tr>
|
113 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#HR HR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-HR">horizontal rule</a></td></tr>
|
114 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#HTML HTML}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag optional">{@linkplain #getStartTagOptionalElementNames() Optional}</td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#HTML">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-HTML">document root element</a></td></tr>
|
115 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#I I}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-I">italic text style</a></td></tr>
|
116 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#IFRAME IFRAME}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/frames.html#edef-IFRAME">inline subwindow</a></td></tr>
|
117 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#IMG IMG}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-IMG">Embedded image</a></td></tr>
|
118 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#INPUT INPUT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-INPUT">form control</a></td></tr>
|
119 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#INS INS}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-INS">inserted text</a></td></tr>
|
120 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#ISINDEX ISINDEX}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-ISINDEX">single line prompt</a></td></tr>
|
121 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#KBD KBD}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-KBD">text to be entered by the user</a></td></tr>
|
122 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#KEYGEN keygen}</td><td class="VerColumn" title="HTML HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-keygen-element">cryptographic key-pair generator form control</a></td></tr>
|
123 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#LABEL LABEL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-LABEL">form field label text</a></td></tr>
|
124 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#LEGEND LEGEND}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-LEGEND">fieldset legend</a></td></tr>
|
125 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#LI LI}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#LI">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-LI">list item</a></td></tr>
|
126 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#LINK LINK}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/links.html#edef-LINK">a media-independent link</a></td></tr>
|
127 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#MAP MAP}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-MAP">client-side image map</a></td></tr>
|
128 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#MARK mark}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-mark-element">highlight</a></td></tr>
|
129 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#MENU MENU}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-MENU">menu list</a></td></tr>
|
130 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#META META}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-META">generic metainformation</a></td></tr>
|
131 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#METER meter}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-meter-element">gauge</a></td></tr>
|
132 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#NAV nav}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-nav-element">section with navigational links</a></td></tr>
|
133 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#NOFRAMES NOFRAMES}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/frames.html#edef-NOFRAMES">alternate content container for non frame-based rendering</a></td></tr>
|
134 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#NOSCRIPT NOSCRIPT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/scripts.html#edef-NOSCRIPT">alternate content container for non script-based rendering</a></td></tr>
|
135 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#OBJECT OBJECT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-OBJECT">generic embedded object</a></td></tr>
|
136 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#OL OL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-OL">ordered list</a></td></tr>
|
137 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#OPTGROUP OPTGROUP}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-OPTGROUP">option group</a></td></tr>
|
138 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#OPTION OPTION}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#OPTION">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-OPTION">selectable choice</a></td></tr>
|
139 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#OUTPUT output}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-output-element">calculated output value</a></td></tr>
|
140 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#P P}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#P">details</a>)</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-P">paragraph</a></td></tr>
|
141 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#PARAM PARAM}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/objects.html#edef-PARAM">named property value</a></td></tr>
|
142 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#PRE PRE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-PRE">preformatted text</a></td></tr>
|
143 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#PROGRESS progress}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-progress-element">progress bar</a></td></tr>
|
144 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#Q Q}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-Q">short inline quotation</a></td></tr>
|
145 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#RUBY ruby}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-ruby-element">ruby annotation(s)</a></td></tr>
|
146 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#RP rp}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-rp-element">parenthesis for ruby annotation text</a></td></tr>
|
147 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#RT rt}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-rt-element">ruby annotation text</a></td></tr>
|
148 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#S S}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-S">strike-through text style</a></td></tr>
|
149 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SAMP SAMP}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-SAMP">sample program output, scripts, etc.</a></td></tr>
|
150 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SCRIPT SCRIPT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/scripts.html#edef-SCRIPT">script statements</a></td></tr>
|
151 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SECTION section}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-section-element">generic document or application section</a></td></tr>
|
152 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SELECT SELECT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-SELECT">option selector</a></td></tr>
|
153 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SMALL SMALL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-SMALL">small text style</a></td></tr>
|
154 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SOURCE source}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-source-element">media source for video or audio</a></td></tr>
|
155 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SPAN SPAN}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-SPAN">generic language/style container</a></td></tr>
|
156 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#STRIKE STRIKE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-STRIKE">strike-through text</a></td></tr>
|
157 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#STRONG STRONG}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-STRONG">strong emphasis</a></td></tr>
|
158 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#STYLE STYLE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/styles.html#edef-STYLE">style info</a></td></tr>
|
159 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SUB SUB}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-SUB">subscript</a></td></tr>
|
160 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SUMMARY summary}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-summary-element">caption for details</a></td></tr>
|
161 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#SUP SUP}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-SUP">superscript</a></td></tr>
|
162 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TABLE TABLE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TABLE">table</a></td></tr>
|
163 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TBODY TBODY}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag optional">{@linkplain #getStartTagOptionalElementNames() Optional}</td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#TBODY">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TBODY">table body</a></td></tr>
|
164 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TD TD}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#TD">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TD">table data cell</a></td></tr>
|
165 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TEXTAREA TEXTAREA}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/interact/forms.html#edef-TEXTAREA">multi-line text field</a></td></tr>
|
166 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TFOOT TFOOT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#TFOOT">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TFOOT">table footer</a></td></tr>
|
167 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TH TH}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#TH">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TH">table header cell</a></td></tr>
|
168 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#THEAD THEAD}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#THEAD">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-THEAD">table header</a></td></tr>
|
169 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TIME time}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-time-element">date and/or time</a></td></tr>
|
170 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TITLE TITLE}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#edef-TITLE">document title</a></td></tr>
|
171 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TR TR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag optional">{@linkplain #getEndTagOptionalElementNames() Optional} (<a title="View information about which tags terminate this element" href="HTMLElementName.html#TR">details</a>)</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/tables.html#edef-TR">table row</a></td></tr>
|
172 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#TT TT}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-TT">teletype or monospaced text style</a></td></tr>
|
173 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#U U}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="deprecated"><a target="blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">D</a></td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/present/graphics.html#edef-U">underlined text style</a></td></tr>
|
174 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#UL UL}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="block-level element">{@linkplain #getBlockLevelElementNames() Block}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/lists.html#edef-UL">unordered list</a></td></tr>
|
175 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#VAR VAR}</td><td class="VerColumn" title="HTML 4.01"> </td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML 4.01 definition of this element" target="_blank" href="http://www.w3.org/TR/html401/struct/text.html#edef-VAR">instance of a variable or program argument</a></td></tr>
|
176 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#VIDEO video}</td><td class="VerColumn" title="HTML5">5</td><td class="BoxTypeColumn" title="neither block-level nor inline-level element"> </td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag required">{@linkplain #getEndTagRequiredElementNames() Required}</td><td class="NestingForbiddenColumn" title="nesting allowed"> </td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-video-element">video player</a></td></tr>
|
177 |
* <tr><td title="View the field definition in the HTMLElementName class" class="ElementNameColumn">{@link HTMLElementName#WBR wbr}</td><td class="VerColumn" title="HTML HTML5">5</td><td class="BoxTypeColumn" title="inline-level element">{@linkplain #getInlineLevelElementNames() Inline}</td><td class="StartTagOptionalColumn" title="start tag not optional"> </td><td class="EndTagOptionalColumn" title="end tag forbidden">{@linkplain #getEndTagForbiddenElementNames() Forbidden}</td><td class="NestingForbiddenColumn" title="nesting forbidden">{@linkplain #getNestingForbiddenElementNames() NF}</td><td class="DeprecatedColumn" title="not deprecated"> </td><td class="ElementDescription"><a title="View the HTML5 definition of this element" target="_blank" href="http://dev.w3.org/html5/spec/Overview.html#the-wbr-element">line breaking opportunity</a></td></tr>
|
178 |
* </table>
|
179 |
*
|
180 |
* @see HTMLElementName
|
181 |
* @see Element
|
182 |
*/
|
183 |
public final class HTMLElements {
|
184 |
private static final List<String> ALL=new ArrayList<String>(Arrays.asList(A,ABBR,ACRONYM,ADDRESS,APPLET,AREA,ARTICLE,ASIDE,AUDIO,B,BASE,BASEFONT,BDI,BDO,BIG,BLOCKQUOTE,BODY,BR,BUTTON,CANVAS,CAPTION,CENTER,CITE,CODE,COL,COLGROUP,COMMAND,DATALIST,DD,DEL,DETAILS,DFN,DIR,DIV,DL,DT,EM,EMBED,FIELDSET,FIGCAPTION,FIGURE,FONT,FOOTER,FORM,FRAME,FRAMESET,H1,H2,H3,H4,H5,H6,HEAD,HEADER,HGROUP,HR,HTML,I,IFRAME,IMG,INPUT,INS,ISINDEX,KBD,KEYGEN,LABEL,LEGEND,LI,LINK,MAP,MARK,MENU,META,METER,NAV,NOFRAMES,NOSCRIPT,OBJECT,OL,OPTGROUP,OPTION,OUTPUT,P,PARAM,PRE,PROGRESS,Q,RP,RT,RUBY,S,SAMP,SCRIPT,SECTION,SELECT,SMALL,SOURCE,SPAN,STRIKE,STRONG,STYLE,SUB,SUMMARY,SUP,TABLE,TBODY,TD,TEXTAREA,TFOOT,TH,THEAD,TIME,TITLE,TR,TT,U,UL,VAR,VIDEO,WBR));
|
185 |
private static final HTMLElementNameSet BLOCK=new HTMLElementNameSet(ARTICLE,ASIDE,FOOTER,DETAILS,SECTION,HEADER,HGROUP,NAV,P,H1,H2,H3,H4,H5,H6,UL,OL,DIR,MENU,PRE,DL,DIV,CENTER,NOSCRIPT,NOFRAMES,BLOCKQUOTE,FORM,ISINDEX,HR,TABLE,FIELDSET,ADDRESS);
|
186 |
private static final HTMLElementNameSet INLINE=new HTMLElementNameSet(BDI,KEYGEN,MARK,METER,OUTPUT,PROGRESS,RP,RT,RUBY,TIME,WBR,TT,I,B,U,S,STRIKE,BIG,SMALL,EM,STRONG,DFN,CODE,SAMP,KBD,VAR,CITE,ABBR,ACRONYM,A,IMG,APPLET,OBJECT,FONT,BASEFONT,BR,SCRIPT,MAP,Q,SUB,SUP,SPAN,BDO,IFRAME,INPUT,SELECT,TEXTAREA,LABEL,BUTTON,INS,DEL);
|
187 |
|
188 |
private static final HTMLElementNameSet END_TAG_FORBIDDEN_SET=new HTMLElementNameSet(AREA,BASE,BASEFONT,BR,COL,FRAME,HR,IMG,INPUT,ISINDEX,LINK,META,PARAM);
|
189 |
|
190 |
private static final HTMLElementNameSet _UL_OL=new HTMLElementNameSet(UL).union(OL);
|
191 |
private static final HTMLElementNameSet _DD_DT=new HTMLElementNameSet(DD).union(DT);
|
192 |
private static final HTMLElementNameSet _THEAD_TBODY_TFOOT_TR=new HTMLElementNameSet(THEAD).union(TBODY).union(TFOOT).union(TR);
|
193 |
private static final HTMLElementNameSet _THEAD_TBODY_TFOOT_TR_TD_TH=new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR).union(TD).union(TH);
|
194 |
|
195 |
private static final HTMLElementNameSet DEPRECATED=new HTMLElementNameSet().union(APPLET).union(BASEFONT).union(CENTER).union(DIR).union(FONT).union(ISINDEX).union(MENU).union(S).union(STRIKE).union(U);
|
196 |
private static final HTMLElementNameSet START_TAG_OPTIONAL_SET=new HTMLElementNameSet().union(BODY).union(HEAD).union(HTML).union(TBODY);
|
197 |
|
198 |
private static final HashMap<String,String> CONSTANT_NAME_MAP=buildTagMap(); // contains a map of tag names to the tag constants, allowing standard tags to be tested using == operator instead of equals()
|
199 |
private static final HashMap<String,HTMLElementTerminatingTagNameSets> TERMINATING_TAG_NAME_SETS_MAP=buildTerminatingTagNameSetsMap(); // contains a map of tags having optional end tags to the HTMLElementTerminatingTagNameSets that can terminate the element if the end tag is not present
|
200 |
private static final Set<String> END_TAG_OPTIONAL_SET=TERMINATING_TAG_NAME_SETS_MAP.keySet();
|
201 |
private static final HTMLElementNameSet END_TAG_REQUIRED_SET=new HTMLElementNameSet().union(ALL).minus(END_TAG_FORBIDDEN_SET).minus(END_TAG_OPTIONAL_SET);
|
202 |
private static final HTMLElementNameSet CLOSING_SLASH_IGNORED_SET=new HTMLElementNameSet().union(END_TAG_OPTIONAL_SET).union(END_TAG_REQUIRED_SET);
|
203 |
|
204 |
static final HTMLElementNameSet END_TAG_REQUIRED_NESTING_FORBIDDEN_SET=new HTMLElementNameSet().union(A).union(ADDRESS).union(APPLET).union(BUTTON).union(CAPTION).union(DATALIST).union(FORM).union(HGROUP).union(IFRAME).union(LABEL).union(LEGEND).union(OPTGROUP).union(SCRIPT).union(SELECT).union(STYLE).union(TEXTAREA).union(TITLE);
|
205 |
private static final HTMLElementNameSet END_TAG_OPTIONAL_NESTING_FORBIDDEN_SET=new HTMLElementNameSet().union(BODY).union(COLGROUP).union(HEAD).union(HTML).union(OPTION).union(P).union(RP).union(RT);
|
206 |
private static final HTMLElementNameSet NESTING_FORBIDDEN_SET=new HTMLElementNameSet().union(END_TAG_REQUIRED_NESTING_FORBIDDEN_SET).union(END_TAG_OPTIONAL_NESTING_FORBIDDEN_SET).union(END_TAG_FORBIDDEN_SET);
|
207 |
|
208 |
private HTMLElements() {}
|
209 |
|
210 |
/**
|
211 |
* Returns a list containing all of the {@linkplain HTMLElementName HTML element names}.
|
212 |
* <p>
|
213 |
* The returned list is in alphabetical order.
|
214 |
*
|
215 |
* @return a list containing of all the {@linkplain HTMLElementName HTML element names}.
|
216 |
*/
|
217 |
public static final List<String> getElementNames() {
|
218 |
return ALL;
|
219 |
}
|
220 |
|
221 |
/**
|
222 |
* Returns a set containing the {@linkplain Element#getName() names} of all the
|
223 |
* <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q5">block-level elements</a>.
|
224 |
* <p>
|
225 |
* The element names contained in this set are:<br />
|
226 |
* {@link HTMLElementName#ADDRESS ADDRESS},
|
227 |
* {@link HTMLElementName#ARTICLE article}, {@link HTMLElementName#ASIDE aside},
|
228 |
* {@link HTMLElementName#BLOCKQUOTE BLOCKQUOTE}, {@link HTMLElementName#CENTER CENTER},
|
229 |
* {@link HTMLElementName#DETAILS details},
|
230 |
* {@link HTMLElementName#DIR DIR}, {@link HTMLElementName#DIV DIV},
|
231 |
* {@link HTMLElementName#DL DL}, {@link HTMLElementName#FIELDSET FIELDSET},
|
232 |
* {@link HTMLElementName#FOOTER footer},
|
233 |
* {@link HTMLElementName#FORM FORM},
|
234 |
* {@link HTMLElementName#H1 H1}, {@link HTMLElementName#H2 H2}, {@link HTMLElementName#H3 H3}, {@link HTMLElementName#H4 H4}, {@link HTMLElementName#H5 H5}, {@link HTMLElementName#H6 H6},
|
235 |
* {@link HTMLElementName#HEADER header}, {@link HTMLElementName#HGROUP hgroup},
|
236 |
* {@link HTMLElementName#HR HR}, {@link HTMLElementName#ISINDEX ISINDEX}, {@link HTMLElementName#MENU MENU},
|
237 |
* {@link HTMLElementName#NAV nav},
|
238 |
* {@link HTMLElementName#NOFRAMES NOFRAMES}, {@link HTMLElementName#NOSCRIPT NOSCRIPT},
|
239 |
* {@link HTMLElementName#OL OL}, {@link HTMLElementName#P P}, {@link HTMLElementName#PRE PRE},
|
240 |
* {@link HTMLElementName#SECTION section},
|
241 |
* {@link HTMLElementName#TABLE TABLE}, {@link HTMLElementName#UL UL}
|
242 |
* <p>
|
243 |
* This set is defined in the <a target="_blank" href="http://www.w3.org/TR/html401/sgml/loosedtd.html">HTML 4.01 Transitional DTD</a>,
|
244 |
* but more detailed information can be found in the
|
245 |
* <a target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#h-7.5.3">HTML 4.01 specification section 7.5.3 - Block-level and inline elements</a>
|
246 |
* and the <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q5">CSS2 specification section 9.2.1 - Block-level elements and block boxes</a>.
|
247 |
* <p>
|
248 |
* The CSS2 <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#display-prop">display</a> property can be used
|
249 |
* to override the normal box type of an element.
|
250 |
*
|
251 |
* @return a set containing the {@linkplain Element#getName() names} of all the <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q5">block-level elements</a>.
|
252 |
* @see #getInlineLevelElementNames()
|
253 |
*/
|
254 |
public static Set<String> getBlockLevelElementNames() {
|
255 |
return BLOCK;
|
256 |
}
|
257 |
|
258 |
/**
|
259 |
* Returns a set containing the {@linkplain Element#getName() names} of all the
|
260 |
* <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q7">inline-level elements</a>.
|
261 |
* <p>
|
262 |
* The element names contained in this set are:<br />
|
263 |
* {@link HTMLElementName#A A}, {@link HTMLElementName#ABBR ABBR}, {@link HTMLElementName#ACRONYM ACRONYM}, {@link HTMLElementName#APPLET APPLET}, {@link HTMLElementName#B B}, {@link HTMLElementName#BASEFONT BASEFONT},
|
264 |
* {@link HTMLElementName#BDI bdi},
|
265 |
* {@link HTMLElementName#BDO BDO}, {@link HTMLElementName#BIG BIG}, {@link HTMLElementName#BR BR}, {@link HTMLElementName#BUTTON BUTTON}, {@link HTMLElementName#CITE CITE}, {@link HTMLElementName#CODE CODE},
|
266 |
* {@link HTMLElementName#DEL DEL}, {@link HTMLElementName#DFN DFN}, {@link HTMLElementName#EM EM}, {@link HTMLElementName#FONT FONT}, {@link HTMLElementName#I I}, {@link HTMLElementName#IFRAME IFRAME}, {@link HTMLElementName#IMG IMG},
|
267 |
* {@link HTMLElementName#INPUT INPUT}, {@link HTMLElementName#INS INS}, {@link HTMLElementName#KBD KBD},
|
268 |
* {@link HTMLElementName#KEYGEN keygen},
|
269 |
* {@link HTMLElementName#LABEL LABEL}, {@link HTMLElementName#MAP MAP},
|
270 |
* {@link HTMLElementName#MARK mark}, {@link HTMLElementName#METER meter},
|
271 |
* {@link HTMLElementName#OBJECT OBJECT},
|
272 |
* {@link HTMLElementName#OUTPUT output}, {@link HTMLElementName#PROGRESS progress},
|
273 |
* {@link HTMLElementName#Q Q},
|
274 |
* {@link HTMLElementName#RP rp}, {@link HTMLElementName#RT rt}, {@link HTMLElementName#RUBY ruby},
|
275 |
* {@link HTMLElementName#S S}, {@link HTMLElementName#SAMP SAMP}, {@link HTMLElementName#SCRIPT SCRIPT}, {@link HTMLElementName#SELECT SELECT}, {@link HTMLElementName#SMALL SMALL},
|
276 |
* {@link HTMLElementName#SPAN SPAN}, {@link HTMLElementName#STRIKE STRIKE}, {@link HTMLElementName#STRONG STRONG}, {@link HTMLElementName#SUB SUB}, {@link HTMLElementName#SUP SUP}, {@link HTMLElementName#TEXTAREA TEXTAREA},
|
277 |
* {@link HTMLElementName#TIME time},
|
278 |
* {@link HTMLElementName#TT TT}, {@link HTMLElementName#U U}, {@link HTMLElementName#VAR VAR},
|
279 |
* {@link HTMLElementName#WBR wbr}
|
280 |
* <p>
|
281 |
* This set is defined in the <a target="_blank" href="http://www.w3.org/TR/html401/sgml/loosedtd.html">HTML 4.01 Transitional DTD</a>,
|
282 |
* but more detailed information can be found in the
|
283 |
* <a target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#h-7.5.3">HTML 4.01 specification section 7.5.3 - Block-level and inline elements</a>
|
284 |
* and the <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q7">CSS2 specification section 9.2.2 - Inline-level elements and inline boxes</a>.
|
285 |
* <p>
|
286 |
* The CSS2 <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#display-prop">display</a> property can be used
|
287 |
* to override the normal box type of an element.
|
288 |
* <p>
|
289 |
* The <a target="_blank" href="http://www.w3.org/TR/html401/struct/global.html#h-7.2">HTML Document Type Definitions</a>
|
290 |
* forbid the presence of {@linkplain #getBlockLevelElementNames() block-level elements} inside inline-level elements,
|
291 |
* but it is tolerated by all popular browsers in various situations, even in XHTML documents.
|
292 |
* The most notorious example of this is the common inclusion of block-level elements inside {@link HTMLElementName#FONT FONT} elements.
|
293 |
*
|
294 |
* @return a set containing the {@linkplain Element#getName() names} of all the <a target="_blank" href="http://www.w3.org/TR/REC-CSS2/visuren.html#q7">inline-level elements</a>.
|
295 |
* @see #getBlockLevelElementNames()
|
296 |
*/
|
297 |
public static Set<String> getInlineLevelElementNames() {
|
298 |
return INLINE;
|
299 |
}
|
300 |
|
301 |
/**
|
302 |
* Returns a set containing the {@linkplain Element#getName() names} of all
|
303 |
* <a target="_blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">deprecated</a> elements in HTML 4.01.
|
304 |
* @return a set containing the {@linkplain Element#getName() names} of all <a target="_blank" href="http://www.w3.org/TR/html401/conform.html#deprecated">deprecated</a> elements in HTML 4.01.
|
305 |
*/
|
306 |
public static Set<String> getDeprecatedElementNames() {
|
307 |
return DEPRECATED;
|
308 |
}
|
309 |
|
310 |
/**
|
311 |
* Returns a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a>
|
312 |
* for which the {@linkplain Element#getEndTag() end tag} is <i>forbidden</i>.
|
313 |
* <p>
|
314 |
* See the <a href="Element.html#ParsingRulesHTMLEndTagForbidden">element parsing rules for HTML elements with forbidden end tags</a>
|
315 |
* for more information.
|
316 |
* <p>
|
317 |
* The <a target="_blank" href="http://www.w3.org/TR/html401/index/elements.html">index of elements in the HTML 4.01 specification</a>
|
318 |
* includes the letter '<b>F</b>' in the "<b>End Tag</b>" column for elements whose end tag is forbidden.
|
319 |
*
|
320 |
* @return a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a> for which the {@linkplain Element#getEndTag() end tag} is <i>forbidden</i>.
|
321 |
* @see #getEndTagOptionalElementNames()
|
322 |
* @see #getEndTagRequiredElementNames()
|
323 |
*/
|
324 |
public static Set<String> getEndTagForbiddenElementNames() {
|
325 |
return END_TAG_FORBIDDEN_SET;
|
326 |
}
|
327 |
|
328 |
/**
|
329 |
* Returns a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a>
|
330 |
* for which the {@linkplain Element#getEndTag() end tag} is <i>optional</i>.
|
331 |
* <p>
|
332 |
* Elements with these names may be <a href="Element.html#ImplicitlyTerminated">implicitly terminated</a> by a subsequent
|
333 |
* {@linkplain #getTerminatingStartTagNames(String) terminating start tag} or
|
334 |
* {@linkplain #getTerminatingEndTagNames(String) terminating end tag}.
|
335 |
* A list of the these terminating tags, and the names of {@linkplain #getNonterminatingElementNames(String) non-terminating elements}
|
336 |
* that can be nested within the element, can be found in the documentation of each relevant element in the {@link HTMLElementName} class.
|
337 |
* <p>
|
338 |
* See the <a href="Element.html#ParsingRulesHTMLEndTagOptional">element parsing rules for HTML elements with optional end tags</a>
|
339 |
* for more information.
|
340 |
* <p>
|
341 |
* The <a target="_blank" href="http://www.w3.org/TR/html401/index/elements.html">index of elements in the HTML 4.01 specification</a>
|
342 |
* includes the letter '<b>O</b>' in the "<b>End Tag</b>" column for elements whose end tag is optional.
|
343 |
*
|
344 |
* @return a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a> for which the {@linkplain Element#getEndTag() end tag} is <i>optional</i>.
|
345 |
* @see #getEndTagForbiddenElementNames()
|
346 |
* @see #getEndTagRequiredElementNames()
|
347 |
*/
|
348 |
public static Set<String> getEndTagOptionalElementNames() {
|
349 |
return END_TAG_OPTIONAL_SET;
|
350 |
}
|
351 |
|
352 |
/**
|
353 |
* Returns a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a>
|
354 |
* for which the {@linkplain Element#getEndTag() end tag} is <i>required</i>.
|
355 |
* <p>
|
356 |
* See the <a href="Element.html#ParsingRulesHTMLEndTagRequired">element parsing rules for HTML elements with required end tags</a>
|
357 |
* for more information.
|
358 |
* <p>
|
359 |
* The <a target="_blank" href="http://www.w3.org/TR/html401/index/elements.html">index of elements in the HTML 4.01 specification</a>
|
360 |
* leaves the "<b>End Tag</b>" column blank for elements whose end tag is required.
|
361 |
*
|
362 |
* @return a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a> for which the {@linkplain Element#getEndTag() end tag} is <i>required</i>.
|
363 |
* @see #getEndTagForbiddenElementNames()
|
364 |
* @see #getEndTagOptionalElementNames()
|
365 |
*/
|
366 |
public static Set<String> getEndTagRequiredElementNames() {
|
367 |
return END_TAG_REQUIRED_SET;
|
368 |
}
|
369 |
|
370 |
/**
|
371 |
* Returns a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a>
|
372 |
* for which the {@linkplain Element#getStartTag() start tag} is optional.
|
373 |
* <p>
|
374 |
* Elements with optional start tags must be present in the <a target="_blank" href="http://www.w3.org/DOM/">document object model</a> (DOM)
|
375 |
* in certain locations, either forming part of the structure of the HTML document as a whole
|
376 |
* (e.g. the {@link HTMLElementName#HTML HTML}, {@link HTMLElementName#HEAD HEAD}, and {@link HTMLElementName#BODY BODY} elements),
|
377 |
* or forming part of the structure of a {@link HTMLElementName#TABLE TABLE} element (e.g. the {@link HTMLElementName#TBODY TBODY} element).
|
378 |
* The location of an <a target="_blank" href="http://www.w3.org/TR/html401/intro/sgmltut.html#idx-element-9">omitted</a> start tag
|
379 |
* in the document's object model can be inferred from the surrounding elements.
|
380 |
* <p>
|
381 |
* This library does not use this property in any way when parsing documents, and does not construct a document object model from the
|
382 |
* source, so no implied element is created where an optional start tag is omitted.
|
383 |
* <p>
|
384 |
* When the start tag has been omitted in the document text, the corresponding end tag should also be omitted.
|
385 |
* <p>
|
386 |
* The <a target="_blank" href="http://www.w3.org/TR/html401/index/elements.html">index of elements in the HTML 4.01 specification</a>
|
387 |
* includes the letter '<b>O</b>' in the "<b>Start Tag</b>" column for elements whose start tag is optional.
|
388 |
*
|
389 |
* @return a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a> for which the {@linkplain Element#getStartTag() start tag} is optional.
|
390 |
*/
|
391 |
public static Set<String> getStartTagOptionalElementNames() {
|
392 |
return START_TAG_OPTIONAL_SET;
|
393 |
}
|
394 |
|
395 |
/**
|
396 |
* Returns the {@linkplain StartTag#getName() names} of start tags that <a href="#ImplicitlyTerminated">implicitly terminate</a>
|
397 |
* an <a href="#HTMLElement">HTML element</a> with the specified name.
|
398 |
* <p>
|
399 |
* This method is only relevant to <a href="#HTMLElement">HTML elements</a> for which the
|
400 |
* {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
401 |
* It returns <code>null</code> if
|
402 |
* <br />{@link #getEndTagOptionalElementNames()}<code>.contains(endTagOptionalElementName.toLowerCase())==null</code>.
|
403 |
*
|
404 |
* @param endTagOptionalElementName the {@linkplain Element#getName() name} of an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
405 |
* @return the {@linkplain StartTag#getName() names} of start tags that <a href="Element.html#ImplicitlyTerminated">implicitly terminate</a> an <a href="#HTMLElement">HTML element</a> with the specified name, or <code>null</code> if the name does not identify an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
406 |
* @see #getTerminatingEndTagNames(String endTagOptionalElementName)
|
407 |
* @see #getNonterminatingElementNames(String endTagOptionalElementName)
|
408 |
*/
|
409 |
public static Set<String> getTerminatingStartTagNames(final String endTagOptionalElementName) {
|
410 |
final HTMLElementTerminatingTagNameSets terminatingTagNameSets=getTerminatingTagNameSets(endTagOptionalElementName);
|
411 |
if (terminatingTagNameSets==null) return null;
|
412 |
return terminatingTagNameSets.TerminatingStartTagNameSet;
|
413 |
}
|
414 |
|
415 |
/**
|
416 |
* Returns the {@linkplain EndTag#getName() names} of end tags that <a href="#ImplicitlyTerminated">implicitly terminate</a>
|
417 |
* an <a href="#HTMLElement">HTML element</a> with the specified name.
|
418 |
* <p>
|
419 |
* This method is only relevant to <a href="#HTMLElement">HTML elements</a> for which the
|
420 |
* {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
421 |
* It returns <code>null</code> if
|
422 |
* <br />{@link #getEndTagOptionalElementNames()}<code>.contains(endTagOptionalElementName.toLowerCase())==null</code>.
|
423 |
* <p>
|
424 |
* Note that removing the tag name matching the specified element has no effect on the behaviour of the parser,
|
425 |
* as it is always assumed that a start tag is terminated by an end tag with a matching name.
|
426 |
*
|
427 |
* @param endTagOptionalElementName the {@linkplain Element#getName() name} of an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
428 |
* @return the {@linkplain StartTag#getName() names} of end tags that <a href="Element.html#ImplicitlyTerminated">implicitly terminate</a> an <a href="#HTMLElement">HTML element</a> with the specified name, or <code>null</code> if the name does not identify an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
429 |
* @see #getTerminatingStartTagNames(String endTagOptionalElementName)
|
430 |
* @see #getNonterminatingElementNames(String endTagOptionalElementName)
|
431 |
*/
|
432 |
public static Set<String> getTerminatingEndTagNames(final String endTagOptionalElementName) {
|
433 |
final HTMLElementTerminatingTagNameSets terminatingTagNameSets=getTerminatingTagNameSets(endTagOptionalElementName);
|
434 |
if (terminatingTagNameSets==null) return null;
|
435 |
return terminatingTagNameSets.TerminatingEndTagNameSet;
|
436 |
}
|
437 |
|
438 |
/**
|
439 |
* Returns the {@linkplain Element#getName() names} of elements that do NOT <a href="#ImplicitlyTerminated">implicitly terminate</a>
|
440 |
* an <a href="#HTMLElement">HTML element</a> with the specified name.
|
441 |
* Neither can any tag nested inside any of these elements <a href="#ImplicitlyTerminated">implicitly terminate</a> the specified element,
|
442 |
* even if it is listed as one of the {@linkplain #getTerminatingStartTagNames(String) terminating start tags} or
|
443 |
* {@linkplain #getTerminatingEndTagNames(String) terminating end tags}.
|
444 |
* <p>
|
445 |
* This method is only relevant to <a href="#HTMLElement">HTML elements</a> for which the
|
446 |
* {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
447 |
* It returns <code>null</code> if
|
448 |
* <br />{@link #getEndTagOptionalElementNames()}<code>.contains(endTagOptionalElementName.toLowerCase())==null</code>.
|
449 |
*
|
450 |
* @param endTagOptionalElementName the {@linkplain Element#getName() name} of an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
451 |
* @return the {@linkplain Element#getName() names} of elements that do NOT <a href="#ImplicitlyTerminated">implicitly terminate</a> an <a href="#HTMLElement">HTML element</a> with the specified name, or <code>null</code> if the name does not identify an element for which the {@linkplain #getEndTagOptionalElementNames() end tag is optional}.
|
452 |
* @see #getTerminatingStartTagNames(String endTagOptionalElementName)
|
453 |
* @see #getTerminatingEndTagNames(String endTagOptionalElementName)
|
454 |
*/
|
455 |
public static Set<String> getNonterminatingElementNames(final String endTagOptionalElementName) {
|
456 |
final HTMLElementTerminatingTagNameSets terminatingTagNameSets=getTerminatingTagNameSets(endTagOptionalElementName);
|
457 |
if (terminatingTagNameSets==null) return null;
|
458 |
return terminatingTagNameSets.NonterminatingElementNameSet;
|
459 |
}
|
460 |
|
461 |
/**
|
462 |
* Returns a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a>
|
463 |
* which should never contain elements of the same name, either as direct or indirect descendants.
|
464 |
*
|
465 |
* @return a set containing the {@linkplain Element#getName() names} of all of the <a href="#HTMLElement">HTML elements</a> which should never contain elements of the same name.
|
466 |
*/
|
467 |
public static Set<String> getNestingForbiddenElementNames() {
|
468 |
return NESTING_FORBIDDEN_SET;
|
469 |
}
|
470 |
|
471 |
static final String getConstantElementName(final String elementName) {
|
472 |
final String elementNameConstant=CONSTANT_NAME_MAP.get(elementName);
|
473 |
return elementNameConstant!=null ? elementNameConstant : elementName;
|
474 |
}
|
475 |
|
476 |
static final boolean isClosingSlashIgnored(final String elementName) {
|
477 |
if (Config.IsHTMLEmptyElementTagRecognised) return false;
|
478 |
return CLOSING_SLASH_IGNORED_SET.contains(elementName);
|
479 |
}
|
480 |
|
481 |
static final HTMLElementTerminatingTagNameSets getTerminatingTagNameSets(final String endTagOptionalElementName) {
|
482 |
return TERMINATING_TAG_NAME_SETS_MAP.get(endTagOptionalElementName);
|
483 |
}
|
484 |
|
485 |
private static HashMap<String,HTMLElementTerminatingTagNameSets> buildTerminatingTagNameSetsMap() {
|
486 |
// HTML is included in the NonterminatingElementNameSet of BODY and HTML in case the source contains (illegaly) nested HTML documents
|
487 |
final HashMap<String,HTMLElementTerminatingTagNameSets> map=new HashMap<String,HTMLElementTerminatingTagNameSets>(20,1.0F); // 15 entries in total
|
488 |
map.put(BODY,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(), new HTMLElementNameSet(HTML).union(BODY), new HTMLElementNameSet(HTML)));
|
489 |
map.put(COLGROUP,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR).union(COLGROUP), new HTMLElementNameSet(TABLE).union(COLGROUP), new HTMLElementNameSet(TABLE)));
|
490 |
map.put(DD,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_DD_DT), new HTMLElementNameSet(DL).union(DD), new HTMLElementNameSet(DL)));
|
491 |
map.put(DT,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_DD_DT), new HTMLElementNameSet(DL).union(DT), new HTMLElementNameSet(DL)));
|
492 |
map.put(HEAD,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(BODY).union(FRAMESET), new HTMLElementNameSet(HTML).union(HEAD), new HTMLElementNameSet()));
|
493 |
map.put(HTML,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(), new HTMLElementNameSet(HTML), new HTMLElementNameSet(HTML)));
|
494 |
map.put(LI,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(LI), new HTMLElementNameSet(_UL_OL).union(LI), new HTMLElementNameSet(_UL_OL)));
|
495 |
map.put(OPTION,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(OPTION).union(OPTGROUP), new HTMLElementNameSet(SELECT).union(OPTION), new HTMLElementNameSet()));
|
496 |
map.put(P,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(BLOCK).union(_DD_DT).union(TH).union(TD).union(LI), new HTMLElementNameSet(BLOCK).union(_DD_DT).union(BODY).union(HTML).union(_THEAD_TBODY_TFOOT_TR_TD_TH).union(CAPTION).union(LEGEND), new HTMLElementNameSet()));
|
497 |
map.put(RP,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(RP).union(RT), new HTMLElementNameSet(RUBY), new HTMLElementNameSet()));
|
498 |
map.put(RT,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(RP).union(RT), new HTMLElementNameSet(RUBY), new HTMLElementNameSet()));
|
499 |
map.put(TBODY,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(TBODY).union(TFOOT).union(THEAD), new HTMLElementNameSet(TABLE).union(TBODY), new HTMLElementNameSet(TABLE)));
|
500 |
map.put(TD,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR_TD_TH), new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR).union(TABLE).union(TD), new HTMLElementNameSet(TABLE)));
|
501 |
map.put(TFOOT,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(TBODY).union(TFOOT).union(THEAD), new HTMLElementNameSet(TABLE).union(TFOOT), new HTMLElementNameSet(TABLE)));
|
502 |
map.put(TH,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR_TD_TH), new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR).union(TABLE).union(TH), new HTMLElementNameSet(TABLE)));
|
503 |
map.put(THEAD,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(TBODY).union(TFOOT).union(THEAD), new HTMLElementNameSet(TABLE).union(THEAD), new HTMLElementNameSet(TABLE)));
|
504 |
map.put(TR,new HTMLElementTerminatingTagNameSets(new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR), new HTMLElementNameSet(_THEAD_TBODY_TFOOT_TR).union(TABLE), new HTMLElementNameSet(TABLE)));
|
505 |
return map;
|
506 |
}
|
507 |
|
508 |
private static HashMap<String,String> buildTagMap() {
|
509 |
final HashMap<String,String> map=new HashMap<String,String>(132,1.0F); // 99 tags total
|
510 |
for (String tagName : ALL) map.put(tagName,tagName);
|
511 |
map.put(StartTagTypeMarkupDeclaration.ELEMENT,StartTagTypeMarkupDeclaration.ELEMENT);
|
512 |
map.put(StartTagTypeMarkupDeclaration.ATTLIST,StartTagTypeMarkupDeclaration.ATTLIST);
|
513 |
map.put(StartTagTypeMarkupDeclaration.ENTITY,StartTagTypeMarkupDeclaration.ENTITY);
|
514 |
map.put(StartTagTypeMarkupDeclaration.NOTATION,StartTagTypeMarkupDeclaration.NOTATION);
|
515 |
map.put(StartTagTypeMicrosoftDownlevelRevealedConditionalComment.IF,StartTagTypeMicrosoftDownlevelRevealedConditionalComment.IF);
|
516 |
map.put(StartTagTypeMicrosoftDownlevelRevealedConditionalComment.ENDIF,StartTagTypeMicrosoftDownlevelRevealedConditionalComment.ENDIF);
|
517 |
return map;
|
518 |
}
|
519 |
}
|