首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Attributes

HTML中的元素是有属性的;这些额外的属性值可以配置元素或者以各种方式来调整元素的行为,进而满足用户所需的标准。

属性列表

表格内的属性名,在中文版本被错误的翻译为中文了

内容与IDL属性

在HTML中,大多数属性有两个面:content属性IDL属性

内容属性是您从内容(HTML代码)中设置的属性,您可以通过element.setAttribute()element.getAttribute()设置它。内容属性始终是一个字符串,即使期望的值应该是一个整数。例如,要使用content属性将<input>元素设置maxlength为42,您必须调用setAttribute("maxlength", "42")该元素。

IDL属性也被称为JavaScript属性。这些是您可以使用JavaScript属性来读取或设置的属性element.foo。IDL属性总是要使用(但可能会转换)底层内容属性,以便在获取该属性时返回值,并在设置内容属性时将内容属性保存到该属性中。换句话说,IDL属性本质上反映了内容属性。

大多数情况下,IDL属性会在实际使用时返回它们的值。例如,默认type<input>元素的“文本”,因此,如果您设置input.type="foobar"<input>元素将是类型的文本(在外观和行为),但“类型”的内容属性的值将是“foobar的”。但是,typeIDL属性将返回字符串“text”。

IDL属性并不总是字符串; 例如,input.maxlength是一个数字(一个有符号的长整数)。当使用IDL属性时,你阅读或设置所需类型的值,所以input.maxlength总是要返回一个数字,当你设置时input.maxlength,它需要一个数字。如果您传递另一个类型,则会自动将其转换为由标准JavaScript规则指定的数字进行类型转换。

IDL属性可以反映其他类型,如无符号长整型,URL,布尔值等。不幸的是,没有明确的规则,IDL属性与其对应的内容属性的行为方式取决于属性。大多数情况下,它将遵循规范中规定的规则,但有时却不符合规定。HTML规范试图尽可能使开发者友好,但由于各种原因(主要是历史的),一些属性的行为奇怪(select.size例如),你应该阅读规范以了解它们的行为。

扫码关注腾讯云开发者

领取腾讯云代金券