我在一个生成文本框的网站页面上有一个用户控件。文本框具有指定的宽度,但文本框间歇地显示的宽度比代码中指定的宽度小得多。我让用户向我发送“查看源”输出的副本,以便我可以比较好的和坏的结果。通过“间歇”,我的意思是类似的构建 - 不同的计算机。请注意,不良结果总是显示在相同的“坏”计算机上(有多个用户遇到此问题),相反,“好”计算机(所有与IE7版本相同的“坏”计算机) )总是显示“好”的结果。
当页面显示正确时,发送到浏览器的html如下所示:
<input name="ShortDescription" type="text" maxlength="100"
id="ShortDescription" class="content" style="width:800px;" />
当它渲染不正确时,它看起来像这样:
<input name="ShortDescription" type="text" maxlength="100"
id="ShortDescription" class="content" />
在这两种情况下,ASP.NET代码都是:
<asp:textbox id="ShortDescription" runat="server"
CssClass="content" Width="800px" MaxLength="100"> </asp:textbox>
我不确定为什么样式标签会掉线。以上页面都在不同计算机上的同一浏览器(IE7)中查看。计算机具有公司构建,因此它们“应该”配置相同。
我将不胜感激任何帮助!
答案 0 :(得分:12)
尝试在CssClass中设置TextBox,或者使用样式属性参数而不是使用Width属性
<asp:TextBox id="ShortDescription" runat="server" CssClass="content" MaxLength="100" style="width: 800px" />
<style>.content { width: 800px }</style>
<asp:TextBox id="ShortDescription" runat="server" CssClass="content" MaxLength="100" />
答案 1 :(得分:5)
过去我发现通过类本身设置宽度,而不是使用文本框的width属性将确保控件正确呈现。
答案 2 :(得分:4)
应用min-width属性。
在CSS样式表中
.Textbox
{
min-width:100%;
}
在你的* .aspx
中<asp:TextBox CssClass="TextboxStyle" placeholder="Enter the Title" runat="server" ID="TextBox1"></asp:TextBox>
这将更新您的文本框
答案 3 :(得分:0)
asp:textbox
标记的 input
根据w3没有“width”属性。它支持“size”属性。 IE(678)在标准方面可能会有更好的时间,而其他浏览器的解释则更宽松。
答案 4 :(得分:0)
用于修复文本框的宽度
获取一个皮肤文件并输入以下代码...
例如“skinFile.skin”
<textbox runat="server" width="200px"/>
......................................
之后将以下代码放入您的aspx页面。
Theme="SkinFile
例如......
<%@ Page Language="C#" MasterPageFile="~/AdminMaster.master" AutoEventWireup="true" CodeFile="stu_resgistration.aspx.cs" Inherits="AdminSide_stu_resgistration" Title="Untitled Page" Theme="SkinFile"%>