zoukankan      html  css  js  c++  java
  • 关于 input[type="button"] , button

    搜了一下国内关于 input , button 文章 , 

    大多数内容如下 : http://lfx-cool.iteye.com/blog/427286

    好像没有那篇文章专门来介绍 input[type="button"] 和 button 的前世今生 ,

    也没有从规范,语义等方面讲解什么时候该用那个,什么时候不该用那个,

    当然这也不是本文的重点 , 

    喜欢用那个纯属个人习惯(没有规范和语义标准时) , 个人比较喜欢用 button ,

    因为 button 有 input[type="button"] 所有的功能且可以包含内容 ,

    个人觉得 button 的语义相对更明确一些 ,

    input 标签的 type 应该是没有默认值的 , w3c 上面没有做说明  http://www.w3school.com.cn/tags/tag_input.asp 

    如果 input 的 type 为空 , 默认会显示为 input 文本框 (只测试了部分浏览器) , 可以正常的输入 , 提交值 ,

    当然 jQuery(':text') 是获取不到的 ,

    button 标签的 type 是有默认值的 , 而且各浏览器默认值还不一样 ,

    w3c : 请始终为按钮规定 type 属性。Internet Explorer 的默认类型是 "button",而其他浏览器中(包括 W3C 规范)的默认值是 "submit"。

    http://www.w3school.com.cn/tags/tag_button.asp

    问题就出在这 , 项目中 , 不同的 开发者 有的给 button 指定了 type , 有的默认 , 最后不同的浏览器 就不一样了 , 然后就 bug 了 , 

    测试结果如下:

    非 ie , 是按照 w3c 标准 , button type 默认是 submit 的,

    ie , w3c 官方说 button type 默认是 button ,

    大家都知道 ie 目前有 ie 6,7,8,9 等 4 个 版本 ,

    ie8+ button type 默认是 submit 

    ie7   button type 默认是 button

    ie6   没有测试 , 我想应该和 ie7 一致的 !

    最后提醒 : 使用 button 时 请尽量给 button 指定默认 type !

    如有问题 , 请大家指出 , 谢谢 !



  • 相关阅读:
    kafka作业详解(HTML+Nginx+ngx_kafka_module+Kafka)
    Zookeeper知识点总结
    用CocoaPods做iOS程序的依赖管理
    iOS 正则表达式
    iOS 自定义UITabBarController
    iOS 同一UILabel改变数字的颜色
    iOS 自定义字体
    iOS 修改状态条颜色
    iOS 过滤掉HTML标签
    iOS UILabel自适应
  • 原文地址:https://www.cnblogs.com/twoer/p/2726483.html
Copyright © 2011-2022 走看看