首页 > 代码库 > 原生HTML5 input type=file按钮UI自定义
原生HTML5 input type=file按钮UI自定义
原生<input type="file" name="file" />长得太丑
提升一下颜值
实现方案一、设置input[type=file]透明度为0,使用绝对定位遮罩在自定义的按钮标签层的之上.
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title>原生HTML5 input type=file按钮UI自定义</title> 6 <style> 7 .file_upload_box { 8 display: inline-block; 9 width: 200px; 10 height: 60px; 11 position: relative; 12 overflow: hidden; 13 } 14 .file_upload_box input[type=file] { 15 position: absolute; 16 left: 0; 17 top: 0; 18 width: 100%; 19 line-height: 60px; 20 opacity: 0; 21 cursor: pointer; 22 } 23 .file_upload_box a { 24 display: inline-block; 25 width: 100%; 26 line-height: 45px; 27 text-align: center; 28 font-family: "Microsoft yahei"; 29 background-color: #f60; 30 color: #FFF; 31 font-weight: 700; 32 text-decoration: none; 33 } 34 </style> 35 </head> 36 <body> 37 <div class="file_upload_box"> 38 <input type="file" name="file" /> 39 <a href="#none">上传文件</a> 40 </div> 41 </body> 42 </html>
推荐实现方案二、利用label的for属性(for 属性规定 label 绑定到哪个表单元素)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title>原生HTML5 input type=file按钮UI自定义</title> 6 <style> 7 .ui_button { 8 display: inline-block; 9 line-height: 45px; 10 padding: 0 70px; 11 color: #FFFFFF; 12 font-family: "微软雅黑"; 13 font-weight: 700; 14 cursor: pointer; 15 } 16 .ui_button_primary { 17 background-color: #FF6600; 18 } 19 label.ui_button:hover { 20 background-color: #d46216; 21 } 22 </style> 23 </head> 24 <body> 25 <label class="ui_button ui_button_primary" for="xFile">上传文件</label> 26 <form><input type="file" id="xFile" style="position:absolute;clip:rect(0 0 0 0);"/></form> 27 </body> 28 </html>
原生HTML5 input type=file按钮UI自定义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。