在项目中有遇到这类问题,搜索了一下解决方式,采用链接:https://segmentfault.com/q/1010000000190931 里各位楼主的答案,摘抄如下:

例子如下:

HTML:

<button class="btn">Button</button>
<input type="button" class="btn" value="Input Button">
<a href="#" class="btn">A Button</a

CSS:

.btn {
font: 14px/21px Arial;
border: 1px solid #DDD;
padding: 5px 10px;
background: #FFF;
color: blue;
text-decoration: none;
}
a {
display: inline-block;
}

方法一:

①Firefox浏览器会默认设置input[type="button"]的行高为normal。quot: http://www.cssnewbie.com/input-button-line-height-bug/#.UXDOLLVTCEw,如下

button, input[type="reset"], input[type="button"], input[type="submit"] {
line-height:normal !important;
}

把行高统一设置为normal,可以解决一部分问题。

.btn{
line-height:normal;
}

②Firefox在私有属性里面额外设置了边框和留白,去掉即可。

button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner { border:none; padding:; }

现在Firefox也表现一致了。

③最后,再针对ie7以下的button和input[type=button]随着字变宽的问题做Hack。

.btn {
*overflow:visible ;
}

方法二:

注意:

这个主要是ff和opera下line-height对input['button'],button不起作用,还可以用padding来做,先把line-height置为normal,

button, input[type="button"], input[type="submit"] {
line-height:normal !important;
} input.button, a.button, button {
font: bold 12px Arial, Helvetica, sans-serif;
padding: 5px 8px;
}

补充一句,chrome和firefox会认为type为button的按钮为border-box盒模型,当然IE也是,但是a却以正常的content box盒模型渲染,所以,为了渲染一致,你需要将button声明为content-box。火狐按钮button的宽度,padding置为0是不顶用的,需要使用私有属性,

.btn input, .btn button { -moz-padding-start:npx; -moz-padding-end:npx; }

另外,IE9的button宽度在字数超过八九个汉字的时候带有小数点,这个得测测,一般按钮宽度不会超过这么多的字数。 详见此贴:http://bbs.blueidea.com/forum.php?mod=viewthread&tid=3058884

最新文章

  1. android:layout_gravity 和 android:gravity 的区别
  2. linux端口
  3. Redis源码分析系列
  4. 有关linux下redis overcommit_memory的问题(转)
  5. Android 怎样在linux kernel 中读写文件
  6. CodeForces 448
  7. db2数据导出导入
  8. 下一个ajax异步请求被挂起问题
  9. 4k/1k边界问题
  10. linux 程序无缘无故推出 没有core文件 broken pipe Resource temporarily unavailable
  11. fasterxml.jackson 将对象转换为json报错处理
  12. AJAX模板
  13. 0行代码实现任意形状图片展示--android-anyshape
  14. Easyui1.3.4+IIS6.0+IE8兼容问题解决
  15. flink 入门
  16. Knockout: 让ViewModel从htm中剥离出去。
  17. php header运用细节
  18. bat 调用exe
  19. 使用c++实现一个FTP客户端(一)
  20. 在Jquery validation里验证通过后,自定义提交不同的action路径,适合一个窗口既可以作为添加对话框也可以作为编辑对话框

热门文章

  1. 在SQL SERVER中查找用分隔符分隔的数据
  2. bootstrap 混合标签
  3. 相机标定 matlab opencv ROS三种方法标定步骤(1)
  4. 【1】JavaScript编程全解笔记(一)
  5. 关于sbutils中的sblaunch插件的疑惑
  6. hdu 2087 剪花布条 kmp模板题
  7. easyui datagrid分页
  8. jetty启动https
  9. PHP 苹果消息推送
  10. LeetCode #3. Longest Substring Without Repeating Characters C#