当前位置: 首页 > news >正文

修改input type=file 默认样式

原理

先用a标签做一个按钮,定好宽度, 然后将input放在a标签里面,通过定位,将input相对于a的左上角对齐, 最后将input的透明度设为0即可。

代码

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>文件上传按钮修改样式</title>
  <style>
    .file {
      position: relative;
      display: inline-block;
      border: 1px solid rgba(154, 154, 154, 1);
      border-radius: 4px;
      width: 60px;
      height: 28px;
      color: #303133;
      line-height: 28px;
      text-align: center;
      text-decoration: none;
      text-indent: 0;
      font-size: 14px;
    }

    .file input {
      position: absolute;
      width: 60px;
      top: 0;
      left: 0;
      bottom: 0;
      opacity: 0;
      cursor: pointer;
    }

    .file:hover {
      background: linear-gradient(to right, #FFAD4A 0, #FF9362 50%);
      background: -webkit-linear-gradient(to right, #FFAD4A 0, #FF9362 50%);
      border-color: #FFAD4A;
      color: #fff !important;
      text-decoration: none;
    }
  </style>
</head>

<body>
  <a href="javascript:;" class="file">选择文件<input type="file" ></a>
</body>
</html>
复制代码

问题

绝对定位,要设置宽度

相关文章:

  • 3分钟读懂C语言函数:这些例子一看就懂!|一键删除账户教学
  • ubuntu壁纸1080p
  • [转]bootstrap table本地数据使用方法
  • vue系列自定义指令(三)
  • 源码安装Nginx以及用systemctl管理
  • 以实例说明微服务拆分(以SpringCloud+Gradle)
  • ELK
  • python 小数据池,is and ==,decode ,encode
  • 牛客网NOIP赛前集训营-普及组(第一场)
  • Centos 7 超简单yum源安装MongoDB
  • 这可能是把ZooKeeper概念讲的最清楚的一篇文章
  • 零基础怎样快速学习web前端?
  • 使用SecureCRT的SFTP在WINDOWS与LINUX之间传输文件
  • Elastic+logstash+filebeat做Nginx日志分析
  • Python全栈 Web(JavaScript DOM树、DOM对象、BOM对象)
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • 08.Android之View事件问题
  • cookie和session
  • CSS实用技巧干货
  • Django 博客开发教程 8 - 博客文章详情页
  • echarts的各种常用效果展示
  • go append函数以及写入
  • HTTP请求重发
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • JSONP原理
  • Koa2 之文件上传下载
  • mongodb--安装和初步使用教程
  • sublime配置文件
  • Travix是如何部署应用程序到Kubernetes上的
  • 回顾 Swift 多平台移植进度 #2
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 前端路由实现-history
  • 人脸识别最新开发经验demo
  • 微信开放平台全网发布【失败】的几点排查方法
  • 写代码的正确姿势
  • RDS-Mysql 物理备份恢复到本地数据库上
  • scrapy中间件源码分析及常用中间件大全
  • ​ssh免密码登录设置及问题总结
  • ​决定德拉瓦州地区版图的关键历史事件
  • #if和#ifdef区别
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (1)STL算法之遍历容器
  • (12)Hive调优——count distinct去重优化
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (一)Thymeleaf用法——Thymeleaf简介
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • (转)setTimeout 和 setInterval 的区别
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • .gitignore
  • .naturalWidth 和naturalHeight属性,
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • ??myeclipse+tomcat
  • @selector(..)警告提示