是否存在将div样式设置为按钮的有效用例?

时间:2019-10-27 12:55:40

标签: css twitter-bootstrap bootstrap-4

标题说明了一切,是否有实际的用例,您应该将<div><span>等样式设置为按钮,而不是仅仅具有按钮?

Bootstrap仍然具有.btn类-是向后兼容(到难以设置样式按钮时)还是我错过了一些用例,这意味着我们仍然需要它?

编辑以使其清晰

感谢您的回答和评论,但我可能不清楚。

我正在寻找能够提供有效理由的<div><span>等比<button>等,偶尔的<a>样式应类似于一个按钮(由于@James Grimshaw指出了它,<a>元素看起来像一个按钮才有效)。

如果不是,为什么引导程序不使用a.btn-block, button.btn-block作为选择器来实施正确的语义,并且还节省了开发人员必须在元素的类列表中编写btn的麻烦?

1 个答案:

答案 0 :(得分:2)

Bootstrap .btn类旨在与abutton元素一起使用。例如:

<a href="" class="btn btn-primary">A button</a>

使用div可能存在用例,某些网站会这样做,因为您可以使用JavaScript onclick=""处理程序来检测点击并使其像常规{{1 }}或button元素。但是,绝对不建议这样做,出于以下原因,您应该坚持使用标准按钮或链接:

  1. 如果出于任何原因禁用了JavaScript :常规的abutton元素具有默认的浏览器行为,并且不需要JavaScript。

  2. 可访问性:标准按钮或链接元素会自动识别为具有关联的操作,而adiv元素则不会点击操作。

  3. 功能:对于Bootstrap,span类还针对.btnbutton特定状态,例如adisabled:focus,这意味着:visited类的所有方面甚至都不能完全与.btndiv一起使用。