您的位置:首页 > 其它

解决input file,实现点击文字上传文件

2014-05-08 20:55 246 查看
需求: 点击文字“资料提交”,实现文件上传

难点: input本身的file样式,文字无法修改

点击文字触发input的click事件是不行的

解决: 将input和文字通过定位,使得input和文字重合

将input设置为透明,若input在文字前还的加上z-index:100,使得input在文字之上,这样当点击文字,也就是他们重合区域就可文件上传了

input在文字之后,无须设置z-index

<span>

<a>

<img src="../edit.gif" id="edit">

<span>资料提交</span>

<input style="cursor:pointer; height:20px; width:68px;margin-left:-78px; filter:alpha(opacity=0); opacity:0; onchange="submit(.....)"/>

</a>

</span>

注意:此种未通过绝对定位的input,虽然ie9-ie11都可以成功双传,但是ie8却不行,通过F12Dom元素查看,input也和文字重合了,如果再加上z-index:100,仍然不 能上传。。。

绝对定位后,为了适应各个浏览器,使两者始终完美重合,建议使用em或者百分比进行绝对定位

<span>

<a>

<img src="../edit.gif" id="edit">

<span>资料提交</span>

</a>

<input style="
position:absolute; right:7.5%; cursor:pointer; height:20px; width:68px;filter:alpha(opacity=0); opacity:0; onchange="submit(.....)"/>

</span>

index在文字之前,需加上z-index:100; 使得input处于文字上层

<span>

<input style="position: absolute; left: 47em; cursor:pointer; height: 20px; width: 68px; filter: alpha(opacity=0); opacity: 0; onchange="submit(.....)""/>

<a>

<img src="../edit.gif" id="edit">

<span>资料提交</span>

</a>

</span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐