日期:2014-05-18  浏览次数:20444 次

问个 很 郁闷 但是有很可爱 而且还很讨厌的 问题
在页面中。。我用了 服务器控件 <asp:TextBox ID="districtName" runat="server" MaxLength="30" class="inbox" size="20"></asp:TextBox>
之类的 TEXTBOX很多个
有一个提交按钮 进行插入数据、、但是 当插入失败的时候我 返回这个页面 但是这个时候 所有的 TEXTBOX都变细了。。
宽度变细了。。
提交服务器以后宽度就变细了 这是为什么呢?怎么解决?会不会是 CSS的问题?
.inbox {
height: 16px;
border: 1px solid #b4b4b4;
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
color: #4B4B4B;
}
大家帮帮看看

------解决方案--------------------
height: 16px;
------
汉字通常采用9pt字体...相应的TextBox需要的最小高度是21px...
------解决方案--------------------
这个问题我也遇到过,跟CSS无关,解决方案如下:

验证错误后,写JS脚本如下:

Response.Write("<script language='javascript'>window.alert('对不起,验证错误!');history.go(-1)</script>");

记住,在JS里写了history.go(-1)后,返回到原来的页面才不会变形。
------解决方案--------------------
应该是HTML标头的问题吧..
每一个ASPX页面的头部都有个<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">,这行要是最顶的一行。

若是response.write时,这个输出的内容是在最顶的,所以不符合规范了.样式就无效了。 

如果不是Response 搞的话,你在你样式表里设置下width 的属性,这里也定一个宽,看看.