“只读”输入是否被视为交互式内容?

时间:2020-08-09 22:27:50

标签: html

上下文

根据HTML spec for an a element

...必须没有​​交互式内容后代

根据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>

2 个答案:

答案 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>