用input本身的屬性做的上傳按鈕,在不同的瀏覽器中長得都不一樣。如下圖的幾個:
但是對input設置的樣式只能加在輸入框上,對上傳按鈕根本不起作用。那么有一個超級簡單的方法,就是先用一個div制作你要的上傳按鈕的樣式,將實際的上傳按鈕input設置透明,并定位在設置樣式的div上面。
例子:
html部分:
<div ><div >點擊上傳</div><input type="file" ></div>
css部分:
<style>.div1 {position: relative;}.div2 {width: 100px;height: 36px;background: #2178fc;color: #fff;text-align: center;line-height: 36px;}.file_input {width: 200px;/*因為file-input在部分瀏覽器中會自帶一個輸入框,需要雙擊才可以點擊上傳,放大后將其定位到div外面就好啦*/height: 36px;position: absolute;left: -100px;top: 0;z-index:1;-moz-opacity: 0;-ms-opacity: 0;-webkit-opacity: 0;opacity: 0; /*css屬性——opcity不透明度,取值0-1*/filter: alpha(opacity=0); /*兼容IE8及以下--filter屬性是IE特有的,它還有很多其它濾鏡效果,而filter: alpha(opacity=0); 兼容IE8及以下的IE瀏覽器(如果你的電腦IE是8以下的版本,使用某些效果是可能會有一個允許ActiveX的提示,注意點一下就ok啦)*/cursor: pointer;}</style>
就是這樣的效果啦:
新聞熱點
疑難解答