注意你的button标签type的默认属性值

HTML <button>是我比较喜欢使用的标签,经常用来取代 <input>标签的type属性值(button,submit,reset)。在我的概念中我觉的<button>是比较有语义性的标签,用它做表单按钮是比较合适的选择。

<button>比<input>更厉害的地方就在于它可以直接包含内容。它的值并不是写在value属性里,而是包含在标签中。

还有在样式美化方面比<input>更具有灵活性。

好像有点偏离主题,我们今天说的是button标签type的默认值

HTML <button> type Attribute

Value Description
submit The button is a submit button (this is default for all browsers, except Internet Explorer)
button The button is a clickable button (this is default for Internet Explorer)

兼容模式或者是怪癖模式(Quirks mode)标准模式(Standards mode)

引用来自:http://www.w3help.org/zh-cn/causes/HF9015

  • IE6 IE7 IE8(Q) 中,BUTTON 元素 type 属性的缺省值为 button,不是规范中规定的 submit,这导致未设定 type 属性的 BUTTON 元素此时是一个普通按钮,默认不具备提交功能;
  • IE8(S) Firefox Chrome Safari Opera 中,BUTTON 元素 type 属性的缺省值为 submit,与规范描述相符,所以未设定 type 属性的 BUTTON 元素此时是一个提交按钮,点击该按钮会触发其所在表单的提交事件。

所以,在使用 BUTTON 标签时应明确的为其设定 type 属性,可以避免因为浏览器默认属性值不同导致按钮类型出现差异。

站点统计