让FileUpload控件在IE和FireFox中的显示效果一样
ASP.NET 的FileUpload控件有一个Width属性,可用于设置FileUpload控件的高度,在IE中显示没有问题。但在火狐中不算怎样设置,FileUpload控件的宽度仍然是默认值。
根本原因是火狐浏览器不理会FileUpload控件的Width属性。
解决方法是使用同时使用size和width属性:
<asp:FileUpload ID="FileUpload1" size="60" runat="server" Width="90%" />
IE忽略size,FireFox忽略width,刚好各得其所。
另外,FileUpload控件往往还需要配合一个ASP.NET Button来实现正式上传,而默认情况下,ASP.NET Button的高度与FileUpload控件不一样,放在同一行显得很难看。
考虑到FileUpload控件与Button最终都生成(Render)HTML中的Input元素,可以使用样式表直接设定input元素的height值,即可让ASP.NET Button的高度与FileUpload控件的高度一致。
样式表:
.button_height
{
height:20px;
}
ASPX代码:
<asp:FileUpload ID="FileUpload1" CssClass="button_height" size="60" runat="server" Width="90%" />
<asp:Button ID="btnUpload" CssClass="button_height" runat="server" Text="上传" />
上面使用了ASP.NET控件中的CssClass属性。