网站首页 > 技术文章 正文
在前端工作中用input做一个按钮,文本输入框禁之类东西,由于浏览器的兼容性问题,让前端人员头疼不已,那如何解决,本文章以下部分介绍:
input标签在各浏览器里默认高度和宽度:
当input标签在type为text时,在Firefox和Safari中的默认高度为22像素(包括上下边框)宽度为146像素(包括左右边框),而在IE中的默认高度为24像素,而宽度却和Firefox和Safari是一致的,也是146像素。
当 input标签在type为submit时,在Firefox中的高度为23像素(包括阴影),宽度为75像素。在Safari中高度为21像素,宽度为73像素,在IE中高度为为25像素、宽度为73像素。
以上问题我们应该如何来处理呢?可以拿淘宝首页的搜索框来说下:
在不同浏览器中都有着良好表现的搜索框,它设置了高度和行高都为18px,然后设置了padding属性。
然后去把高度和行高去掉了,通过调节padding属性一样可以达到效果,这样既减少了CSS代码又实现了效果,两全其美啊。
通过上面的例子,我总结了下关于input标签处理兼容问题的方法:
1、不要给属性为text的input标签设置高度,这样无法让IE浏览器下输入框中的文字垂直居中显示。尽管你后来想要通过设置padding属性来让文字居中,你会发现根本没法让它在Firefox和IE中取得一致的效果。正确的做法是直接给input标签设置padding属性,通过内边距属性来调节input标签的高度,而且这时IE中的文字也是居中显示的。
2、input标签不会继承父元素的字体样式和大小,需要直接给input标签声明font-family和font-size属性。
3、给属性为text的input标签设置合适的width属性和padding属性,确保其中的文字在合适的范围内出现。尤其是使用了背景图片后,要让文字框的大小和背景图片的大小相当,这样看上去更加美观。
最后总结一下, 上面只是我对input搜索框的一些看法,至于input与文字混排对其的问题跟这个类似,只不过要增加一个绝对居中vertical-align:middle的属性,就不多讲了。最后只想说:细节往往能体现你的技术含量,细节也有可能导致一个项目的成败,对于这些小问题,我们不能忽视之。
切图网(qietu.com)是一家专门从事web前端开发的公司,专注we前端开发,关注用户体验,欢迎订阅微信公众号:qietuwang
- 上一篇: 浏览器不兼容的问题和通用解决方案
- 下一篇: 使用黑科技实现前端按钮权限控制,太优雅了
猜你喜欢
- 2025-01-14 浏览器不兼容的问题和通用解决方案
- 2025-01-14 浏览器的兼容性问题如何解决
- 2025-01-14 8个移动端适配技巧,兼容性问题减少90%
你 发表评论:
欢迎- 577℃几个Oracle空值处理函数 oracle处理null值的函数
- 573℃Oracle分析函数之Lag和Lead()使用
- 559℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 557℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 554℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 543℃【数据统计分析】详解Oracle分组函数之CUBE
- 531℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 527℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)