将 <button> 放在 <h2> 中在语义上是否有效?

新手上路,请多包涵

我有一个标头元素,单击时需要触发一些 JavaScript。我知道我应该只在页面实际更改时使用 <a> 标签,而 <button> 是 JS 函数的首选,但出于某种原因,这样做感觉不对

<h2><button onclick="myFunction();">My Title</button></h2>

我无法解释为什么这在语义上感觉不正确。只有我吗?

原文由 sanjaypoyzer 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 299
2 个回答

您的按钮的实际文本是什么?单独作为标题合适吗?

按钮的文本是点击时显示的内容的标题

那我觉得你的状态很好。不过,我会提出一个可能会让你感觉更好的小建议:

 <h2><a href="#content">My Heading</a></h2>
<element id="content"> [your content] </element>

然后在外部 javascript 文件中附加一个 onclick 处理程序。如果您稍后将其删除,该链接仍然有效。

原文由 Wesley Murch 发布,翻译遵循 CC BY-SA 3.0 许可协议

根据 W3C Validator ,这样做没有问题。

您可以尝试验证此代码:

 <!DOCTYPE html>
<html>
<head>
   <title>I AM YOUR DOCUMENT TITLE REPLACE ME</title>
</head>
<body>

<h2><button onclick="myFunction();">My Title</button></h2>

</body>
</html>

但是,我建议避免内联样式。

原文由 Oriol 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题