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.
Elements in the following list are entirely obsolete, and must not be used by authors:
applet
acronym
Use abbr
instead.
bgsound
Use audio
instead.
dir
Use ul
instead.
frame
frameset
noframes
Either use iframe
and CSS instead, or use server-side includes to generate complete pages with the various invariant parts merged in.
isindex
Use an explicit form
and text field combination instead.
listing
nextid
Use GUIDs instead.
noembed
plaintext
Use the "text/plain
" MIME type instead.
rb
Providing the ruby base directly inside the ruby
element is sufficient; the rb
element is unnecessary. Omit it altogether.
strike
Use del
instead if the element is marking an edit, otherwise use s
instead.
xmp
Use pre
and code
instead, and escape "<
" and "&
" characters as "<
" and "&
" respectively.
basefont
big
blink
center
font
marquee
multicol
nobr
spacer
tt
Use 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.
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.
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 cols
and
rows
IDL
attributes of the frameset
element must
reflect the respective content attributes of the same
name.
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 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.
The coords
, charset
, name
, rev
, and shape
IDL attributes of the
a
element must reflect the respective
content attributes of the same name.
The noHref
IDL
attribute of the area
element must reflect
the element's nohref
content
attribute.
The color
,
face
, and size
IDL attributes of
the basefont
element must reflect the
respective content attributes of the same name.
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.)
The clear
IDL
attribute of the br
element must reflect
the content attribute of the same name.
The align
IDL
attribute of the caption
element must
reflect the content attribute of the same name.
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.
The compact
IDL
attribute of the dir
element must reflect
the content attribute of the same name.
The align
IDL
attribute of the div
element must reflect
the content attribute of the same name.
The compact
IDL
attribute of the dl
element must reflect
the content attribute of the same name.
The name
and align
IDL attributes of
the embed
element must reflect the
respective content attributes of the same name.
The color
,
face
, and size
IDL attributes of
the font
element must reflect the
respective content attributes of the same name.
The align
IDL
attribute of the h1
–h6
elements must
reflect the content attribute of the same name.
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.
The version
IDL
attribute of the html
element must reflect
the content attribute of the same name.
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.
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.
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.
The align
IDL
attribute of the legend
element must reflect
the content attribute of the same name.
The type
IDL
attribute of the li
element must reflect
the content attribute of the same name.
The charset
,
rev
, and target
IDL attributes of
the link
element must reflect the
respective content attributes of the same name.
The compact
IDL
attribute of the menu
element must reflect
the content attribute of the same name.
The scheme
IDL
attribute of the meta
element must reflect
the content attribute of the same name.
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.
The compact
IDL
attribute of the ol
element must reflect
the content attribute of the same name.
The align
IDL
attribute of the p
element must reflect
the content attribute of the same name.
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.
The width
IDL
attribute of the pre
element must reflect
the content attribute of the same name.
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.
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.
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.
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.
The compact
and
type
IDL attributes of
the ul
element must reflect the respective
content attributes of the same name.
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.