...必须没有交互式内容后代
根据HTML spec for interactive content:
交互式内容是专门用于用户交互的内容。
input
(如果type
属性未处于隐藏状态)
根据HTML spec for an input
element:
如果
type
属性未处于“隐藏”状态:交互式内容。
根据HTML spec for the input
element's readonly
attribute:
readonly
属性是一个布尔属性,用于控制用户是否可以编辑表单控件。指定后,该元素将不可变。
具有text
属性的input
readonly
被认为是交互式内容吗?
例如:
<a href="/foo">Foo</a>
<input type="text" readonly="readonly" name="foo" value="foo">
</a>
答案 0 :(得分:2)
是的,即使是只读输入也仍然是交互式组件,这是因为只读是临时的,并且输入元素将是完全交互式的,或者是因为您有意故意提供用户将要交互的信息将EG复制到剪贴板。
HTML中的交互性是指用户默认情况下是否能够对其进行任何操作以影响该站点的使用,因为A是交互式的,因为它会将它们定向到站点的另一部分。
任何交互式的(默认情况下)都不允许在其中包含其他交互式(默认情况下)的东西,因为如果没有Java脚本进行干预和整理交互来处理它,“可能”在浏览器之间会有不同的行为。
正如上面的Javascript所暗示的那样,例如div,span,ul,li等非交互式元素(默认情况下),例如div,span,ul,li,这些都可以由Javascript进行交互,因此Javascript代码负责确保他们的互动是正确的。
答案 1 :(得分:0)
在编写规范时,我认为具有input
属性的readonly
被认为是交互式内容。我认为input
属性为type
时,唯一不认为hidden
元素是交互式内容。
例如:
<a href="/foo">Foo</a>
<input type="hidden" readonly="readonly" name="foo" value="foo">
</a>