1. 16 过时功能
    1. 16.1 过时但符合标准的功能
      1. 16.1.1 过时但符合标准的功能的警告
    2. 16.2 不符合标准的功能
    3. 16.3 对实现的要求
      1. 16.3.1 marquee 元素
      2. 16.3.2 框架
      3. 16.3.3 其他元素、属性和 API

16 过时功能

16.1 过时但符合标准的功能

本节列出的功能将在符合性检查器中触发警告。

作者不应在 img 元素上指定 border 属性。如果存在该属性,则其值必须为字符串 "0"。应使用 CSS 代替。

作者不应在 script 元素上指定 charset 属性。如果存在该属性,则其值必须与 "utf-8" 进行 ASCII 不区分大小写 匹配。(在符合本标准中其他要求的文档中,该属性将被编码为 UTF-8,因此该属性不会产生任何影响。)

作者不应在 script 元素上指定 language 属性。如果存在该属性,则其值必须与字符串 "JavaScript" 进行 ASCII 不区分大小写 匹配,并且要么 type 属性必须省略,要么其值必须与字符串 "text/javascript" 进行 ASCII 不区分大小写 匹配。应完全省略该属性(使用值 "JavaScript",它不会产生任何影响),或将其替换为使用 type 属性。

作者不应为 script 元素上的 type 属性指定空字符串或 JavaScript MIME 类型本质匹配。相反,他们应该省略该属性,它具有相同的效果。

作者不应在 style 元素上指定 type 属性。如果存在该属性,则其值必须与 "text/css" 进行 ASCII 不区分大小写 匹配。

作者不应在 a 元素上指定 name 属性。如果存在该属性,则其值不能为 empty string,并且必须不等于元素的 中除元素自身的 ID 之外的任何 ID 的值,也不等于元素的 中其他 a 元素上的任何其他 name 属性的值。如果存在此属性并且元素具有 ID,则该属性的值必须等于元素的 ID。在该语言的早期版本中,此属性旨在作为一种方法来指定 片段URL 中的可能目标。应使用 id 属性代替。

作者不应,但可能尽管本规范其他地方有相反的要求,但可以在 input 元素上指定 maxlengthsize 属性,这些元素的 type 属性处于 数字 状态。使用这些属性的一个有效原因是,帮助不支持 input 元素(type="number")的旧版用户代理仍然以有用的宽度呈现文本控件。

16.1.1 过时但符合标准的功能的警告

为了简化从 HTML4 Transitional 文档到 *本* 规范中定义的语言的过渡,并阻止某些仅在极少数情况下才允许的功能,符合性检查器必须在文档中使用以下功能时向用户发出警告。这些通常是旧的过时功能,没有任何影响,并且仅允许区分可能的错误(常规符合性错误)和仅仅是残留标记或不寻常和不鼓励的做法(这些警告)。

以下功能必须按上述方式分类

符合性检查器必须区分没有符合性错误且没有任何这些过时功能的页面,以及没有符合性错误但确实具有某些这些过时功能的页面。

例如,验证器可以将某些页面报告为 "有效 HTML",而将其他页面报告为 "带有警告的有效 HTML"。

16.2 不符合标准的功能

以下列表中的元素完全过时,作者不得使用

applet

使用 embedobject 代替。

acronym

使用 abbr 代替。

bgsound

使用 audio 代替。

dir

使用 ul 代替。

frame
frameset
noframes

要么使用 iframe 和 CSS 代替,要么使用服务器端包含生成包含各种不变部分的完整页面。

isindex

使用显式 form文本控件 组合代替。

keygen

对于企业设备管理用例,使用本机设备管理功能。

对于证书注册用例,使用 Web Cryptography API 生成证书的密钥对,然后导出证书和密钥以允许用户手动安装它们。 [WEBCRYPTO]

listing

使用 precode 代替。

menuitem

要实现自定义上下文菜单,请使用脚本处理 contextmenu 事件。

nextid

使用 GUID 代替。

noembed

使用 object 而不是 embed,当需要回退时。

param

使用 object 元素的 data 属性设置外部资源的 URL。

plaintext

使用 "text/plain" MIME 类型 替代。

rb
rtc

ruby 元素内直接提供 ruby 基底或使用嵌套的 ruby 元素就足够了。

strike

如果元素标记的是编辑,则使用 del 替代;否则使用 s 替代。

xmp

使用 precode 替代,并将 "<" 和 "&" 字符分别转义为 "&lt;" 和 "&amp;"。

basefont
big
blink
center
font
marquee
multicol
nobr
spacer
tt

使用合适的元素或 CSS 替代。

如果 tt 元素用于标记键盘输入,请考虑使用 kbd 元素;如果用于标记变量,请考虑使用 var 元素;如果用于标记计算机代码,请考虑使用 code 元素;如果用于标记计算机输出,请考虑使用 samp 元素。

类似地,如果 big 元素用于表示标题,请考虑使用 h1 元素;如果用于标记重要段落,请考虑使用 strong 元素;如果用于突出显示文本以供参考,请考虑使用 mark 元素。

另请参阅 文本级语义使用摘要,以获取更多示例建议。


以下属性已过时(尽管这些元素仍然是语言的一部分),作者不应使用它们

charseta 元素上
charsetlink 元素上

相反,在链接的资源上使用 HTTP `Content-Type` 标头。

charsetscript 元素上(上一节中提到的情况除外)

省略该属性。文档和脚本都必须使用 UTF-8,因此在 script 元素上指定它就显得多余,因为它会从文档继承。

coordsa 元素上
shapea 元素上

对于图像地图,请使用 area 而不是 a

methodsa 元素上
methodslink 元素上

使用 HTTP OPTIONS 功能替代。

namea 元素上(上一节中提到的情况除外)
nameembed 元素上
nameimg 元素上
nameoption 元素上

使用 id 属性替代。

reva 元素上
revlink 元素上

使用 rel 属性替代,并使用相反的词语。(例如,使用 rel="author" 代替 rev="made"。)

urna 元素上
urnlink 元素上

使用 href 属性指定首选的持久标识符。

acceptform 元素上

直接在 input 元素上使用 accept 属性替代。

hreflangarea 元素上
typearea 元素上

这些属性没有任何用处,而且出于历史原因,area 元素上没有相应的 IDL 属性。完全省略它们。

nohrefarea 元素上

省略 href 属性就足够了;nohref 属性是不必要的。完全省略它。

profilehead 元素上

不必要。完全省略它。

manifesthtml 元素上

使用服务工作者替代。 [SW]

versionhtml 元素上

不必要。完全省略它。

ismapinput 元素上

不必要。完全省略它。所有具有 图像按钮 状态的 type 属性的 input 元素都将被处理为服务器端图像地图。

usemapinput 元素上
usemapobject 元素上

对于图像地图,请使用 img 元素。

longdesciframe 元素上
longdescimg 元素上

使用常规的 a 元素链接到描述,或者(对于图像而言)使用 图像地图 从图像提供链接到图像的描述。

lowsrcimg 元素上

使用渐进式 JPEG 图像(在 src 属性中给出),而不是使用两张单独的图像。

targetlink 元素上

不必要。完全省略它。

typemenu 元素上

要实现自定义上下文菜单,请使用脚本处理 contextmenu 事件。对于工具栏菜单,请省略该属性。

labelmenu 元素上
contextmenu 在所有元素上
onshow 在所有元素上

要实现自定义上下文菜单,请使用脚本处理 contextmenu 事件。

schememeta 元素上

每个字段只使用一个方案,或者将方案声明作为值的一部分。

archiveobject 元素上
classidobject 元素上
codeobject 元素上
codebaseobject 元素上
codetypeobject 元素上

使用 datatype 属性来调用 插件

declareobject 元素上

每次重复使用资源时,完全重复 object 元素。

standbyobject 元素上

优化链接的资源,使其快速加载,或至少以增量方式加载。

typemustmatchobject 元素上

避免使用包含不可信资源的 object 元素。

languagescript 元素上(除了上一节中提到的情况)

省略 JavaScript 的属性;对于 数据块,请使用 type 属性。

eventscript 元素上
forscript 元素上

使用 DOM 事件机制来注册事件监听器。 [DOM]

typestyle 元素上(除了上一节中提到的情况)

省略 CSS 的属性;对于 数据块,请使用 script 作为容器,而不是 style

datapagesizetable 元素上

不必要。完全省略它。

summarytable 元素上

使用 table 部分中给出的 描述表格的技术 中的一种。

abbrtd 元素上

使用以明确简洁的方式开始的文本,并在其后包含任何更详细的文本。 title 属性也可以用于包含更详细的文本,以便可以使单元格内容变得简洁。 如果是标题,请使用 th(它具有 abbr 属性)。

axistdth 元素上

在相关的 th 上使用 scope 属性。

scopetd 元素上

对标题单元格使用 th 元素。

datasrcabuttondivframeiframeimginputlabellegendmarqueeobjectoptionselectspantabletextarea 元素上
datafldabuttondivfieldsetframeiframeimginputlabellegendmarqueeobjectselectspantextarea 元素上
dataformatasbuttondivinputlabellegendmarqueeobjectoptionselectspantable 元素上

使用脚本和 XMLHttpRequest 等机制来动态填充页面。 [XHR]

dropzone 在所有元素上

使用脚本处理 dragenterdragover 事件。

alinkbody 元素上
bgcolorbody 元素上
bottommarginbody 元素上
leftmarginbody 元素上
linkbody 元素上
marginheightbody 元素上
marginwidthbody 元素上
rightmarginbody 元素上
textbody 元素上
topmarginbody 元素上
vlinkbody 元素上
clearbr 元素上
aligncaption 元素上
aligncol 元素上
charcol 元素上
charoffcol 元素上
valigncol 元素上
widthcol 元素上
aligndiv 元素上
compactdl 元素上
alignembed 元素上
hspaceembed 元素上
vspaceembed 元素上
alignhr 元素上
colorhr 元素上
noshadehr 元素上
sizehr 元素上
widthhr 元素上
alignh1h6 元素上
aligniframe 元素上
allowtransparencyiframe 元素上
frameborderiframe 元素上
framespacingiframe 元素上
hspaceiframe 元素上
marginheightiframe 元素上
marginwidthiframe 元素上
scrollingiframe 元素上
vspaceiframe 元素上
aligninput 元素上
borderinput 元素上
hspaceinput 元素上
vspaceinput 元素上
alignimg 元素上
borderimg 元素上(上一节中提到的情况除外)
hspaceimg 元素上
vspaceimg 元素上
alignlegend 元素上
typeli 元素上
compactmenu 元素上
alignobject 元素上
borderobject 元素上
hspaceobject 元素上
vspaceobject 元素上
compactol 元素上
alignp 元素上
widthpre 元素上
aligntable 元素上
bgcolortable 元素上
bordertable 元素上
bordercolortable 元素上
cellpaddingtable 元素上
cellspacingtable 元素上
frametable 元素上
heighttable 元素上
rulestable 元素上
widthtable 元素上
aligntbodytheadtfoot 元素上
chartbodytheadtfoot 元素上
charofftbodytheadtfoot 元素上
heighttheadtbodytfoot 元素上
valigntbodytheadtfoot 元素上
aligntdth 元素上
bgcolortdth 元素上
chartdth 元素上
charofftdth 元素上
heighttdth 元素上
nowraptdth 元素上
valigntdth 元素上
widthtdth 元素上
aligntr 元素上
bgcolortr 元素上
chartr 元素上
charofftr 元素上
heighttr 元素上
valigntr 元素上
compactul 元素上
typeul 元素上
backgroundbodytabletheadtbodytfoottrtdth 元素上

使用 CSS 代替。

16.3 实现要求

16.3.1 marquee 元素

marquee 元素是一个表现元素,它会对内容进行动画处理。CSS 过渡和动画是更合适的机制。 [CSSANIMATIONS] [CSSTRANSITIONS]

marquee 元素必须实现 HTMLMarqueeElement 接口。

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

  [CEReactions] attribute DOMString behavior;
  [CEReactions] attribute DOMString bgColor;
  [CEReactions] attribute DOMString direction;
  [CEReactions] attribute DOMString height;
  [CEReactions] attribute unsigned long hspace;
  [CEReactions] attribute long loop;
  [CEReactions] attribute unsigned long scrollAmount;
  [CEReactions] attribute unsigned long scrollDelay;
  [CEReactions] attribute boolean trueSpeed;
  [CEReactions] attribute unsigned long vspace;
  [CEReactions] attribute DOMString width;

  undefined start();
  undefined stop();
};

一个 marquee 元素可以 打开关闭。当它被创建时,它被 打开.

start() 方法被调用时,marquee 元素必须被 打开.

当调用 stop() 方法时,跑马灯 元素必须被 关闭


跑马灯 元素上的 behavior 内容属性是一个 枚举属性,具有以下关键字和状态(均不符合标准)

关键字状态
scroll scroll
slide slide
alternate alternate

该属性的 缺失值默认值无效值默认值 都是 scroll 状态。


跑马灯 元素上的 direction 内容属性是一个 枚举属性,具有以下关键字和状态(均不符合标准)

关键字状态
left left
right right
up up
down down

该属性的 缺失值默认值无效值默认值 都是 left 状态。


跑马灯 元素上的 truespeed 内容属性是一个 布尔属性


一个 跑马灯 元素有一个 跑马灯滚动间隔,它通过以下方式获得

  1. 如果该元素具有 scrolldelay 属性,并且使用 解析非负整数的规则 解析其值不会返回错误,则令 delay 为解析后的值。否则,令 delay 为 85。

  2. 如果该元素没有 truespeed 属性,并且 delay 值小于 60,则令 delay 为 60。

  3. The 跑马灯滚动间隔delay,以毫秒为单位解释。


一个 跑马灯 元素有一个 跑马灯滚动距离,如果该元素具有 scrollamount 属性,并且使用 解析非负整数的规则 解析其值不会返回错误,则为解析后的值,以 CSS 像素 为单位解释,否则为 6 CSS 像素


一个 跑马灯 元素有一个 跑马灯循环次数,如果该元素具有 loop 属性,并且使用 解析整数的规则 解析其值不会返回错误或小于 1 的数字,则为解析后的值,否则为 −1。

The loop IDL 属性,在获取时,必须返回元素的 跑马灯循环次数;在设置时,如果新值与元素的 跑马灯循环次数 不同,并且大于零或等于 −1,则必须将元素的 loop 内容属性(如果需要则添加)设置为表示新值的 有效整数。(其他值将被忽略。)

一个 跑马灯 元素还具有一个 跑马灯当前循环索引,该索引在创建元素时为零。

渲染层会偶尔 递增跑马灯当前循环索引,这将导致执行以下步骤

  1. 如果 跑马灯循环次数 为 −1,则返回。

  2. 跑马灯当前循环索引 递增 1。

  3. 如果 跑马灯当前循环索引 现在大于或等于元素的 跑马灯循环次数,则 关闭 跑马灯 元素。


The behaviordirectionheighthspacevspace,和 width IDL 属性必须 反映 同名内容属性。

The bgColor IDL 属性必须 反映 bgcolor 内容属性。

The scrollAmount IDL 属性必须 反映 scrollamount 内容属性。The 默认值 为 6。

The scrollDelay IDL 属性必须 反映 scrolldelay 内容属性。The 默认值 为 85。

The trueSpeed IDL 属性必须 反映 truespeed 内容属性。

16.3.2 框架

The frameset 元素充当使用框架的文档中的 主体元素

The 框架集 元素必须实现 HTMLFrameSetElement 接口。

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

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

The colsrows IDL 属性的 框架集 元素必须 反映 同名内容属性。

The 框架集 元素将一些 窗口 对象的 事件处理程序内容属性 公开为 事件处理程序内容属性。它还镜像了它们的 事件处理程序 IDL 属性

The 事件处理程序窗口 对象由 窗口-反射主体元素事件处理程序集 命名,在 框架集 元素上公开,用相同名称的通用 事件处理程序 替换通常由 HTML 元素 支持的事件处理程序。


The 框架 元素有一个 内容可导航,类似于 内嵌框架 元素,但渲染在 框架集 元素中。

The 框架 HTML 元素插入步骤,给定 insertedNode,为

  1. 如果 insertedNode 不在 文档树中,则返回。

  2. 如果 insertedNode浏览上下文 为空,则返回。

  3. insertedNode 创建一个新的子级可导航

  4. 处理 insertedNode框架 属性,其中 initialInsertion 设置为 true。

The 框架 HTML 元素移除步骤,给定 removedNode,是为给定的 removedNode 销毁一个子级可导航

每当一个具有非空 内容可导航框架 元素的 src 属性被设置、更改或移除时,用户代理必须 处理 框架 属性

处理元素 element框架 属性,带有一个可选的布尔值 initialInsertion

  1. url 为运行给定的 elementinitialInsertion内嵌框架框架 元素的共享属性处理步骤 的结果。

  2. 如果 url 为空,则返回。

  3. 如果 url 匹配 about:blank 并且 initialInsertion 为 true,则

    1. 触发一个事件,名为 load,在 element 上。

    2. 返回。

  4. 导航一个给定的 elementurl 和空字符串的 内嵌框架框架

The 框架 元素 可能延迟 load 事件

The 框架 元素必须实现 HTMLFrameElement 接口。

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

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

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

The namescrolling,和 src IDL 属性的 框架 元素必须 反映 同名内容属性。为了反映的目的,框架 元素的 src 内容属性被定义为包含一个 URL

The frameBorder IDL 属性的 框架 元素必须 反映 元素的 frameborder 内容属性。

The longDesc IDL 属性的 框架 元素必须 反映 元素的 longdesc 内容属性,为了反映的目的,它被定义为包含一个 URL

noResizeframe 元素的 IDL 属性,它必须 反映 元素的 noresize 内容属性。

marginHeightframe 元素的 IDL 属性,它必须 反映 元素的 marginheight 内容属性。

marginWidthframe 元素的 IDL 属性,它必须 反映 元素的 marginwidth 内容属性。

contentDocument 获取器的步骤是返回 this内容文档

contentWindow 获取器的步骤是返回 this内容窗口

16.3.3 其他元素、属性和 API

用户代理必须以与 abbr 元素在语义方面和渲染目的方面相同的方式处理 acronym 元素。


partial interface HTMLAnchorElement {
  [CEReactions] attribute DOMString coords;
  [CEReactions] attribute DOMString charset;
  [CEReactions] attribute DOMString name;
  [CEReactions] attribute DOMString rev;
  [CEReactions] attribute DOMString shape;
};

coordscharsetnamerevshapea 元素的 IDL 属性,它们必须 反映 同名内容属性。


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

noHrefarea 元素的 IDL 属性,它必须 反映 元素的 nohref 内容属性。


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

textbody 元素的 IDL 属性,它必须 反映 元素的 text 内容属性。

linkbody 元素的 IDL 属性,它必须 反映 元素的 link 内容属性。

aLinkbody 元素的 IDL 属性,它必须 反映 元素的 alink 内容属性。

vLinkbody 元素的 IDL 属性,它必须 反映 元素的 vlink 内容属性。

bgColorbody 元素的 IDL 属性,它必须 反映 元素的 bgcolor 内容属性。

backgroundbody 元素的 IDL 属性,它必须 反映 元素的 background 内容属性。 (background 内容 定义为包含 URL,尽管其处理规则在上面的渲染部分中有规定。)


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

clearbr 元素的 IDL 属性,它必须 反映 同名内容属性。


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

aligncaption 元素的 IDL 属性,它必须 反映 同名内容属性。


partial interface HTMLTableColElement {
  [CEReactions] attribute DOMString align;
  [CEReactions] attribute DOMString ch;
  [CEReactions] attribute DOMString chOff;
  [CEReactions] attribute DOMString vAlign;
  [CEReactions] attribute DOMString width;
};

alignwidthcol 元素的 IDL 属性,它们必须 反映 同名内容属性。

chcol 元素的 IDL 属性,它必须 反映 元素的 char 内容属性。

chOffcol 元素的 IDL 属性,它必须 反映 元素的 charoff 内容属性。

vAligncol 元素的 IDL 属性,它必须 反映 元素的 valign 内容属性。


用户代理必须以与 ul 元素在语义方面和渲染目的方面相同的方式处理 dir 元素。

dir 元素必须实现 HTMLDirectoryElement 接口。

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

  [CEReactions] attribute boolean compact;
};

compactdir 元素的 IDL 属性,它必须 反映 同名内容属性。


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

aligndiv 元素的 IDL 属性,它必须 反映 同名内容属性。


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

compactdl 元素的 IDL 属性,它必须 反映 同名内容属性。


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

namealignembed 元素的 IDL 属性,它们必须 反映 同名内容属性。


font 元素必须实现 HTMLFontElement 接口。

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

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

colorfacesizefont 元素的 IDL 属性,它们必须 反映 同名内容属性。


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

alignh1h6 元素的 IDL 属性,它必须 反映 同名内容属性。


profilehead 元素的 IDL 属性 (具有 HTMLHeadElement 接口),故意被省略。 因此,除非 其他适用规范 要求,否则实现将不支持此属性。(它在这里被提及,因为它是在 DOM 的早期版本中定义的。)


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

aligncolorsizewidthhr 元素的 IDL 属性,它们必须 反映 同名内容属性。

noShadehr 元素的 IDL 属性,它必须 反映 元素的 noshade 内容属性。


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

versionhtml 元素的 IDL 属性,它必须 反映 同名内容属性。


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

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

alignscrollingiframe 元素的 IDL 属性,它们必须 反映 同名内容属性。

frameBorderiframe 元素的 IDL 属性,它必须 反映 元素的 frameborder 内容属性。

longDesciframe 元素的 IDL 属性,它必须 反映 元素的 longdesc 内容属性。为了反映的目的,该属性被定义为包含一个 URL

marginHeightiframe 元素的 IDL 属性,它必须 反映 元素的 marginheight 内容属性。

marginWidthiframe 元素的 IDL 属性,它必须 反映 元素的 marginwidth 内容属性。


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

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

namealignborderhspacevspaceimg 元素的 IDL 属性,它们必须 反映 具有相同名称的相应内容属性。

longDescimg 元素的 IDL 属性,它必须 反映 元素的 longdesc 内容属性。为了反映的目的,该属性被定义为包含一个 URL

lowsrcimg 元素的 IDL 属性,它必须 反映 元素的 lowsrc 内容属性。为了反映的目的,该属性被定义为包含一个 URL


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

aligninput 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。

useMapinput 元素的 IDL 属性,它必须 反映 元素的 usemap 内容属性。


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

alignlegend 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


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

typeli 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


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

charsetrevtargetlink 元素的 IDL 属性,它们必须 反映 具有相同名称的相应内容属性。


在语义和渲染方面,用户代理必须以与 pre 元素等效的方式处理 listing 元素。(尽管解析器对该元素有特殊的行为。)


partial interface HTMLMenuElement {
  [CEReactions] attribute boolean compact;
};

compactmenu 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


partial interface HTMLMetaElement {
  [CEReactions] attribute DOMString scheme;
};

在处理具有 name 属性的 meta 元素时,用户代理可能会将 scheme 内容属性视为该元素的 name 内容属性的扩展,该属性的值是用户代理识别为支持 scheme 属性的属性。

鼓励用户代理忽略 scheme 属性,而是处理传递给元数据名称的值,就像它是为 scheme 属性的每个预期值指定的。

例如,如果用户代理对 meta 元素起作用,并且该元素的 name 属性具有值 "eGMS.subject.keyword",并且知道 scheme 属性与此元数据名称一起使用,那么它可以考虑 scheme 属性,就像它是 name 属性的扩展一样。因此,以下两个 meta 元素可以被视为两个元素,它们为两个不同的元数据名称提供值,一个由 "eGMS.subject.keyword" 和 "LGCL" 的组合组成,另一个由 "eGMS.subject.keyword" 和 "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">

但是,建议对该标记的处理等同于以下内容。

<meta name="eGMS.subject.keyword" content="Abandoned vehicles">
<meta name="eGMS.subject.keyword" content="Mah car: kthxbye">

schememeta 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


partial interface HTMLObjectElement {
  [CEReactions] attribute DOMString align;
  [CEReactions] attribute DOMString archive;
  [CEReactions] attribute DOMString code;
  [CEReactions] attribute boolean declare;
  [CEReactions] attribute unsigned long hspace;
  [CEReactions] attribute DOMString standby;
  [CEReactions] attribute unsigned long vspace;
  [CEReactions] attribute DOMString codeBase;
  [CEReactions] attribute DOMString codeType;
  [CEReactions] attribute DOMString useMap;

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

alignarchivebordercodedeclarehspacestandbyvspaceobject 元素的 IDL 属性,它们必须 反映 具有相同名称的相应内容属性。

codeBaseobject 元素的 IDL 属性,它必须 反映 元素的 codebase 内容属性。为了反映的目的,该属性被定义为包含一个 URL

codeTypeobject 元素的 IDL 属性,它必须 反映 元素的 codetype 内容属性。

HTMLObjectElement/useMap

所有当前引擎都支持。

Firefox1+Safari3+Chrome1+
Opera12.1+Edge79+
Edge (Legacy)12+Internet Explorer6+
Firefox Android?Safari iOS1+Chrome Android?WebView Android?Samsung Internet?Opera Android12.1+

useMap IDL 属性必须 反映 usemap 内容属性。


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

compactol 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


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

alignp 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


param 元素必须实现 HTMLParamElement 接口。

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

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

namevaluetypeparam 元素的 IDL 属性,它们必须 反映 具有相同名称的相应内容属性。

valueTypeparam 元素的 IDL 属性,它必须 反映 元素的 valuetype 内容属性。


在语义和渲染方面,用户代理必须以与 pre 元素等效的方式处理 plaintext 元素。(尽管解析器对该元素有特殊的行为。)


partial interface HTMLPreElement {
  [CEReactions] attribute long width;
};

widthpre 元素的 IDL 属性,它必须 反映 具有相同名称的内容属性。


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

typestyle 元素的 IDL 属性,必须反映 元素的 type 内容属性。


partial interface HTMLScriptElement {
  [CEReactions] attribute DOMString charset;
  [CEReactions] attribute DOMString event;
  [CEReactions] attribute DOMString htmlFor;
};

charseteventscript 元素的 IDL 属性,必须反映 它们各自同名的内容属性。

htmlForscript 元素的 IDL 属性,必须反映 元素的 for 内容属性。


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

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

align, border, frame, summary, ruleswidthtable 元素的 IDL 属性,必须反映 它们各自同名的内容属性。

bgColortable 元素的 IDL 属性,必须反映 元素的 bgcolor 内容属性。

cellPaddingtable 元素的 IDL 属性,必须反映 元素的 cellpadding 内容属性。

cellSpacingtable 元素的 IDL 属性,必须反映 元素的 cellspacing 内容属性。


partial interface HTMLTableSectionElement {
  [CEReactions] attribute DOMString align;
  [CEReactions] attribute DOMString ch;
  [CEReactions] attribute DOMString chOff;
  [CEReactions] attribute DOMString vAlign;
};

aligntbody, theadtfoot 元素的 IDL 属性,必须反映 同名的内容属性。

chtbody, theadtfoot 元素的 IDL 属性,必须反映 元素的 char 内容属性。

chOfftbody, theadtfoot 元素的 IDL 属性,必须反映 元素的 charoff 内容属性。

vAligntbody, theadtfoot 元素的 IDL 属性,必须反映 元素的 valign 内容属性。


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

  [CEReactions] attribute DOMString ch;
  [CEReactions] attribute DOMString chOff;
  [CEReactions] attribute boolean noWrap;
  [CEReactions] attribute DOMString vAlign;

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

align, axis, heightwidthtdth 元素的 IDL 属性,必须反映 它们各自同名的内容属性。

chtdth 元素的 IDL 属性,必须反映 元素的 char 内容属性。

chOfftdth 元素的 IDL 属性,必须反映 元素的 charoff 内容属性。

noWraptdth 元素的 IDL 属性,必须反映 元素的 nowrap 内容属性。

vAligntdth 元素的 IDL 属性,必须反映 元素的 valign 内容属性。

bgColortdth 元素的 IDL 属性,必须反映 元素的 bgcolor 内容属性。


partial interface HTMLTableRowElement {
  [CEReactions] attribute DOMString align;
  [CEReactions] attribute DOMString ch;
  [CEReactions] attribute DOMString chOff;
  [CEReactions] attribute DOMString vAlign;

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

aligntr 元素的 IDL 属性,必须反映 同名的内容属性。

chtr 元素的 IDL 属性,必须反映 元素的 char 内容属性。

chOfftr 元素的 IDL 属性,必须反映 元素的 charoff 内容属性。

vAligntr 元素的 IDL 属性,必须反映 元素的 valign 内容属性。

bgColortr 元素的 IDL 属性,必须反映 元素的 bgcolor 内容属性。


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

compacttypeul 元素的 IDL 属性,必须反映 它们各自同名的内容属性。


用户代理在语义和渲染方面必须将 xmp 元素与 pre 元素等效处理。(虽然解析器对该元素有特殊行为。)


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;
};

以下表格第一列列出的 Document 对象的属性必须反映 主体元素 上同名内容属性,前提是 主体元素 是一个 body 元素(而不是一个 frameset 元素)。如果不存在 主体元素 或它是一个 frameset 元素,则这些属性在获取时必须返回空字符串,在设置时必须什么也不做。

IDL 属性内容属性
fgColor text
linkColor link
vlinkColor vlink
alinkColor alink
bgColor bgcolor

anchors 属性必须返回一个HTMLCollection,它以 Document 节点为根节点,其过滤器只匹配具有 name 属性的 a 元素。

applets 属性必须返回一个HTMLCollection,它以 Document 节点为根节点,其过滤器不匹配任何内容。(它存在是为了历史原因。)

clear(), captureEvents()releaseEvents() 方法必须什么也不做。


all 属性必须返回一个HTMLAllCollection,它以 Document 节点为根节点,其过滤器匹配所有元素。


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

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

captureEvents()releaseEvents() 方法必须什么也不做。

external 属性是 Window 接口的属性,必须返回一个 External 接口的实例。

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

AddSearchProvider()IsSearchProviderInstalled() 方法必须什么都不做。