【问题标题】:Not to use div for button functionality [closed]不要将 div 用于按钮功能[关闭]
【发布时间】:2012-08-05 02:12:57
【问题描述】:

我现在在移动设备上,但我找不到我最近阅读的建议不要使用 div 来实现按钮功能的帖子。也许哲学已经得到了足够的认同,这并不重要。

似乎 div 比 <button> 类型更容易设置样式(很遗憾,我无法参考答案中的建议)。即使这不是真的,使用 div 作为按钮有什么缺点?

谢谢!

【问题讨论】:

  • this 可能是您正在寻找的职位吗?另外,我个人会使用<button> 而不是<div>,因为 div 将显示没有被点击的能力(没有 CSS)。
  • 您好,谢谢!是的,我认为这些都是很好的理由。那和<input type=button/>... 有什么区别,或者这只是 html/xhtml 的区别?再次感谢。
  • @thomas-在一个表单中使用多个<button type="submit">在IE中有一个烦人的错误,所以最好使用<input type="button" />;如果是这样的话。您可以查看this pagethis page 了解更多信息。

标签: html css


【解决方案1】:

<div> 不支持 tabindex 属性。所以键盘用户处于劣势。

此外,网页优化器(例如移动设备上的 Google)不太可能去除 <input>

【讨论】:

  • 另外 :) 一个很好的理由。永远怀疑其他情况是愚蠢的。谢谢。
  • tabindex 支持 HTML5 中的 div
【解决方案2】:

<div> 几乎没有语义意义。它只是一个通用容器。

<a><button><input type=button> 都让事情变得更加清晰,它应该做什么等等。

这有几个优点:

  • 可访问性:屏幕阅读器或任何知道如何处理 <a> 的机会远大于它设法弄清楚您的 <div> 实际上是一种与 Web 服务器或随便。

  • 用户界面优势:如果用户习惯于在可点击元素或其他任何东西之间切换,如果您使用的元素清楚地表明用户可以点击,他们的浏览器更有可能做正确的事情/按/随便。如果您使用<div>,那么浏览器可能不会突出显示它,或者会按照通常的方式告诉用户他们可以点击它。

  • 您可以免费获得可点击性,而不必附加 onclick 或其他任何东西。使用<div>,没有JavaScript 可能无法使其工作。对于其他元素,至少还有希望(尤其是 <a>)。

我可能遗漏了很多我从未想过的其他事情,也许以上不是最好的例子,但我怀疑你明白了。

【讨论】:

  • 此外,
猜你喜欢
  • 2022-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-19
  • 1970-01-01
  • 1970-01-01
  • 2015-08-29
  • 2015-08-28
相关资源
最近更新 更多