1. 程式人生 > >如何修改input[type="file"]的預設樣式

如何修改input[type="file"]的預設樣式

轉載:https://blog.csdn.net/dear_mr/article/details/56040549

1.首先我們先來看一下input[type=”file”]預設的樣子
這裡寫圖片描述

<input type="file" />
  • 1

2.改變input[type=”file”]預設的樣子
這裡寫圖片描述

這裡我設定了 opacity: 0;使得 input變得不可見了

.change{
    opacity: 0;
}

<input class="change" type="file" multiple="multiple" />被隱藏
  • 1
  • 2
  • 3
  • 4
  • 5

下面就開始做一個模仿的選擇檔案的“按鈕”了
這裡寫圖片描述

.upload{
    padding: 4px 10px;
    height: 20px;
    line-height: 20px;
    border: 1px solid #999;
    text-decoration: none;
    color: #666;
}
.change{
    opacity: 0;
}
<a href="javascript:;" class="upload">選擇檔案
    <input class="change" type="file" multiple="multiple" />被隱藏
</a>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

之後要做的就是將這兩個元素“重合”在一起了,所以當然要用上position這個屬性
這裡寫圖片描述

.upload{
    padding: 4px 10px;
    height: 20px;
    line-height: 20px;
    position: relative;
    border: 1px solid #999;
    text-decoration: none;
    color: #666;
}
.change{
    position: absolute;
    overflow: hidden;
    right: 0;
    top: 0;
    opacity: 0;
}

<a href="javascript:;" class="upload">選擇檔案
    <input class="change" type="file" multiple="multiple" />
</a>