【问题标题】:Why should interactive element not be used within an anchor?为什么不应该在锚中使用交互元素?
【发布时间】:2015-10-26 14:33:08
【问题描述】:

只是出于好奇 - 我在上一个问题中因为试图将按钮放在锚定图像中而被钉牢。我查看了文档和其他问题,虽然每个人都说不应该这样做,但他们没有说明原因。

即使是http://www.w3.org/TR/html5/text-level-semantics.html#the-a-element 的文档也声明锚点内不应该有交互式内容,但没有告诉我原因。

有谁知道为什么这样做是一种可怕的做法?

【问题讨论】:

  • 请给出代码示例。

标签: html


【解决方案1】:

想象一下这种情况:

<a href="http://google.com">
  <select>
    <option>V1</option>
    <option>V2</option>
  </select>
</a>

现在,当您按下select 元素时,这些操作将生效(按顺序):

  1. 打开选择下拉菜单。
  2. click 事件冒泡到父级(在本例中为&lt;a&gt;)。
  3. &lt;a&gt; 元素跟随它的 href 值(此时您离开当前页面)。
  4. (经过人体延迟)您会选择所需的选项(但您已经离开网站

【讨论】:

  • 哦,我正试图找到解决方法,但我想重新设计我的代码会是一个更好的解决方案!谢谢!
猜你喜欢
  • 1970-01-01
  • 2018-04-13
  • 1970-01-01
  • 2020-09-17
  • 1970-01-01
  • 2020-01-01
  • 2020-04-27
  • 2017-09-08
  • 2011-05-24
相关资源
最近更新 更多