内角是什么意思| 尿急憋不住尿是什么原因| 七月六号是什么日子| 红色的月亮是什么征兆| 橡皮擦是什么材料做的| 梦见蝎子是什么预兆| 颞下颌关节挂什么科| 为什么一饿就胃疼| 用什么泡脚可以活血化瘀疏通经络| 小便无力是什么原因男| 鱼代表什么数字| 处女座男和什么星座最配| 头昏挂什么科| 充电宝100wh是什么意思| 肠溶片和缓释片有什么区别| 气球是什么意思| 便秘吃什么药| 嘴唇没有血色是什么原因| 血脂高看什么科| 山药炖什么好吃| 白皮书是什么意思| 三伏贴能治什么病| 肠粘连有什么症状| 肉沫炒什么好吃| 懦弱的反义词是什么| 脸麻是什么原因引起的| 口加一笔变成什么字| 什么蚂蚁有毒| 咳嗽有黄痰是什么原因| 暴力熊是什么牌子| 鳕鱼不能和什么一起吃| 孕妇零食可以吃什么| 春季感冒吃什么药| 泌乳素是什么意思| 观音菩萨代表什么生肖| 多心是什么意思| 睾酮是什么| 不宜是什么意思| 什么药化痰效果最好| hbsag是什么| 泥鳅吃什么| 迷惑是什么意思| 宫颈炎盆腔炎吃什么药效果最好| 门子是什么意思| 嗤之以鼻是什么意思| 竹节虫吃什么| 朝鲜韩国什么时候分开的| 3月11日什么星座| 平板支撑是什么| 吃什么能让阴茎更硬| 舌头有红点是什么原因| 贡高我慢是什么意思| 敏是什么意思| mrcp是什么检查| 碱性磷酸酶高是什么意思| 国家电网是什么编制| 释迦果吃了有什么好处| 胎盘成熟度1级是什么意思| mmol是什么单位| 掉睫毛是什么原因| 哪吒他妈叫什么名字| 岌岌可危是什么意思| bjd是什么| 牙齿发黄是什么原因导致的| 煲蛇汤放什么材料好| 七月初七是什么节| 脚气挂什么科| 囊肿是什么东西| 醋坛子是什么意思| dollars是什么意思| 榴莲补什么| 胆囊在什么位置| 房性早搏吃什么药最好| 狗取什么名字好| 噻虫高氯氟治什么虫| 水仙是什么| 眼睛发炎用什么眼药水| 舌苔黑是什么病| 一什么池塘| 直爽是什么意思| 生地麦冬汤有什么功效| 10月28日什么星座| 鸡胸是什么| 国务院秘书长什么级别| 赵匡胤为什么不传位给儿子| 女人喜欢什么姿势| 坐骨神经痛吃什么药| 丑未戌三刑会发生什么| 恃宠而骄什么意思| 猫咪弓背是什么原因| 什么是矿泉水| 答辩是什么意思| 预授权是什么意思| 二月花是什么花| 补气养阴是什么意思| 头疼挂什么科| 幽门螺旋杆菌阳性代表什么| 猫叫什么名字好听| 什么食物对心脏好| 处暑的含义是什么意思| 因缘际会是什么意思| 吃鹅蛋有什么好处和坏处| 头晕有点恶心是什么原因| 十二星座什么第一名| 骨骼肌是什么| 什么时候量血压最准确| 八九不离十是什么意思| 5公里25分钟什么水平| 等不到天黑烟火不会太完美什么歌| 巳时是什么时辰| 摩拳擦掌是什么生肖| 西安什么省| 考拉是什么意思| 学位证是什么| 胶原蛋白起什么作用| 雪五行属什么| 肚子左下方是什么器官| 吃什么对子宫好| 左侧后背疼是什么原因男性| 花心大萝卜是什么意思| 电波是什么意思| 挖坑是什么意思| 什么油炒菜好吃又健康| 内分泌科看什么病| 赫是什么意思| 腱鞘炎有什么治疗方法| 鼻子经常出血是什么原因| nlp是什么| 总是头疼是什么原因| 鸟喙是什么意思| 蒙脱石散不能和什么药一起吃| 油漆味对人有什么危害| 胃胀放屁多是什么原因| 女人吃什么能活血化瘀| 熬夜对身体有什么危害| 霖字五行属什么| 直白是什么意思| 如果怀孕了会有什么预兆| 子宫多发肌瘤是什么意思| 变异性哮喘什么症状| 纵容是什么意思| 打脸是什么意思| 金针菇炒什么好吃| 瑄五行属什么| 争奇斗艳什么意思| 阴虚火旺是什么意思| 国外微信叫什么| 灵芝的功效与作用是什么| 嗓子发炎肿痛吃什么药| 24k黄金是什么意思| 鱼缸为什么不能送人| 什么叫靶向药| 莱字五行属什么| 鼻子里流出黄水是什么原因| 头发掉什么原因| 泌尿系彩超主要是检查什么| 全血检查能查些什么病| 白术有什么功效| 冰酒是什么酒| 蔑视是什么意思| 为什么老是打嗝| 瑾字是什么意思| 肩周炎看什么科| 三个土读什么| 生肖牛和什么生肖最配| mcm是什么意思| 回盲瓣呈唇形什么意思| 什么是地包天牙齿| 腰痛是什么原因引起的| 梦见死人和棺材预示着什么| 炒米是什么米做的| 梦见橘子是什么意思| 左小腿麻木是什么原因| 思密达是什么药| 扁桃体肿大是什么原因引起的| 二聚体是什么| 用什么方法可以戒酒| 10月29号是什么星座| 密云有什么好玩的地方| 下巴长痘是为什么| 点石成金是什么意思| 喝山楂水有什么好处和坏处| 左侧头疼是什么原因| 感冒流鼻涕吃什么药好得快| 985代表什么意思| 爱拍马屁的动物是什么生肖| 不等是什么意思| 什么能什么力| 早餐吃什么最减肥瘦身| 缺失是什么意思| 黑脸是什么意思| 咳嗽发烧吃什么药| 男人前列腺在什么位置| 回族信仰什么教| galaxy是什么牌子| 牙齿遇冷热都痛是什么原因| 什么什么的眼睛| 刘诗诗是什么样的人| n0是什么意思| 身上瘙痒是什么原因| 石加乏念什么| 两肺散在小结节是什么意思| 望尘莫及的及是什么意思| 腊八蒜用什么醋比较好| 榴莲跟什么不能一起吃| 开心果树长什么样| 何炅和谢娜是什么关系| 命运多折 什么生肖| 晚上九点是什么时辰| 胸闷想吐是什么原因| 波奇饭是什么意思| 29周岁属什么生肖| 腿上血栓是什么症状| 脸发红是什么原因| 肝硬化挂什么科| 苦荞茶有什么作用| 婴儿眼屎多是什么原因| 不知餍足什么意思| 咳嗽吃什么| 阿拉伯人属于什么人种| 感冒适合吃什么水果| r值是什么意思| 微不足道的意思是什么| 什么的眼睛| 男生吃菠萝有什么好处| 月球是地球的什么| 戴银饰变黑是什么原因| 香蕉像什么比喻句| 缓刑什么意思| 糖尿病的根源是什么| 内裤用什么洗比较好| 仪仗队是什么意思| 153是什么意思| 体检挂什么科室| 手肿是什么原因引起的| 金字旁加全字念什么| 迎字五行属什么| 林彪为什么反革命| 卡替治疗是什么意思| 球蛋白偏低是什么意思| 晕车的读音是什么| 爬虫是什么| 咳嗽能吃什么水果最好| 吃什么才能减肥最快| 血糖高忌什么食物| 长生殿讲的是什么故事| 排山倒海是什么意思| 心脏疼是什么感觉| 遗物是什么意思| 上曼月乐环后要注意什么| 转肽酶高是什么原因| 生活的意义是什么| 猫咪吃什么| 受凉肚子疼吃什么药| 阴虚火旺吃什么食物好| 黄色是什么颜色组成的| 肠胃挂什么科| 二月十号是什么星座| 大嘴巴是什么意思| 吃什么养发| 日落是什么时辰| 多愁善感是什么意思| 心肝火旺吃什么中成药| 肝郁化火吃什么药| 百度
  1. 16 Obsolete features
    1. 16.1 Obsolete but conforming features
      1. 16.1.1 Warnings for obsolete but conforming features
    2. 16.2 Non-conforming features
    3. 16.3 Requirements for implementations
      1. 16.3.1 The marquee element
      2. 16.3.2 Frames
      3. 16.3.3 Other elements, attributes and APIs

16 Obsolete features

16.1 Obsolete but conforming features

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 charset attribute on a script element. If the attribute is present, its value must be an ASCII case-insensitive match for "utf-8". (This has no effect in a document that conforms to the requirements elsewhere in this standard of being encoded as UTF-8.)

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 a value for the type attribute on script elements that is the empty string or a JavaScript MIME type essence match. Instead, they should omit the attribute, which has the same effect.

Authors should not specify a type attribute on a style element. If the attribute is present, its value must be an ASCII case-insensitive match for "text/css".

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 tree 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 tree. 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 fragments 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 control with a useful width.

16.1.1 Warnings for obsolete but conforming features

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 must 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:

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".

16.2 Non-conforming features

Elements in the following list are entirely obsolete, and must not be used by authors:

applet

Use embed or object instead.

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 control combination instead.

keygen

For enterprise device management use cases, use native on-device management capabilities.

For certificate enrollment use cases, use the Web Cryptography API to generate a keypair for the certificate, and then export the certificate and key to allow the user to install them manually. [WEBCRYPTO]

listing

Use pre and code instead.

menuitem

To implement a custom context menu, use script to handle the contextmenu event.

nextid

Use GUIDs instead.

noembed

Use object instead of embed when fallback is necessary.

param

Use the data attribute of the object element to set the URL of the external resource.

plaintext

Use the "text/plain" MIME type instead.

rb
rtc

Providing the ruby base directly inside the ruby element or using nested ruby elements is sufficient.

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 "&lt;" and "&amp;" respectively.

basefont
big
blink
center
font
marquee
multicol
nobr
spacer
tt

Use appropriate elements 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 elements
charset on link elements

Use an HTTP `Content-Type` header on the linked resource instead.

charset on script elements (except as noted in the previous section)

Omit the attribute. Both documents and scripts are required to use UTF-8, so it is redundant to specify it on the script element since it inherits from the document.

coords on a elements
shape on a elements

Use area instead of a for image maps.

methods on a elements
methods on link elements

Use the HTTP OPTIONS feature instead.

name on a elements (except as noted in the previous section)
name on embed elements
name on img elements
name on option elements

Use the id attribute instead.

rev on a elements
rev on link elements

Use the rel attribute instead, with an opposite term. (For example, instead of rev="made", use rel="author".)

urn on a elements
urn on link elements

Specify the preferred persistent identifier using the href attribute instead.

accept on form elements

Use the accept attribute directly on the input elements instead.

hreflang on area elements
type on area elements

These attributes do not do anything useful, and for historical reasons there are no corresponding IDL attributes on area elements. Omit them altogether.

nohref on area elements

Omitting the href attribute is sufficient; the nohref attribute is unnecessary. Omit it altogether.

profile on head elements

Unnecessary. Omit it altogether.

manifest on html elements

Use service workers instead. [SW]

version on html elements

Unnecessary. Omit it altogether.

ismap on input elements

Unnecessary. Omit it altogether. All input elements with a type attribute in the Image Button state are processed as server-side image maps.

usemap on input elements
usemap on object elements

Use the img element for image maps.

longdesc on iframe elements
longdesc on img elements

Use 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 elements

Use a progressive JPEG image (given in the src attribute), instead of using two separate images.

target on link elements

Unnecessary. Omit it altogether.

type on menu elements

To implement a custom context menu, use script to handle the contextmenu event. For toolbar menus, omit the attribute.

label on menu elements
contextmenu on all elements
onshow on all elements

To implement a custom context menu, use script to handle the contextmenu event.

scheme on meta elements

Use only one scheme per field, or make the scheme declaration part of the value.

archive on object elements
classid on object elements
code on object elements
codebase on object elements
codetype on object elements

Use the data and type attributes to invoke plugins.

declare on object elements

Repeat the object element completely each time the resource is to be reused.

standby on object elements

Optimize the linked resource so that it loads quickly or, at least, incrementally.

typemustmatch on object elements

Avoid using object elements with untrusted resources.

language on script elements (except as noted in the previous section)

Omit the attribute for JavaScript; for data blocks, use the type attribute instead.

event on script elements
for on script elements

Use DOM events mechanisms to register event listeners. [DOM]

type on style elements (except as noted in the previous section)

Omit the attribute for CSS; for data blocks, use script as the container instead of style.

datapagesize on table elements

Unnecessary. Omit it altogether.

summary on table elements

Use one of the techniques for describing tables given in the table section instead.

abbr on td elements

Use 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. If it's a heading, use th (which has an abbr attribute).

axis on td and th elements

Use the scope attribute on the relevant th.

scope on td elements

Use th elements for heading cells.

datasrc on a, button, div, frame, iframe, img, input, label, legend, marquee, object, option, select, span, table, and textarea elements
datafld on a, button, div, fieldset, frame, iframe, img, input, label, legend, marquee, object, select, span, and textarea elements
dataformatas on button, div, input, label, legend, marquee, object, option, select, span, and table elements

Use script and a mechanism such as XMLHttpRequest to populate the page dynamically. [XHR]

dropzone on all elements

Use script to handle the dragenter and dragover events instead.

alink on body elements
bgcolor on body elements
bottommargin on body elements
leftmargin on body elements
link on body elements
marginheight on body elements
marginwidth on body elements
rightmargin on body elements
text on body elements
topmargin on body elements
vlink on body elements
clear on br elements
align on caption elements
align on col elements
char on col elements
charoff on col elements
valign on col elements
width on col elements
align on div elements
compact on dl elements
align on embed elements
hspace on embed elements
vspace on embed elements
align on hr elements
color on hr elements
noshade on hr elements
size on hr elements
width on hr elements
align on h1h6 elements
align on iframe elements
allowtransparency on iframe elements
frameborder on iframe elements
framespacing on iframe elements
hspace on iframe elements
marginheight on iframe elements
marginwidth on iframe elements
scrolling on iframe elements
vspace on iframe elements
align on input elements
border on input elements
hspace on input elements
vspace on input elements
align on img elements
border on img elements (except as noted in the previous section)
hspace on img elements
vspace on img elements
align on legend elements
type on li elements
compact on menu elements
align on object elements
border on object elements
hspace on object elements
vspace on object elements
compact on ol elements
align on p elements
width on pre elements
align on table elements
bgcolor on table elements
border on table elements
bordercolor on table elements
cellpadding on table elements
cellspacing on table elements
frame on table elements
height on table elements
rules on table elements
width on table elements
align on tbody, thead, and tfoot elements
char on tbody, thead, and tfoot elements
charoff on tbody, thead, and tfoot elements
height on thead, tbody, and tfoot elements
valign on tbody, thead, and tfoot elements
align on td and th elements
bgcolor on td and th elements
char on td and th elements
charoff on td and th elements
height on td and th elements
nowrap on td and th elements
valign on td and th elements
width on td and th elements
align on tr elements
bgcolor on tr elements
char on tr elements
charoff on tr elements
height on tr elements
valign on tr elements
compact on ul elements
type on ul elements
background on body, table, thead, tbody, tfoot, tr, td, and th elements

Use CSS instead.

16.3 Requirements for implementations

16.3.1 The marquee element

The marquee element is a presentational element that animates content. CSS transitions and animations are a more appropriate mechanism. [CSSANIMATIONS] [CSSTRANSITIONS]

The marquee element must implement the HTMLMarqueeElement interface.

[Exposed=Window]
interface HTMLMarqueeElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute DOMString behavior;
  [CEReactions, Reflect] attribute DOMString bgColor;
  [CEReactions, Reflect] attribute DOMString direction;
  [CEReactions, Reflect] attribute DOMString height;
  [CEReactions, Reflect] attribute unsigned long hspace;
  [CEReactions] attribute long loop;
  [CEReactions, Reflect, ReflectDefault=6] attribute unsigned long scrollAmount;
  [CEReactions, Reflect, ReflectDefault=85] attribute unsigned long scrollDelay;
  [CEReactions, Reflect] attribute boolean trueSpeed;
  [CEReactions, Reflect] attribute unsigned long vspace;
  [CEReactions, Reflect] attribute DOMString width;

  undefined start();
  undefined 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.


The behavior content attribute on marquee elements is an enumerated attribute with the following keywords and states (all non-conforming):

Keyword State
scroll scroll
slide slide
alternate alternate

The attribute's missing value default and invalid value default are both the scroll state.


The direction content attribute on marquee elements is an enumerated attribute with the following keywords and states (all non-conforming):

Keyword State
left left
right right
up up
down down

The attribute's missing value default and invalid value default are both 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:

  1. 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.

  2. If the element does not have a truespeed attribute, and the delay value is less than 60, then let delay be 60 instead.

  3. 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:

  1. If the marquee loop count is ?1, then return.

  2. Increment the marquee current loop index by one.

  3. If the marquee current loop index is now greater than or equal to the element's marquee loop count, turn off the marquee element.


16.3.2 Frames

The frameset element acts as the body element in documents that use frames.

The frameset element must implement the HTMLFrameSetElement interface.

[Exposed=Window]
interface HTMLFrameSetElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute DOMString cols;
  [CEReactions, Reflect] attribute DOMString rows;
};
HTMLFrameSetElement includes WindowEventHandlers;

The frameset element exposes as event handler content attributes a number of the event handlers of the Window object. It also mirrors their event handler IDL attributes.

The event handlers of the Window object named by the Window-reflecting body element event handler set, exposed on the frameset element, replace the generic event handlers with the same names normally supported by HTML elements.


The frame element has a content navigable similar to the iframe element, but rendered within a frameset element.

The frame HTML element insertion steps, given insertedNode, are:

  1. If insertedNode is not in a document tree, then return.

  2. If insertedNode's root's browsing context is null, then return.

  3. Create a new child navigable for insertedNode.

  4. Process the frame attributes for insertedNode, with initialInsertion set to true.

The frame HTML element removing steps, given removedNode, are to destroy a child navigable given removedNode.

Whenever a frame element with a non-null content navigable has its src attribute set, changed, or removed, the user agent must process the frame attributes.

To process the frame attributes for an element element, with an optional boolean initialInsertion:

  1. Let url be the result of running the shared attribute processing steps for iframe and frame elements given element and initialInsertion.

  2. If url is null, then return.

  3. If url matches about:blank and initialInsertion is true, then:

    1. Fire an event named load at element.

    2. Return.

  4. Navigate an iframe or frame given element, url, the empty string, and initialInsertion.

The frame element potentially delays the load event.

The frame element must implement the HTMLFrameElement interface.

[Exposed=Window]
interface HTMLFrameElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute DOMString name;
  [CEReactions, Reflect] attribute DOMString scrolling;
  [CEReactions, ReflectURL] attribute USVString src;
  [CEReactions, Reflect] attribute DOMString frameBorder;
  [CEReactions, ReflectURL] attribute USVString longDesc;
  [CEReactions, Reflect] attribute boolean noResize;
  readonly attribute Document? contentDocument;
  readonly attribute WindowProxy? contentWindow;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString marginHeight;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString marginWidth;
};

The contentDocument getter steps are to return this's content document.

The contentWindow getter steps are to return this's content window.

16.3.3 Other elements, attributes and APIs

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 {
  [CEReactions, Reflect] attribute DOMString coords;
  [CEReactions, Reflect] attribute DOMString charset;
  [CEReactions, Reflect] attribute DOMString name;
  [CEReactions, Reflect] attribute DOMString rev;
  [CEReactions, Reflect] attribute DOMString shape;
};

partial interface HTMLAreaElement {
  [CEReactions, Reflect] attribute boolean noHref;
};

partial interface HTMLBodyElement {
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString text;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString link;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString vLink;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString aLink;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString bgColor;
  [CEReactions, Reflect] attribute DOMString background;
};

The background IDL attribute does not use ReflectURL or USVString for historical reasons.


partial interface HTMLBRElement {
  [CEReactions, Reflect] attribute DOMString clear;
};

partial interface HTMLTableCaptionElement {
  [CEReactions, Reflect] attribute DOMString align;
};

partial interface HTMLTableColElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect="char"] attribute DOMString ch;
  [CEReactions, Reflect="charoff"] attribute DOMString chOff;
  [CEReactions, Reflect] attribute DOMString vAlign;
  [CEReactions, Reflect] attribute DOMString width;
};

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.

[Exposed=Window]
interface HTMLDirectoryElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute boolean compact;
};

partial interface HTMLDivElement {
  [CEReactions, Reflect] attribute DOMString align;
};

partial interface HTMLDListElement {
  [CEReactions, Reflect] attribute boolean compact;
};

partial interface HTMLEmbedElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString name;
};

The font element must implement the HTMLFontElement interface.

[Exposed=Window]
interface HTMLFontElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString color;
  [CEReactions, Reflect] attribute DOMString face;
  [CEReactions, Reflect] attribute DOMString size; 
};

partial interface HTMLHeadingElement {
  [CEReactions, Reflect] attribute DOMString align;
};

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 DOM.)


partial interface HTMLHRElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString color;
  [CEReactions, Reflect] attribute boolean noShade;
  [CEReactions, Reflect] attribute DOMString size;
  [CEReactions, Reflect] attribute DOMString width;
};

partial interface HTMLHtmlElement {
  [CEReactions, Reflect] attribute DOMString version;
};

partial interface HTMLIFrameElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString scrolling;
  [CEReactions, Reflect] attribute DOMString frameBorder;
  [CEReactions, ReflectURL] attribute USVString longDesc;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString marginHeight;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString marginWidth;
};

partial interface HTMLImageElement {
  [CEReactions, Reflect] attribute DOMString name;
  [CEReactions, ReflectURL] attribute USVString lowsrc;
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute unsigned long hspace;
  [CEReactions, Reflect] attribute unsigned long vspace;
  [CEReactions, ReflectURL] attribute USVString longDesc;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString border;
};

partial interface HTMLInputElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString useMap;
};

partial interface HTMLLegendElement {
  [CEReactions, Reflect] attribute DOMString align;
};

partial interface HTMLLIElement {
  [CEReactions, Reflect] attribute DOMString type;
};

partial interface HTMLLinkElement {
  [CEReactions, Reflect] attribute DOMString charset;
  [CEReactions, Reflect] attribute DOMString rev;
  [CEReactions, Reflect] attribute DOMString target;
};

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 {
  [CEReactions, Reflect] attribute boolean compact;
};

partial interface HTMLMetaElement {
  [CEReactions, Reflect] 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 suggested 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">

HTMLObjectElement/useMap

Support in all current engines.

Firefox1+Safari3+Chrome1+
Opera12.1+Edge79+
Edge (Legacy)12+Internet Explorer6+
Firefox Android?Safari iOS1+Chrome Android?WebView Android?Samsung Internet?Opera Android12.1+
partial interface HTMLObjectElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString archive;
  [CEReactions, Reflect] attribute DOMString code;
  [CEReactions, Reflect] attribute boolean declare;
  [CEReactions, Reflect] attribute unsigned long hspace;
  [CEReactions, Reflect] attribute DOMString standby;
  [CEReactions, Reflect] attribute unsigned long vspace;
  [CEReactions, ReflectURL] attribute DOMString codeBase;
  [CEReactions, Reflect] attribute DOMString codeType;
  [CEReactions, Reflect] attribute DOMString useMap;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString border;
};

partial interface HTMLOListElement {
  [CEReactions, Reflect] attribute boolean compact;
};

partial interface HTMLParagraphElement {
  [CEReactions, Reflect] attribute DOMString align;
};

The param element must implement the HTMLParamElement interface.

[Exposed=Window]
interface HTMLParamElement : HTMLElement {
  [HTMLConstructor] constructor();

  [CEReactions, Reflect] attribute DOMString name;
  [CEReactions, Reflect] attribute DOMString value;
  [CEReactions, Reflect] attribute DOMString type;
  [CEReactions, Reflect] attribute DOMString valueType;
};

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 {
  [CEReactions, Reflect] attribute long width;
};

partial interface HTMLStyleElement {
  [CEReactions, Reflect] attribute DOMString type;
};

partial interface HTMLScriptElement {
  [CEReactions, Reflect] attribute DOMString charset;
  [CEReactions, Reflect] attribute DOMString event;
  [CEReactions, Reflect="for"] attribute DOMString htmlFor;
};

partial interface HTMLTableElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString border;
  [CEReactions, Reflect] attribute DOMString frame;
  [CEReactions, Reflect] attribute DOMString rules;
  [CEReactions, Reflect] attribute DOMString summary;
  [CEReactions, Reflect] attribute DOMString width;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString bgColor;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString cellPadding;
  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString cellSpacing;
};

partial interface HTMLTableSectionElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect="char"] attribute DOMString ch;
  [CEReactions, Reflect="charoff"] attribute DOMString chOff;
  [CEReactions, Reflect] attribute DOMString vAlign;
};

partial interface HTMLTableCellElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect] attribute DOMString axis;
  [CEReactions, Reflect] attribute DOMString height;
  [CEReactions, Reflect] attribute DOMString width;

  [CEReactions, Reflect="char"] attribute DOMString ch;
  [CEReactions, Reflect="charoff"] attribute DOMString chOff;
  [CEReactions, Reflect] attribute boolean noWrap;
  [CEReactions, Reflect] attribute DOMString vAlign;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString bgColor;
};

partial interface HTMLTableRowElement {
  [CEReactions, Reflect] attribute DOMString align;
  [CEReactions, Reflect="char"] attribute DOMString ch;
  [CEReactions, Reflect="charoff"] attribute DOMString chOff;
  [CEReactions, Reflect] attribute DOMString vAlign;

  [CEReactions, Reflect] attribute [LegacyNullToEmptyString] DOMString bgColor;
};

partial interface HTMLUListElement {
  [CEReactions, Reflect] attribute boolean compact;
  [CEReactions, Reflect] attribute DOMString type;
};

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.)


partial interface Document {
  [CEReactions] attribute [LegacyNullToEmptyString] DOMString fgColor;
  [CEReactions] attribute [LegacyNullToEmptyString] DOMString linkColor;
  [CEReactions] attribute [LegacyNullToEmptyString] DOMString vlinkColor;
  [CEReactions] attribute [LegacyNullToEmptyString] DOMString alinkColor;
  [CEReactions] attribute [LegacyNullToEmptyString] DOMString bgColor;

  [SameObject] readonly attribute HTMLCollection anchors;
  [SameObject] readonly attribute HTMLCollection applets;

  undefined clear();
  undefined captureEvents();
  undefined releaseEvents();

  [SameObject] 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 nothing. (It exists for historical reasons.)

The clear(), captureEvents(), and releaseEvents() methods must do nothing.


The all attribute must return an HTMLAllCollection rooted at the Document node, whose filter matches all elements.


partial interface Window {
  undefined captureEvents();
  undefined releaseEvents();

  [Replaceable, SameObject] readonly attribute External external;
};

The captureEvents() and releaseEvents() methods must do nothing.

The external attribute of the Window interface must return an instance of the External interface:

[Exposed=Window]
interface External {
  undefined AddSearchProvider();
  undefined IsSearchProviderInstalled();
};

The AddSearchProvider() and IsSearchProviderInstalled() methods must do nothing.

百度