HTML5属性解释与规定
1.title属性
注意,这里说的不是title标签(<title></title>),而是title属性(如 <a title=”…)
总结:
元素的title属性的值就是该元素的咨询信息,并有可能适当的以提示框的形式显示出来。
title属性是纯文本形式的。
例如:超级连接的(<a>标签)title属性可以设置成目标资源的简单描述
示例:
代码:
<a href="#" title="点击这里可以注册成本站会员">注册</a>
当一个元素没有设置title属性的时候,意味着该元素将受其最近一级设置有title属性的祖先元素的title属性值的影响。
当由一个元素任何祖先元素的title值都不能表达该元素的咨询信息时,你应该为它单独设置一个title值。
当一个元素没有咨询信息的时候,你可以把它设置成空字符串。
title标签可以用 (Unicode Character ‘LINE FEED (LF)’ (U+000A)的html表现形式)换行。
代码示例:
代码:
<p><a href="http://www.htmlv.cn" title="这是一个 不错的论坛">HTML5中文论坛</a></p>
以上代码当鼠标悬在连接上的时候,title的提示框将以两行的形式显示(IE7下测试通过,Fireox下测试未通过)。
对于一些特殊的元素,诸如 link, abbr, 和 input这些元素,title属性有附加的含义,超出了以上的描述。
title的属性值应该与其的内容值相符。
2.lang属性
梗概:
元素的lang(无命名空间的)属性用于定义元素的内容及其他文本属性的语言种类。
它的值必须是符合BCP 47规定范围内的一个语言标签。
当该属性设置成空字符串时,代表语言未知。
lang(在XML命令空间内的 xml:lang),就是XML标准里定义的。
如果一个元素没有定义lang属性,且其父元素有lang属性,它将继承。
任何html原书都可以设置lang(无命名空间的)属性。
lang(在XML命令空间内的)可以使用在XML文档中的HTML元素上。
如果一个元素既设置有命名空间的lang属性,又设置没有命名空间的lang属性,请确保两个属性的值一致。
请不要在html文档中使用带有xml命名空间的lang属性。
user agents解析元素的语言属性工作顺序是这样的:
当元素设置了lang属性,则以lang属性为准,否则将以最近的祖先元素的lang属性为准。
如果同时设置了xml命令空间的lang属性,与没有命名空间的lang属性,则以前者为准。
如果在其祖先中没有找到任何lang属性值,而在meta中设置了默认语言,则以此为准。
如果meta中也没有设置,会去查看htpp协议传输的内容(header)中的设置,如果htpp返回多种语言,视为无效,其效果相当于把lang属性设置成空字符串。
你也可以一个不符合标准的lang属性,用于其他服务,例如CSS选择器。
<p lang=”xyzzy”>test</p> 将会被css的:lang(xyzzy) 选择器捕获。
3.dir属性
总结:
ltr:从左到有。
rtl:从右到左。
auto:根据文本内容自动决定,不准确,不建议使用,除非万不得已。
元素的dir属性用于定义元素的文字排版方向。
可设置如下几个值:
bdi元素没有设置dir属性时,和设置auto效果一致。
根元素没有设置dir属性时,和设置成ltr效果一致。
元素没有设置dir属性,而其父元素设置了dir属性时,将参考父元素的dir属性。
相比与CSS方法,HTML5标准更鼓励大家通过设置dir属性来达到排版效果(例如搜索引擎可能不会抓取css文件)。
4.accesskey属性
所有的html元素都可以设置accesskey属性。元素accesskey属性用来设置激活该元素或该元素获取焦点的快捷键。
可以设置多个,用空格间隔,且大小写敏感。
5.contenteditable属性
contenteditable是一个枚举类型的属性,可供选择的值有 空字符串、 true、false 或 inherit(默认)。
当为空字符串时,效果和true一致。
当一个元素的contenteditable状态为ture(contenteditable属性为空字符串,或为true,或为inherit且其父元素状态为true)时,意味着该元素是可编辑的。
否则,该元素不可编辑。