Features listed in this section will trigger warnings in conformance checkers.
Authors should not specify a border attribute on an
img element. If the attribute is present, its value
must be the string "0". CSS should be used
instead.
Authors should not specify a language attribute on a
script element. If the attribute is present, its value
must be an ASCII case-insensitive match for the string
"JavaScript" and either the type attribute must be omitted or
its value must be an ASCII case-insensitive match for
the string "text/javascript". The attribute
should be entirely omitted instead (with the value "JavaScript", it has no effect), or replaced with use
of the type attribute.
Authors should not specify the name attribute on a
elements. If the attribute is present, its value must not be the
empty string and must neither be equal to the value of any of the
IDs in the element's home
subtree other than the element's own ID, if any, nor be equal to the value of
any of the other name attributes on
a elements in the element's home
subtree. If this attribute is present and the element has an
ID, then the attribute's value must
be equal to the element's ID. In
earlier versions of the language, this attribute was intended as a
way to specify possible targets for fragment identifiers in URLs. The id
attribute should be used instead.
Authors should not, but may despite requirements to the contrary
elsewhere in this specification, specify the maxlength and size attributes on input
elements whose type attributes
are in the Number state.
One valid reason for using these attributes regardless is to help
legacy user agents that do not support input elements
with type="number" to still render the text
field with a useful width.
In the HTML syntax, specifying a DOCTYPE that is an obsolete permitted DOCTYPE will also trigger a warning.
To ease the transition from HTML4 Transitional documents to the language defined in this specification, and to discourage certain features that are only allowed in very few circumstances, conformance checkers are required to warn the user when the following features are used in a document. These are generally old obsolete features that have no effect, and are allowed only to distinguish between likely mistakes (regular conformance errors) and mere vestigial markup or unusual and discouraged practices (these warnings).
The following features must be categorized as described above:
The presence of an obsolete permitted DOCTYPE in an HTML document.
The presence of a border attribute on an
img element if its value is the string "0".
The presence of a language attribute on a
script element if its value is an ASCII
case-insensitive match for the string "JavaScript" and if there is no type attribute or there is and its
value is an ASCII case-insensitive match for the
string "text/javascript".
The presence of a name
attribute on an a element, if its value is not the
empty string.
The presence of a maxlength attribute on an
input element whose type attribute is in the Number state.
The presence of a size attribute on an
input element whose type attribute is in the Number state.
Conformance checkers must distinguish between pages that have no conformance errors and have none of these obsolete features, and pages that have no conformance errors but do have some of these obsolete features.
For example, a validator could report some pages as "Valid HTML" and others as "Valid HTML with warnings".
Elements in the following list are entirely obsolete, and must not be used by authors:
appletacronymUse abbr instead.
bgsoundUse audio instead.
dirUse ul instead.
frameframesetnoframesEither use iframe and CSS instead, or use server-side includes to generate complete pages with the various invariant parts merged in.
isindexUse an explicit form and text field combination instead.
listingnextidUse GUIDs instead.
noembedplaintextUse the "text/plain" MIME type instead.
rbProviding the ruby base directly inside the ruby element is sufficient; the rb element is unnecessary. Omit it altogether.
strikeUse del instead if the element is marking an edit, otherwise use s instead.
xmpUse pre and code instead, and escape "<" and "&" characters as "<" and "&" respectively.
basefontbigblinkcenterfontmarqueemulticolnobrspacerttUse appropriate elements and/or CSS instead.
Where the tt element would have been used for
marking up keyboard input, consider the kbd element;
for variables, consider the var element; for computer
code, consider the code element; and for computer
output, consider the samp element.
Similarly, if the big element is being used to
denote a heading, consider using the h1 element; if
it is being used for marking up important passages, consider the
strong element; and if it is being used for
highlighting text for reference purposes, consider the
mark element.
See also the text-level semantics usage summary for more suggestions with examples.
The following attributes are obsolete (though the elements are still part of the language), and must not be used by authors:
charset on a elementscharset on link elementsUse an HTTP Content-Type header on the linked resource instead.
coords on a elementsshape on a elementsmethods on a elementsmethods on link elementsUse the HTTP OPTIONS feature instead.
name on a elements (except as noted in the previous section)name on embed elementsname on img elementsname on option elementsUse the id attribute instead.
rev on a elementsrev on link elementsUse the rel
attribute instead, with an opposite term. (For example, instead of
rev="made", use rel="author".)
urn on a elementsurn on link elementsSpecify the preferred persistent identifier using the href attribute instead.
accept on form elementsUse the accept attribute directly on the input elements instead.
nohref on area elementsOmitting the href
attribute is sufficient; the nohref attribute is
unnecessary. Omit it altogether.
profile on head elementsWhen used for declaring which meta terms are
used in the document, unnecessary; omit it altogether, and register the names.
When used for triggering specific user agent behaviors: use
a link element instead.
version on html elementsUnnecessary. Omit it altogether.
usemap on input elementslongdesc on iframe elementslongdesc on img elementsUse a regular a element to link to the
description, or (in the case of images) use an image
map to provide a link from the image to the image's
description.
lowsrc on img elementsUse a progressive JPEG image (given in the src attribute),
instead of using two separate images.
target on link elementsUnnecessary. Omit it altogether.
scheme on meta elementsUse only one scheme per field, or make the scheme declaration part of the value.
archive on object elementsclassid on object elementscode on object elementscodebase on object elementscodetype on object elementsUse the data and type attributes to invoke plugins. To set parameters with these names
in particular, the param element can be used.
declare on object elementsRepeat the object element completely each time the resource is to be reused.
standby on object elementsOptimize the linked resource so that it loads quickly or, at least, incrementally.
type on param elementsvaluetype on param elementsUse the name and value attributes without declaring
value types.
language on script elements (except as noted in the previous section)Use the type attribute
instead.
event on script elementsfor on script elementsUse DOM Events mechanisms to register event listeners. [DOMCORE]
datapagesize on table elementsUnnecessary. Omit it altogether.
summary on table elementsUse one of the techniques for describing
tables given in the table section
instead.
abbr on td and th elementsUse text that begins in an unambiguous and terse manner, and include any more elaborate text after that. The title attribute can also be useful in including more detailed text, so that the cell's contents can be made terse.
axis on td and th elementsscope on td elementsUse th elements for heading cells.
datasrc on a, applet, button, div, frame, iframe, img, input, label, legend, marquee, object, option, select, span, table, and textarea elementsdatafld on a, applet, button, div, fieldset, frame, iframe, img, input, label, legend, marquee, object, param, select, span, and textarea elementsdataformatas on button, div, input, label, legend, marquee, object, option, select, span, and table elementsUse script and a mechanism such as XMLHttpRequest to populate the page dynamically. [XHR]
alink on body elementsbgcolor on body elementslink on body elementsmarginbottom on body elementsmarginheight on body elementsmarginleft on body elementsmarginright on body elementsmargintop on body elementsmarginwidth on body elementstext on body elementsvlink on body elementsclear on br elementsalign on caption elementsalign on col elementschar on col elementscharoff on col elementsvalign on col elementswidth on col elementsalign on div elementscompact on dl elementsalign on embed elementshspace on embed elementsvspace on embed elementsalign on hr elementscolor on hr elementsnoshade on hr elementssize on hr elementswidth on hr elementsalign on h1—h6 elementsalign on iframe elementsallowtransparency on iframe elementsframeborder on iframe elementshspace on iframe elementsmarginheight on iframe elementsmarginwidth on iframe elementsscrolling on iframe elementsvspace on iframe elementsalign on input elementshspace on input elementsvspace on input elementsalign on img elementsborder on img elements (except as noted in the previous section)hspace on img elementsvspace on img elementsalign on legend elementstype on li elementscompact on menu elementsalign on object elementsborder on object elementshspace on object elementsvspace on object elementscompact on ol elementsalign on p elementswidth on pre elementsalign on table elementsbgcolor on table elementscellpadding on table elementscellspacing on table elementsframe on table elementsrules on table elementswidth on table elementsalign on tbody, thead, and tfoot elementschar on tbody, thead, and tfoot elementscharoff on tbody, thead, and tfoot elementsvalign on tbody, thead, and tfoot elementsalign on td and th elementsbgcolor on td and th elementschar on td and th elementscharoff on td and th elementsheight on td and th elementsnowrap on td and th elementsvalign on td and th elementswidth on td and th elementsalign on tr elementsbgcolor on tr elementschar on tr elementscharoff on tr elementsvalign on tr elementscompact on ul elementstype on ul elementsbackground on body, table, thead, tbody, tfoot, tr, td, and th elementsUse CSS instead.
The border attribute on
the table element can be used to provide basic fallback
styling for the purpose of making tables legible in browsing
environments where CSS support is limited or absent, such as
text-based browsers, WYSIWYG editors, and in situations where CSS
support is disabled or the style sheet is lost. Only the empty
string and the value "1" may be used as border values for this purpose.
Other values are considered obsolete. To regulate the thickness of
such borders, authors should instead use CSS.
applet elementThe applet element is a Java-specific variant of the
embed element. The applet element is now
obsoleted so that all extension frameworks (Java, .NET, Flash, etc)
are handled in a consistent manner.
When the element is still in the
stack of open elements of an HTML parser
or XML parser, and when the element is not in a
Document, and when the element's document is not
fully active, and when the element's
Document's browsing context had its
sandboxed plugins browsing context flag when that
Document was created, and when the element has an
ancestor media element, and when the element has an
ancestor object element that is not showing
its fallback content, and when no Java Language runtime
plugin is available, and when one is available
but it is disabled, the element represents its
contents.
Otherwise, the user agent should instantiate a Java Language
runtime plugin, and should pass the names and values of
all the attributes on the element, in the order they were added to
the element, with the attributes added by the parser being ordered
in source order, and then a parameter named "PARAM" whose value is
null, and then all the names and values of parameters given by
param elements that are children of the
applet element, in tree order, to the
plugin used. If the plugin supports a
scriptable interface, the HTMLAppletElement object
representing the element should expose that interface. The
applet element represents the
plugin.
The applet element is unaffected by the
CSS 'display' property. The Java Language runtime is instantiated
even if the element is hidden with a 'display:none' CSS style.
The applet element must implement the
HTMLAppletElement interface.
interface HTMLAppletElement : HTMLElement { attribute DOMString align; attribute DOMString alt; attribute DOMString archive; attribute DOMString code; attribute DOMString codeBase; attribute DOMString height; attribute unsigned long hspace; attribute DOMString name; attribute DOMString _object; // the underscore is not part of the identifier attribute unsigned long vspace; attribute DOMString width; };
The align, alt, archive, code, height, hspace, name, object, vspace, and width IDL attributes
must reflect the respective content attributes of the
same name. For the purposes of reflection, the applet
element's object content
attribute is defined as containing a URL.
The codeBase
IDL attribute must reflect the codebase content attribute,
which for the purposes of reflection is defined as containing a
URL.
marquee elementThe marquee element is a presentational element that
animates content. CSS transitions and animations are a more
appropriate mechanism.
The task source for tasks mentioned in this section is the DOM manipulation task source.
The marquee element must implement the
HTMLMarqueeElement interface.
interface HTMLMarqueeElement : HTMLElement { attribute DOMString behavior; attribute DOMString bgColor; attribute DOMString direction; attribute DOMString height; attribute unsigned long hspace; attribute long loop; attribute unsigned long scrollAmount; attribute unsigned long scrollDelay; attribute boolean trueSpeed; attribute unsigned long vspace; attribute DOMString width; [TreatNonCallableAsNull] attribute Function? onbounce; [TreatNonCallableAsNull] attribute Function? onfinish; [TreatNonCallableAsNull] attribute Function? onstart; void start(); void stop(); };
A marquee element can be turned on or turned off. When it is created, it
is turned on.
When the start() method is
called, the marquee element must be turned on.
When the stop()
method is called, the marquee element must be turned off.
When a marquee element is created, the user agent
must queue a task to fire a simple event
named start at the element.
The behavior content
attribute on marquee elements is an enumerated
attribute with the following keywords (all
non-conforming):
| Keyword | State |
|---|---|
scroll
| scroll |
slide
| slide |
alternate
| alternate |
The missing value default is the scroll state.
The direction content
attribute on marquee elements is an enumerated
attribute with the following keywords (all
non-conforming):
| Keyword | State |
|---|---|
left
| left |
right
| right |
up
| up |
down
| down |
The missing value default is the left state.
The truespeed content
attribute on marquee elements is a boolean
attribute.
A marquee element has a marquee scroll
interval, which is obtained as follows:
If the element has a scrolldelay attribute, and
parsing its value using the rules for parsing non-negative
integers does not return an error, then let delay be the parsed value. Otherwise, let delay be 85.
If the element does not have a truespeed attribute, and the
delay value is less than 60, then let delay be 60 instead.
The marquee scroll interval is delay, interpreted in milliseconds.
A marquee element has a marquee scroll
distance, which, if the element has a scrollamount attribute, and
parsing its value using the rules for parsing non-negative
integers does not return an error, is the parsed value
interpreted in CSS pixels, and otherwise is 6 CSS pixels.
A marquee element has a marquee loop
count, which, if the element has a loop attribute, and parsing its
value using the rules for parsing integers does not
return an error or a number less than 1, is the parsed value, and
otherwise is −1.
The loop IDL
attribute, on getting, must return the element's marquee loop
count; and on setting, if the new value is different than the
element's marquee loop count and either greater than
zero or equal to −1, must set the element's loop content attribute (adding it
if necessary) to the valid integer that represents the
new value. (Other values are ignored.)
A marquee element also has a marquee current
loop index, which is zero when the element is created.
The rendering layer will occasionally increment the marquee current loop index, which must cause the following steps to be run:
If the marquee loop count is −1, then abort these steps.
Increment the marquee current loop index by one.
If the marquee current loop index is now equal to
or greater than the element's marquee loop count,
turn off the
marquee element and queue a task to
fire a simple event named finish at the marquee
element.
Otherwise, if the behavior attribute is in the
alternate
state, then queue a task to fire a simple
event named bounce at
the marquee element.
Otherwise, queue a task to fire a simple
event named start at the
marquee element.
The following are the event handlers (and their
corresponding event handler
event types) that must be supported, as content and IDL
attributes, by marquee elements:
| Event handler | Event handler event type |
|---|---|
onbounce | bounce
|
onfinish | finish
|
onstart | start
|
The behavior, direction, height, hspace, vspace, and width IDL attributes
must reflect the respective content attributes of the
same name.
The bgColor
IDL attribute must reflect the bgcolor content attribute.
The scrollAmount
IDL attribute must reflect the scrollamount content
attribute. The default value is 6.
The scrollDelay IDL
attribute must reflect the scrolldelay content
attribute. The default value is 85.
The trueSpeed IDL
attribute must reflect the truespeed content
attribute.
The frameset element acts as the
body element in documents that use frames.
The frameset element must implement the
HTMLFrameSetElement interface.
interface HTMLFrameSetElement : HTMLElement { attribute DOMString cols; attribute DOMString rows; [TreatNonCallableAsNull] attribute Function? onafterprint; [TreatNonCallableAsNull] attribute Function? onbeforeprint; [TreatNonCallableAsNull] attribute Function? onbeforeunload; [TreatNonCallableAsNull] attribute Function? onblur; [TreatNonCallableAsNull] attribute Function? onerror; [TreatNonCallableAsNull] attribute Function? onfocus; [TreatNonCallableAsNull] attribute Function? onhashchange; [TreatNonCallableAsNull] attribute Function? onload; [TreatNonCallableAsNull] attribute Function? onmessage; [TreatNonCallableAsNull] attribute Function? onoffline; [TreatNonCallableAsNull] attribute Function? ononline; [TreatNonCallableAsNull] attribute Function? onpagehide; [TreatNonCallableAsNull] attribute Function? onpageshow; [TreatNonCallableAsNull] attribute Function? onpopstate; [TreatNonCallableAsNull] attribute Function? onresize; [TreatNonCallableAsNull] attribute Function? onscroll; [TreatNonCallableAsNull] attribute Function? onstorage; [TreatNonCallableAsNull] attribute Function? onunload; };
The cols and
rows IDL
attributes of the frameset element must
reflect the respective content attributes of the same
name.
The frameset element must support the following
event handler content attributes exposing the
event handlers of the Window object:
onafterprintonbeforeprintonbeforeunloadonbluronerroronfocusonhashchangeonloadonmessageonofflineononlineonpagehideonpageshowonpopstateonresizeonscrollonstorageonunloadThe DOM interface also exposes event handler IDL
attributes that mirror those on the Window
element.
The onblur, onerror, onfocus, onload, and onscroll event handler
IDL attributes of the Window object, exposed on
the frameset element, shadow the generic event
handler IDL attributes with the same names normally supported
by HTML elements.
The frame element defines a nested
browsing context similar to the iframe element,
but rendered within a frameset element.
When the browsing context is created, if a src attribute is present, the user
agent must resolve the value of
that attribute, relative to the element, and if that is successful,
must then navigate the element's
browsing context to the resulting absolute URL, with
replacement enabled, and with the frame
element's document's browsing context as the
source browsing context.
Whenever the src attribute is
set, the user agent must resolve
the value of that attribute, relative to the element, and if that is
successful, the nested browsing context must be navigated to the resulting
absolute URL, with the frame element's
document's browsing context as the source
browsing context.
When the browsing context is created, if a name attribute is present, the
browsing context name must be set to the value of this
attribute; otherwise, the browsing context name must be
set to the empty string.
Whenever the name attribute
is set, the nested browsing context's name must be changed to the new
value. If the attribute is removed, the browsing context
name must be set to the empty string.
When content loads in a frame, after any load events are fired within the content
itself, the user agent must queue a task to fire
a simple event named load at
the frame element. When content fails to load (e.g. due
to a network error), then the user agent must queue a
task to fire a simple event named error at the element instead.
The task source for the tasks above is the DOM manipulation task source.
When there is an active parser in the
frame, and when anything in the frame is
delaying the load event of
the frame's browsing context's
active document, the frame must
delay the load event of its document.
The frame element must implement the
HTMLFrameElement interface.
interface HTMLFrameElement : HTMLElement { attribute DOMString name; attribute DOMString scrolling; attribute DOMString src; attribute DOMString frameBorder; attribute DOMString longDesc; attribute boolean noResize; readonly attribute Document? contentDocument; readonly attribute WindowProxy? contentWindow; [TreatNullAs=EmptyString] attribute DOMString marginHeight; [TreatNullAs=EmptyString] attribute DOMString marginWidth; };
The name, scrolling, and src IDL attributes of the
frame element must reflect the respective
content attributes of the same name.
The frameBorder IDL
attribute of the frame element must
reflect the element's frameborder content
attribute.
The longDesc
IDL attribute of the frame element must
reflect the element's longdesc content attribute, which
for the purposes of reflection is defined as containing a
URL.
The noResize
IDL attribute of the frame element must
reflect the element's noresize content attribute.
The contentDocument
IDL attribute of the frame element must return the
Document object of the active document of
the frame element's nested browsing
context.
The contentWindow
IDL attribute must return the WindowProxy object of the
frame element's nested browsing
context.
The marginHeight IDL
attribute of the frame element must
reflect the element's marginheight content
attribute.
The marginWidth IDL
attribute of the frame element must
reflect the element's marginwidth content
attribute.
User agents must treat acronym elements in a manner
equivalent to abbr elements in terms of semantics and
for purposes of rendering.
partial interface HTMLAnchorElement { attribute DOMString coords; attribute DOMString charset; attribute DOMString name; attribute DOMString rev; attribute DOMString shape; };
The coords, charset, name, rev, and shape IDL attributes of the
a element must reflect the respective
content attributes of the same name.
partial interface HTMLAreaElement { attribute boolean noHref; };
The noHref IDL
attribute of the area element must reflect
the element's nohref content
attribute.
The basefont element must implement the
HTMLBaseFontElement interface.
interface HTMLBaseFontElement : HTMLElement { attribute DOMString color; attribute DOMString face; attribute long size; };
The color,
face, and size IDL attributes of
the basefont element must reflect the
respective content attributes of the same name.
partial interface HTMLBodyElement { [TreatNullAs=EmptyString] attribute DOMString text; [TreatNullAs=EmptyString] attribute DOMString link; [TreatNullAs=EmptyString] attribute DOMString vLink; [TreatNullAs=EmptyString] attribute DOMString aLink; [TreatNullAs=EmptyString] attribute DOMString bgColor; attribute DOMString background; };
The text IDL
attribute of the body element must reflect
the element's text content
attribute.
The link IDL
attribute of the body element must reflect
the element's link content
attribute.
The aLink IDL
attribute of the body element must reflect
the element's alink content
attribute.
The vLink IDL
attribute of the body element must reflect
the element's vlink content
attribute.
The bgColor IDL
attribute of the body element must reflect
the element's bgcolor content
attribute.
The background IDL
attribute of the body element must reflect
the element's background
content attribute. (The background content is not
defined to contain a URL, despite rules regarding its
handling in the rendering section above.)
partial interface HTMLBRElement { attribute DOMString clear; };
The clear IDL
attribute of the br element must reflect
the content attribute of the same name.
partial interface HTMLTableCaptionElement { attribute DOMString align; };
The align IDL
attribute of the caption element must
reflect the content attribute of the same name.
partial interface HTMLTableColElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; attribute DOMString width; };
The align and width IDL attributes of
the col element must reflect the
respective content attributes of the same name.
The ch IDL attribute
of the col element must reflect the
element's char content
attribute.
The chOff IDL
attribute of the col element must reflect
the element's charoff content
attribute.
The vAlign IDL
attribute of the col element must reflect
the element's valign content
attribute.
User agents must treat dir elements in a manner
equivalent to ul elements in terms of semantics and for
purposes of rendering.
The dir element must implement the
HTMLDirectoryElement interface.
interface HTMLDirectoryElement : HTMLElement { attribute boolean compact; };
The compact IDL
attribute of the dir element must reflect
the content attribute of the same name.
partial interface HTMLDivElement { attribute DOMString align; };
The align IDL
attribute of the div element must reflect
the content attribute of the same name.
partial interface HTMLDListElement { attribute boolean compact; };
The compact IDL
attribute of the dl element must reflect
the content attribute of the same name.
partial interface HTMLEmbedElement { attribute DOMString align; attribute DOMString name; };
The name and align IDL attributes of
the embed element must reflect the
respective content attributes of the same name.
The font element must implement the
HTMLFontElement interface.
interface HTMLFontElement : HTMLElement { [TreatNullAs=EmptyString] attribute DOMString color; attribute DOMString face; attribute DOMString size; };
The color,
face, and size IDL attributes of
the font element must reflect the
respective content attributes of the same name.
partial interface HTMLHeadingElement { attribute DOMString align; };
The align IDL
attribute of the h1–h6 elements must
reflect the content attribute of the same name.
The profile IDL attribute on
head elements (with the HTMLHeadElement
interface) is intentionally omitted. Unless so required by another applicable
specification, implementations would therefore not support
this attribute. (It is mentioned here as it was defined in a
previous version of the DOM specifications.)
partial interface HTMLHRElement { attribute DOMString align; attribute DOMString color; attribute boolean noShade; attribute DOMString size; attribute DOMString width; };
The align, color, size, and width IDL attributes of the
hr element must reflect the respective
content attributes of the same name.
The noShade IDL
attribute of the hr element must reflect
the element's noshade content
attribute.
partial interface HTMLHtmlElement { attribute DOMString version; };
The version IDL
attribute of the html element must reflect
the content attribute of the same name.
partial interface HTMLIFrameElement { attribute DOMString align; attribute DOMString scrolling; attribute DOMString frameBorder; attribute DOMString longDesc; [TreatNullAs=EmptyString] attribute DOMString marginHeight; [TreatNullAs=EmptyString] attribute DOMString marginWidth; };
The align and
scrolling IDL
attributes of the iframe element must
reflect the respective content attributes of the same
name.
The frameBorder IDL
attribute of the iframe element must
reflect the element's frameborder content
attribute.
The longDesc
IDL attribute of the iframe element must
reflect the element's longdesc content attribute,
which for the purposes of reflection is defined as containing a
URL.
The marginHeight IDL
attribute of the iframe element must
reflect the element's marginheight content
attribute.
The marginWidth IDL
attribute of the iframe element must
reflect the element's marginwidth content
attribute.
partial interface HTMLImageElement { attribute DOMString name; attribute DOMString align; attribute unsigned long hspace; attribute unsigned long vspace; attribute DOMString longDesc; [TreatNullAs=EmptyString] attribute DOMString border; };
The name, align, border, hspace, and vspace IDL attributes of
the img element must reflect the
respective content attributes of the same name.
The longDesc IDL
attribute of the img element must reflect
the element's longdesc
content attribute, which for the purposes of reflection is defined
as containing a URL.
partial interface HTMLInputElement { attribute DOMString align; attribute DOMString useMap; };
The align IDL
attribute of the input element must reflect
the content attribute of the same name.
The useMap IDL
attribute of the input element must
reflect the element's usemap content attribute.
partial interface HTMLLegendElement { attribute DOMString align; };
The align IDL
attribute of the legend element must reflect
the content attribute of the same name.
partial interface HTMLLIElement { attribute DOMString type; };
The type IDL
attribute of the li element must reflect
the content attribute of the same name.
partial interface HTMLLinkElement { attribute DOMString charset; attribute DOMString rev; attribute DOMString target; };
The charset,
rev, and target IDL attributes of
the link element must reflect the
respective content attributes of the same name.
User agents must treat listing elements in a manner
equivalent to pre elements in terms of semantics and
for purposes of rendering.
partial interface HTMLMenuElement { attribute boolean compact; };
The compact IDL
attribute of the menu element must reflect
the content attribute of the same name.
partial interface HTMLMetaElement { attribute DOMString scheme; };
User agents may treat the scheme content attribute on the
meta element as an extension of the element's name content attribute when processing
a meta element with a name attribute whose value is one that
the user agent recognizes as supporting the scheme attribute.
User agents are encouraged to ignore the scheme attribute and instead process
the value given to the metadata name as if it had been specified for
each expected value of the scheme attribute.
For example, if the user agent acts on meta
elements with name attributes
having the value "eGMS.subject.keyword", and knows that the scheme attribute is used with this
metadata name, then it could take the scheme attribute into account,
acting as if it was an extension of the name attribute. Thus the following
two meta elements could be treated as two elements
giving values for two different metadata names, one consisting of a
combination of "eGMS.subject.keyword" and "LGCL", and the other
consisting of a combination of "eGMS.subject.keyword" and
"ORLY":
<!-- this markup is invalid --> <meta name="eGMS.subject.keyword" scheme="LGCL" content="Abandoned vehicles"> <meta name="eGMS.subject.keyword" scheme="ORLY" content="Mah car: kthxbye">
The recommended processing of this markup, however, would be equivalent to the following:
<meta name="eGMS.subject.keyword" content="Abandoned vehicles"> <meta name="eGMS.subject.keyword" content="Mah car: kthxbye">
The scheme IDL
attribute of the meta element must reflect
the content attribute of the same name.
partial interface HTMLObjectElement { attribute DOMString align; attribute DOMString archive; attribute DOMString code; attribute boolean declare; attribute unsigned long hspace; attribute DOMString standby; attribute unsigned long vspace; attribute DOMString codeBase; attribute DOMString codeType; [TreatNullAs=EmptyString] attribute DOMString border; };
The align, archive, border, code, declare, hspace, standby, and vspace IDL attributes
of the object element must reflect the
respective content attributes of the same name.
The codeBase
IDL attribute of the object element must
reflect the element's codebase content attribute,
which for the purposes of reflection is defined as containing a
URL.
The codeType IDL
attribute of the object element must reflect
the element's codetype content
attribute.
partial interface HTMLOListElement { attribute boolean compact; };
The compact IDL
attribute of the ol element must reflect
the content attribute of the same name.
partial interface HTMLParagraphElement { attribute DOMString align; };
The align IDL
attribute of the p element must reflect
the content attribute of the same name.
partial interface HTMLParamElement { attribute DOMString type; attribute DOMString valueType; };
The type IDL
attribute of the param element must
reflect the content attribute of the same name.
The valueType
IDL attribute of the param element must
reflect the element's valuetype content attribute.
User agents must treat plaintext elements in a
manner equivalent to pre elements in terms of semantics
and for purposes of rendering. (The parser has special behavior for
this element, though.)
partial interface HTMLPreElement { attribute long width; };
The width IDL
attribute of the pre element must reflect
the content attribute of the same name.
partial interface HTMLScriptElement { attribute DOMString event; attribute DOMString htmlFor; };
The event and
htmlFor IDL
attributes of the script element must return the empty
string on getting, and do nothing on setting.
partial interface HTMLTableElement { attribute DOMString align; attribute DOMString frame; attribute DOMString rules; attribute DOMString summary; attribute DOMString width; [TreatNullAs=EmptyString] attribute DOMString bgColor; [TreatNullAs=EmptyString] attribute DOMString cellPadding; [TreatNullAs=EmptyString] attribute DOMString cellSpacing; };
The align, frame, summary, rules, and width, IDL attributes of
the table element must reflect the
respective content attributes of the same name.
The bgColor IDL
attribute of the table element must reflect
the element's bgcolor content
attribute.
The cellPadding IDL
attribute of the table element must reflect
the element's cellpadding content
attribute.
The cellSpacing IDL
attribute of the table element must reflect
the element's cellspacing content
attribute.
partial interface HTMLTableSectionElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; };
The align IDL
attribute of the tbody, thead, and
tfoot elements must reflect the content
attribute of the same name.
The ch IDL attribute
of the tbody, thead, and
tfoot elements must reflect the elements'
char content attributes.
The chOff IDL
attribute of the tbody, thead, and
tfoot elements must reflect the elements'
charoff content attributes.
The vAlign IDL
attribute of the tbody, thead, and
tfoot element must reflect the elements'
valign content
attributes.
partial interface HTMLTableCellElement { attribute DOMString abbr; attribute DOMString align; attribute DOMString axis; attribute DOMString height; attribute DOMString width; attribute DOMString ch; attribute DOMString chOff; attribute boolean noWrap; attribute DOMString vAlign; [TreatNullAs=EmptyString] attribute DOMString bgColor; };
The abbr, align, axis, height, and width IDL attributes of
the td and th elements must
reflect the respective content attributes of the same
name.
The ch IDL
attribute of the td and th elements must
reflect the elements' char content attributes.
The chOff IDL
attribute of the td and th elements must
reflect the elements' charoff content attributes.
The noWrap IDL
attribute of the td and th elements must
reflect the elements' nowrap content attributes.
The vAlign IDL
attribute of the td and th element must
reflect the elements' valign content attributes.
The bgColor IDL
attribute of the td and th elements must
reflect the elements' bgcolor content attributes.
partial interface HTMLTableRowElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; [TreatNullAs=EmptyString] attribute DOMString bgColor; };
The align IDL
attribute of the tr element must reflect
the content attribute of the same name.
The ch IDL attribute of
the tr element must reflect the element's
char content attribute.
The chOff IDL
attribute of the tr element must reflect
the element's charoff content
attribute.
The vAlign IDL
attribute of the tr element must reflect
the element's valign content
attribute.
The bgColor IDL
attribute of the tr element must reflect
the element's bgcolor content
attribute.
partial interface HTMLUListElement { attribute boolean compact; attribute DOMString type; };
The compact and
type IDL attributes of
the ul element must reflect the respective
content attributes of the same name.
User agents must treat xmp elements in a manner
equivalent to pre elements in terms of semantics and
for purposes of rendering. (The parser has special behavior for this
element though.)
The bgsound, isindex,
multicol, nextid, rb, and
spacer elements must use the
HTMLUnknownElement interface.
partial interface Document { [TreatNullAs=EmptyString] attribute DOMString fgColor; [TreatNullAs=EmptyString] attribute DOMString linkColor; [TreatNullAs=EmptyString] attribute DOMString vlinkColor; [TreatNullAs=EmptyString] attribute DOMString alinkColor; [TreatNullAs=EmptyString] attribute DOMString bgColor; readonly attribute HTMLCollection anchors; readonly attribute HTMLCollection applets; void clear(); readonly attribute HTMLAllCollection all; };
The attributes of the Document object listed in the
first column of the following table must reflect the
content attribute on the body element with the name
given in the corresponding cell in the second column on the same
row, if the body element is a body element
(as opposed to a frameset element). When there is no
body element or if it is a
frameset element, the attributes must instead return
the empty string on getting and do nothing on setting.
| IDL attribute | Content attribute |
|---|---|
fgColor
| text
|
linkColor
| link
|
vlinkColor
| vlink
|
alinkColor
| alink
|
bgColor
| bgcolor
|
The anchors
attribute must return an HTMLCollection rooted at the
Document node, whose filter matches only a
elements with name
attributes.
The applets
attribute must return an HTMLCollection rooted at the
Document node, whose filter matches only
applet elements.
The clear()
method must do nothing.
The all
attribute must return an HTMLAllCollection rooted at the
Document node, whose filter matches all elements.
The object returned for all
has several unusual behaviors:
The user agent must act as if the ToBoolean() operator in
JavaScript converts the object returned for all to the false value.
The user agent must act as if, for the purposes of the == and != operators in
JavaScript, the object returned for all is equal to the undefined value.
The user agent must act such that the typeof operator in JavaScript returns the string
undefined when applied to the object returned
for all.
These requirements are a willful
violation of the JavaScript specification current at the time
of writing (ECMAScript edition 5). The JavaScript specification
requires that the ToBoolean() operator convert all objects to the
true value, and does not have provisions for objects acting as if
they were undefined for the purposes of
certain operators. This violation is motivated by a desire for
compatibility with two classes of legacy content: one that uses the
presence of document.all as a
way to detect legacy user agents, and one that only supports those
legacy user agents and uses the document.all object without testing
for its presence first. [ECMA262]