css select样式兼容

之前写过一篇CSS select样式优化的文章,不知道使用的人有多少,但我觉得就select本身来说,设计弄得再美观,还不如实实在在的用浏览器默认的样式稍加调整,给用户最自然的使用,同时也释放了前端人员的困扰和浏览器的性能压力等。

来看看各大浏览器中select的css属性支持程度

点击查看原图

由于ie6不支持height、lineheight和padding,所以我们需要对他特殊处理。

IE7只支持height属性,Safari支持line-height属性。

假设一个select的设计稿是28像素,可以得到下面比较好的兼容代码:(采用降级的思想,对ie6和ie7只用默认高度22px,其他实现)

select{height: 28px; line-height: auto; vertical-align: middle; height: 22px\9; padding: 3px 0\9; box-sizing:content-box; font-size: 13px;}
:root select{padding: 0; height: 28px;}

演示:

参考:
http://ued.ctrip.com/blog/?p=3229
http://blog.baiwand.com/?post=163


关注我

我的微信公众号:前端开发博客,在后台回复以下关键字可以获取资源。

  • 回复「小抄」,领取Vue、JavaScript 和 WebComponent 小抄 PDF
  • 回复「Vue脑图」获取 Vue 相关脑图
  • 回复「思维图」获取 JavaScript 相关思维图
  • 回复「简历」获取简历制作建议
  • 回复「简历模板」获取精选的简历模板
  • 回复「加群」进入500人前端精英群
  • 回复「电子书」下载我整理的大量前端资源,含面试、Vue实战项目、CSS和JavaScript电子书等。
  • 回复「知识点」下载高清JavaScript知识点图谱

每日分享有用的前端开发知识,加我微信:caibaojian89 交流