在引导程序上输入带有btn-outline的文件

时间:2018-10-12 21:03:48

标签: html css input bootstrap-4

我有一个引导表单,其中有一个输入文件,但我希望它具有btn-outline-info的设计,所以我可以这样做:

 <div class="btn btn-outline-info btn-lg">
     <input id="signedAgreementFile" type="file" class="form-control-file">
  </div>

所以我有一个“选择文件”按钮,其旁边是蓝色的字符串:“无文件选择”,并且它们都在一个蓝色框中:

enter image description here

当我将鼠标悬停在它上面时,按钮变为蓝色,文本变为白色: enter image description here

直到这里一切顺利。但是,当我上传文件时,文件名将替换为“无文件选择”,但始终保持白色:

enter image description here

enter image description here

我不知道为什么以及如何纠正它。我什至没有在HTML中访问此文本。

2 个答案:

答案 0 :(得分:0)

text-info类添加到您的输入中,并添加额外的CSS以停止悬停时背景色的更改。

.btn:hover {
  background-color: transparent !important;
}
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">


 <div class="btn btn-outline-info btn-lg">
     <input id="signedAgreementFile" type="file" class="form-control-file text-info">
  </div>

答案 1 :(得分:0)

尝试一下?

<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">


<div class="btn btn-outline-info btn-lg">
  <input id="signedAgreementFile" type="file" class="form-control-file" onchange="this.style.color='#17a2be'">
</div>