HTML元素属性分类
全局属性和局部属性
属性可以分为两类:全局属性和局部属性。 其中全部元素都能使用的通用属性称为全局属性。只能运用在某些特定元素的属性,称为局部属性,例如form的action属性、textarea的rows属性等。
全局属性可简单分为5种,如下:
- HTML4原有的全局属性accesskey、class、dir、hidden、id、lang、style、tabindex和title
- HTML5新增的全局属性有contenteditable、contextmenu、draggable、dropzone和spellcheck
- ARIA属性,即无障碍网页应用属性,也是一种全局属性。
- 事件属性(event attribute),都是以“on”为前缀,例如onclick、onmousedown等。
- 自定义属性(custome attribute),通常以“data-” 为前缀。
不常用属性介绍
下面对不常用的属性简单介绍下
1.accesskey(带有指定快捷键的超链接)
accesskey 属性规定激活(使元素获得焦点)元素的快捷键。
accesskey几乎所有浏览器均 accesskey 属性,除了 Opera。
<a href="http://www.w3school.com.cn/html/" accesskey="h">HTML 教程</a>
注释:请使用Alt + accessKey (或者 Shift + Alt + accessKey) 来访问带有指定快捷键的元素。
详细可参考《HTML accesskey 属性》
2.dir属性(规定元素内容的文本方向)
语法:
element dir="ltr|rtl">
- ltr:默认。从左向右的文本方向。
- rtl:从右向左的文本方向。
详细可以参考《HTML dir 属性》
3.tabindex 属性
规定元素的 tab 键控制次序(当 tab 键用于导航时)
语法:
tabindex="number">
示例,带有指定 tab 键顺序的链接:
="http://www.w3school.com.cn/" tabindex="2">W3School> ="http://www.google.com/"="1">Google="http://www.microsoft.com/"="3">Microsoft>
几乎所有浏览器均 tabindex 属性,除了 Safari
详细可参考《HTML tabindex 属性》
4.dropzone 属性
规定在元素上拖动数据时,是否拷贝、移动或链接被拖动数据
语法:
dropzone="copy|move|link">
5.spellcheck 属性
规定是否对元素进行拼写和语法检查
可以对以下内容进行拼写检查:
- input 元素中的文本值(非密码)
-
<textarea>
元素中的文本 - 可编辑元素中的文本
语法:
spellcheck="true|false">
详细可参考:《HTML spellcheck 属性》
布尔属性
有一些属性比较特殊,既可以设置值,也可以不用设置,这种属性叫作布尔属性,常见的用checked,defer,disabled,readonly和selected等。例如在单选框中,有3种方式表示选中状态,如下代码:
input type="radio" checked/> ="checked"=""/>
当未设值时,只需将属性名写在开始标签中;当设置了值时,这个值不能是true或者false,只能是"checked"或空值。如果要取消选中,那么只能将这个属性从开始标签中移除,而不能设置为false或空值。
相关面试题
什么是Shadow DOM(影子中的DOM)?
Shadow DOM是浏览器的一种功能,能够自动添加子元素,例如audio元素(如下代码所示)在网页中能使用进度条、音量控制等功能,这些相关元素都是由浏览器自动生成。
元素属性src和href有何区别?
两者的功能不同。href能够建立一条通道,将当前文档和定义的资源连接起来。src是将定义的资源嵌入到当前文档中。
img元素中的title和alt属性有何区别?
title是全局属性,提供额外的提示信息,当鼠标滑动到该元素时,显示定义的提示。link和style元素中的title比较特殊,表示样式表的名称;alt是局部属性,仅可用在img、input等元素中,提供在图片未载入或加载失败时的替代文本。注意,只用当input元素的type属性为image时,才能使用alt属性。