首页 > 代码库 > 兼容IE及chrome的浏览按钮

兼容IE及chrome的浏览按钮

浏览本地文件的浏览按钮,其实有一个专门的控件,即:<input type=file>file控件,但是file控件在不同的浏览器上显示的方式不同:

在IE上为:
在chrome为:

chrome中显示的file控件的样式不太美观,用下列方式既可保证在chrome中的美观,又可保证在IE的兼容性;

<html>
<style>
    .image_upload{float:left;margin-top:-20px;*margin-top:-20px;filter:alpha(opacity=0);-moz-opacity:0;opacity:0;}
</style>
<body>
<td>
    <div>
    <input type=text id=file_text name=file_text>
    <input type=button id=brower_btn name=brower_btn value=http://www.mamicode.com/'浏览'>>

代码解释:在外部看到的是自己定义的文本框和浏览按钮,其实真正器作用的是被style样式隐藏掉的file控件;
 1. 使file控件隐藏的是style中的opacity属性:
opacity属性设置元素的不透明级别;IE8以及更早的版本支持替代的属性filter,即opacity:0;和filter:alpha(opacity=0);作用效果是一样的,只不过为了兼容IE8以前的版本;
opacity语法:opacity:value|inherit 
value:规定不透明度,从0.0(完全透明)到1.0(完全不透明);
inherit :规定应该从父元素继承opacity的值;
2. float及margin-top属性是为了调整控件的位置,其中的margin-top和前加*的margin-top是为了兼容IE和chrome