User Agents如何处理tabindex和z-index的非整数值?

CJ *_*nis 1 html css z-index tabindex

我有一些代码,我支持已tabindex="1.1",tabindex="1.2"等我想改变的值是整数.这会改善浏览器行为吗?

W3C说:

tabindex = 数字 [CN]

此属性指定当前文档的Tab键顺序中当前元素的位置.此值必须是0到32767之间的数字.用户代理应忽略前导零.

它没有说明应该如何处理非整数值.

这篇参考文献说:

一个号码.数字必须以连字符或数字开头,并且可以包含小数点.

因此,如果使用小数点,标记是有效的,但它是否有意义?

我的问题是用户代理应该尊重小数点和后面的数字还是只使用整数部分?即,上述两个值应该被视为相同还是不同?为什么你会赞成使用这些值tabindex="11",tabindex="12"等等?z-index也是如此.

Dav*_*rey 6

z-index带小数位的A 将被忽略,因为它无效:

"价值:汽车| <整数> | 继承" - CSS 2.1规范.

您可以使用CSS Validator自行检查.

tabindex通过检查HTML5 Validator,您可以看到属性中的小数位也无效

"元素div上属性tabindex的值为1.2:预期数字但是看到了.代替"

如果你检查规格,它说:

"tabindex属性,如果指定,必须具有一个有效整数值." - HTML5.1 Spec

HTML5中的错误处理与CSS的工作方式不同.在这种情况下,由于值必须是整数,因此它遵循解析整数规则.相关部分是"当调用时,必须按照给定的顺序执行步骤,在返回值的第一步中止."和"如果由位置指示的字符不是ASCII数字,则返回错误."小数位不是ASCII数字,因此将返回错误,小数位前的数字将用作整数.在这种情况下每个1 tab index.