问题描述:
首先从数据中读取数据:
string str="ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd";然后我在页面上显示时
<td><%eval("str")%></td>
这时显示的内容太长了,所以页面被拉好了,
请问有没有办法可以解决或是让自动分行。

解决方案 »

  1.   

    效果如上面CSDN的一样 也是太长了,就显示这样子了
    ..
      

  2.   

    <td><%# ShortTitle(Eval("str").ToString()) %></td>
    public string ShortTitle(string title, int lenth)
    {
        if (title.Length > lenth)
            title = title.Substring(0, lenth);
        return title;
    }
      

  3.   

    sorry<td><%# ShortTitle(Eval("str").ToString(),10 %></td>
      

  4.   

    ]谢谢[zpcoder
    这样的话,不是指显示了前10个吗?
    后面的内容呢?
      

  5.   


    <div class="t">ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd</div>
            .t{
               width:50px;
               overflow:hidden;
               white-space:nowrap;
               text-overflow:ellipsis;
            }
      

  6.   

    在table中加上以下CSS:style="word-break:break-all"HTML代码如下:<html>
    <head>
    </head>
    <body>
    <table style="word-break:break-all">
    <row>
    <td width="100">
    dddddddddddddddd
    </td>
    </row>
    </table>
    </body>
    </html>
      

  7.   

    <td style="word-break:break-all">
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...aaaaaaaaaaa
    </td>注意只在IE里有效。
      

  8.   

    设置表格的宽度
    <td whith="100"><%eval("str")%></td>
      

  9.   

    要么使用css控制长度
    要么显示的时候处理一下,一段长度就另起一行
      

  10.   

    神了谢谢bwangel 
      

  11.   


    public string SubStr(string sString, int nLeng)
        {
            if (sString.Length <= nLeng)
            {
                return sString;
            }
            string sNewStr = sString.Substring(0, nLeng);
            sNewStr = sNewStr + "...";
            return sNewStr;
        }
      

  12.   

    好久不能上CSDN,今天终于打开了,先把打开的帖子都路过一次以表庆祝!