input file选择文件标签美化

html中选择文件的标签 input[type=file],默认样子比较丑,并且在各个浏览器上显示样子还不一样。所以需要手动美化。

思路一:
input file上传按钮的美化思路是,先把之前的按钮透明度opacity设置为0,然后,外层用div包裹,就实现了美化功能。

关键代码:

dom结构:

<a href="javascript:;" class="a-upload">
    <input type="file" name="" id="file1">点击这里上传文件
</a>
<a href="javascript:;" class="file">选择文件
    <input type="file" name="" id="file2">
</a>

css:

.file input {
  position: absolute;
  right: 0;
  top: 0;
  opacity: 0;/*关键点*/
  filter: alpha(opacity=0);/*兼容ie*/
  font-size: 100px;/* 增大不同浏览器的可点击区域 */
  cursor: pointer;
}

修改后的效果图:

input-file.png

代码栗子

思路二:
input file上传按钮给隐藏起来,通过其他标签(div,a等等)来触发input file的click事件,这样就可以任意美化了。此例做了ie8兼容,就不贴代码了。点此去codepen里看。效果图如下:

file-upload.png

参考:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原文链接:Styling & Customizing File Inputs the Smart Way(作者:O...
    QIQIBIBI阅读 23,190评论 4 23
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,908评论 18 139
  • 在某公众号里看见一句话,有些牛人的自尊心是不需要呵护的。文章是有前提背景的,即在如今的职场中,高管与普通员工的差别...
    西风5阅读 430评论 0 0
  • 其实在我两年前接触到这个行业的时候,我是想赚钱的,但是现在我得到了比金钱更重要的东西,两年前的我只会上网,现在的我...
    小鹏友圈阅读 182评论 0 0
  • 最近在拍校园微电影,因为本身自己是校园DV社的,大学三年都在这个社团里。但发现当自己开始尝试拍摄剪辑时发现,我...
    DYWDaisy阅读 208评论 1 3