如果你曾經(jīng)試過,你就會知道,用純CSS樣式加HTML實現(xiàn)統(tǒng)一的上傳文件按鈕可能會很麻煩??纯聪旅娴牟煌瑸g覽器的截圖。很明顯的,他們長得很不一樣。

  我們的目標(biāo)是創(chuàng)造一個簡潔,用純CSS實現(xiàn)的,在所有瀏覽器里的樣子和布局是一樣的上傳文件按鈕。我們可以這樣: 

  步驟1.創(chuàng)建一個簡單的HTML標(biāo)記 

<div class="fileUpload btn btn-primary">
    <span>Upload</span>
    <input type="file" class="upload" />
</div>

  第2步:CSS: 有點棘手了

.fileUpload {
	position: relative;
	overflow: hidden;
	margin: 10px;
}

.fileUpload input.upload {	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	padding: 0;
	font-size: 20px;
	cursor: pointer;
	opacity: 0;
	filter: alpha(opacity=0);
}

  為簡單起見,我使用應(yīng)用了BootstrapCSS樣式的按鈕  (div.file-upload)。 

  演示: 

  上傳按鈕,顯示選中的文件 

  不幸的是純CSS的做不到這一點。但是,如果你真的想顯示所選文件,下面的JavaScript代碼片段可以幫助你。 

  JavaScript: 

document.getElementById("uploadBtn").onchange = function () {
    document.getElementById("uploadFile").value = this.value;
};

  DOM:

<input id="uploadFile" placeholder="Choose File" disabled="disabled" />
<div class="fileUpload btn btn-primary">
    <span>Upload</span>
    <input id="uploadBtn" type="file" class="upload" />
</div> 

  演示:

  原文地址: geniuscarrier.com

  哈爾濱品用軟件有限公司致力于為哈爾濱的中小企業(yè)制作大氣、美觀的優(yōu)秀網(wǎng)站,并且能夠搭建符合百度排名規(guī)范的網(wǎng)站基底,使您的網(wǎng)站無需額外費用,即可穩(wěn)步提升排名至首頁。歡迎體驗最佳的哈爾濱網(wǎng)站建設(shè)。