<按钮>与<输入类型=“按钮”/>。 使用哪个?

在查看大多数网站(包括SO)时,大多数网站使用:

<input type="button" />

代替:

<button></button>
  • 两者之间的主要区别是什么?
  • 是否有正当理由使用一个而不是另一个?
  • 有没有合理的理由使用它们?
  • 使用<button>是否带有兼容性问题,看到它没有被广泛使用?

  • 以下是描述差异的页面(基本上可以将html放入<button></button>
  • 另一个页面描述了为什么人们避免<button></button> (提示:IE6)
  • 使用<button />时出现另一个IE问题:

    当我们谈论IE时,它有一些与按钮宽度有关的错误。 当您尝试添加样式时,它会神秘地添加额外的填充,这意味着您必须添加一个小小的黑客才能控制事物。


    就像旁注一样, <button>会隐式提交,如果你想在不提交的情况下使用表单中的按钮,会导致问题。 因此,使用<input type="button"> (或<button type="button"> )的另一个原因是

    编辑 - 更多细节

    没有类型, button隐含地接收submit类型。 无论表单中有多少个提交按钮或输入,其中任何一个显式或隐式键入为提交,单击时都会提交表单。

    有3种支持类型的按钮

    submit ||  "submits the form when clicked (default)"
    reset  ||  "resets the fields in the form when clicked"
    button ||  "clickable, but without any event handler until one is assigned"
    

    这篇文章似乎提供了一个相当不错的概述。

    来自页面:

    使用BUTTON元素创建的按钮就像使用INPUT元素创建的按钮一样,但它们提供了更丰富的呈现可能性:BUTTON元素可能包含内容。 例如,包含图像的BUTTON元素的功能类似于并可能类似于其类型设置为“图像”的INPUT元素,但BUTTON元素类型允许内容。

    按钮元素 - W3C

    链接地址: http://www.djcxy.com/p/3937.html

    上一篇: <button> vs. <input type="button" />. Which to use?

    下一篇: Remove disabled attribute using JQuery?