我在 GridView里用label显示数据记得 2003的label设置宽度后无论输入多少字符,都只显示宽度最大允许的字符。2005则随着字符的增加 label控件的宽度也跟着增加。要解决label宽度固定,无论显示多少字符,宽度都不跟字符的增加而显示(超过宽度所允许的字符数量,就隐藏不显示!看不到)
用了如下代码
<div style="width:120px;height:20px; overflow: hidden; text-overflow: ellipsis">
      <asp:Label ID="txtlName" runat="server" Text='<%# Bind("FlName") %>'></asp:Label>
</div>用了以上代码后,如果完全显示中文 或者完全显示英文 没问题
但如果 英文和中文混在一起 或者 英文和数字混在一起的时候!
如果输入字符超过label宽度范围的话,Label的宽度 则变得 比实际设置的宽度小很多(不超过没事)。这是怎么回事啊!比如: 文字是         ABCD我我我我123411111  (已经超过 label宽度了)
理论效果 宽度能容纳:  ABCD我我我我12(宽度只能容纳 这么长范围)
实际效果确是              ABCD我(自动缩短了label设置的长度)
如果不超过宽度范围则没事请问如何解决这个问题啊。中英 文混合显示就出问题!
第一次搞WEB CSS不太会
 

解决方案 »

  1.   

    试试
    CSS:
        .newstitle
        {
        font-size:18px;
        font-weight:bold;
        text-align:center;
        border-bottom: gainsboro 1px dashed;
        padding-bottom:10px;
        width:700px;
        word-wrap: break-word; 
        word-break: normal; 
        }ASPX页面
    <div class="newstitle" style="text-align:center;"><asp:Label ID="Label1" runat="server" Text="Label" ></asp:Label></div>
      

  2.   

    我先试验下 Eray  的方法,谢谢
      

  3.   

    Eray  的方法使 label换行了。可是还是美能解决 隐藏的问题啊。如果长度 多了,自动隐藏怎么办。中英稳一起的时候!!!!
      

  4.   

    <table width="20" border="1">
    <tr>
    <td><div style="width:60px;overflow:hidden;text-overflow:clip;white-space:nowrap;">ABCD我我我我123411111</div></td>
    </tr>
    </table>
      

  5.   

    是因为换行了。例如"hello world",你想截断为"hello wo",但实际上换行了就成了"hello\r\nworld",截断后就是"hello"。如果你要不换行,就要用nobr、pre一类的东西。
      

  6.   

    将Label改成TextBox,设置TextBox的背景颜色,把边框去掉,只读,
    效果可达到楼主要求!!
      

  7.   

    哦,实际上我没换行!难道 英文中文一起用的时候会自动换行??
    wszhoho 告诉我的方法好像解决了。不过想问下
    text-overflow:clip;white-space:nowrap;">
    这是个是什么意思,加上去好像就号了。
    我第一次写WEB什么都不太懂,以前是搞WINFORM的。
      

  8.   

    中文字相当于一个单独的英文单词,默认地只有在英文单词内部才不会自动换行。nowrap就是说英文单词结尾也不会换行。
      

  9.   

     <asp:Label ID="txtlName" width="60px" runat="server" Text=' <%# Bind("FlName") %>'> </asp:Label> 
    width="60px"没有  就 style="width:60px"
      

  10.   

    加样式表属性:
    word-wrap: break-word; word-break: break-all;
    然后设置label的宽度,
    asp:label其实在客户端就是span
      

  11.   

    word-wrap: break-word; word-break: break-all;