<input type="file">如何实现自定义样式

利用样式覆盖来实现效果:先看下原本和改变后的样式

 1 <!doctype html>
 2 <html>
 3     <head>
 4         <title>file自定义上传样式</title>
 5         <style>
 6                 *
 7                 {
 8                     margin: 0;
 9                     padding: 0;
10                 }
11                 /*蓝色按钮,绝对定位*/
12                 .btn
13                 {
14                     position: absolute;
15                     width: 100px;
16                     height: 40px;
17                     background-color: #2db7f5;
18                     color: #fff;
19                     text-align: center;
20                     font-weight: 900;
21                     border-radius: 4px;
22                 }
23                 /*自定义上传,位置大小都和btn完全一样,而且完全透明*/
24                 .file-upload
25                 {
26                     position: absolute;
27                     display: block;
28                     width: 100px;
29                     height: 40px;
30                     opacity: 0;
31                     cursor: pointer;
32                 }
33                 .file-name
34                 {
35                     position: absolute;
36                     top:40px;
37                     width: 100%;
38                     height: 30px;
39                 }
40             </style>
41     </head>
42     <body>
43         <button class="btn">上传文件</button>
44         <input type="file" class="file-upload" />
45         <div class="file-name"></div>
46     </body>
47 </html>
48 <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
49 <script>
50     $(document).ready(function()
51     {
52         $(".file-upload").change(function()
53         {
54             var arrs=$(this).val().split(‘\\‘);
55             var filename=arrs[arrs.length-1];
56             $(".file-name").html(filename);
57         });
58     });
59 </script>

原文地址:https://www.cnblogs.com/yuzhongyu/p/10523044.html

时间: 2024-11-09 15:21:19

<input type="file">如何实现自定义样式的相关文章

原生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 typ

使用VUE脚手架+HTML5 input type = file 上传视频

上传视频思路 HTML:1. 在这里首先会用到html5标签 video 音频/视频2. input type = file CSS 给一些样式 *******JS js实现思路:1.通过原生的方法获取上传文件(input)标签 并且交给一个变量.2.通过原生的方法获取音频标签并且交给一个变量.3.通过input标签得到自身的的files[0] :而我们对input.files[0]数据需要处理,于是写一个方法.并且把input.files[0]传进去. 举个栗子: 4.处理数据的具体步骤:在g

自定义input[type=&quot;file&quot;]的样式

input[type="file"]的样式在各个浏览器中的表现不尽相同: 1. chrome: 2. firefox: 3. opera: 4. ie: 5. edge: 另外,当我们规定 input[type="file"] 的高度,并把它的行高设置成与其高度相等后,chrome中难看的样式出现了: “未选择任何文件”这一行并没有竖直居中. 似乎在 firefox 中好看一些,嗯,我比较喜欢用 firefox.但是这些浏览器中的表现不一致,我们必须做兼容处理. 思

[预]input type=file 样式自定义

input type=file 样式自定义:http://www.haorooms.com/post/css_input_uploadmh input type=file 上传类型控制:http://www.haorooms.com/post/input_file_leixing

html中,文件上传时使用的&lt;input type=&quot;file&quot;&gt;的样式自定义

Web页面中,在需要上传文件时基本都会用到<input type="file">元素,它的默认样式: chrome下: IE下: 不管是上面哪种,样式都比较简单,和很多网页的风格都不太协调. 根据用户的需求,设计风格,改变其显示样式的场合就比较多了. 如果,要像下面一样做一个bootstrap风格的上传按钮该如何实现. 搭建上传按钮所需的基本元素 <span class=""> <span>上传</span> <

jquery-fileupload IE8IE9无法上传图片的BUG及如何给input[type=file]自定义样式

先说IE9,点击上传后,浏览器会提示下载内容. 原因:IE9及以下上传文件的响应头的contentType 如果是json,浏览器会以为是文件下载. 处理方法:找后台GG,把contentType改为text/html. 再修改done方法,获得地址 done: function(e, data){ var result = data.result[0].body ? data.result[0].body.innerHTML : data.result; result = JSON.parse

&lt;input type=&quot;file&quot;&gt;的样式自定义

<!DOCTYPE html> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <link rel="stylesheet" href="bootstrap/bootstrap.css"> <l

input type=file 按钮的样式怎么改变?【转】

修改前样式: 这个貌似是不能直接改的,不过可以模拟: <input type=file name=message_img style="display: none;" onchange="ye.value=value" /> <input name=ye value="None file" /> <input type=button value="Select file" onclick=mess

css input[type=file] 样式美化,input上传按钮美化

我们在做input文本上传的时候,html自带的上传按钮比较丑,如何对其进行美化呢?同理:input checkbox美化,input radio美化是一个道理的,后面文章会总结. 思路: input file上传按钮的美化思路是,先把之前的按钮透明度opacity设置为0,然后,外层用div包裹,就实现了美化功能. 代码如下: DOM结构: <a href="javascript:;" class="a-upload"> <input type=