所有浏览器的文件输入按钮都可以吗?

是否可以使用uploadify允许任何用户从文件对话框中选择文件并将其插入到表单的文件输入元素中? 我只需要使用uploadify作为将“上传按钮”设置为图像的方式。

我在 这里和这里尝试了其他方法。 所有浏览器都不兼容。

我还可以使用/做什么来将文件输入元素作为图像?

我希望我的文件输入按钮在所有浏览器中看起来都一致。

我不记得技术的来源,但这似乎是跨浏览器。 测试中:

  • 谷歌Chrome 9
  • FireFox 3.6
  • Internet Explorer 6-9
  • 歌剧10
  • 适用于Windows的Safari

这是完整的代码:

HTML:


CSS:


 div { position:relative; width: 100px; height: 30px; overflow:hidden; } div button { position: absolute; width: 100%; height: 100%; } div input { font: 500px monospace; /* make the input's button HUGE */ opacity:0; /* this will make it transparent */ filter: alpha(opacity=0); /* transparency for Internet Explorer */ position: absolute; /* making it absolute with z-index:1 will place it on top of the button */ z-index: 1; top:0; right:0; padding:0; margin: 0; } 

我们的想法是使透明,并将其置于一些可样式化的内容之上(在本例中为 )。 当最终用户单击该按钮时,她将实际单击

使用“label”标签和“for”属性的简单方法。 像这样http://jsfiddle.net/Txrs6/但在这种情况下我们没有看到所选的文件。 码

 `  

与js http://jsfiddle.net/PZ5Ep/的另一种方式

在这种情况下,你最好的选择是使用flash上​​传器。 这将引入一个完整的单独控件,并且不依赖于浏览器。 网上有很多。 这是一个: http : //swfupload.org/

如果它只是您要设置样式的上传按钮,为什么不能使用CSS? 这应该适用于所有浏览器。

如果你把你的代码放在jsFiddle上,我可以告诉你更多关于你能做什么的信息。