首先在设置页面属性:
评论内容列绑定的数据很长,显示的时候在一行里面显示,页面拉得很宽。为了给内容换行,只需要在这一列的在RowDataBound中添加上了一句:
e.Row.Cells[2].Style.Add("word-break", "break-all");就可以;
或者在数据绑定的时候设置为:
this.GridView1.Rows[i].Cells[1].Style.Add("word-break", "break-all");
如果要给所有的列添加换行功能,那么可以在页面载入的时候设置属性:
protected void Page_Load(object sender, EventArgs e)
{
this.GridView1.Attributes.Add("style", "word-break:keep-all;word-wrap:normal");
this.GridView1.Attributes.Add("style", "word-break:break-all;word-wrap:break-word");
if (!IsPostBack)
{
this.commentBind();
}
}
总之:善用CSS的word-break:break-all;word-wrap:break-word属性即可,这个属性是通用的对于顽固的南换行问题都可以解决,不局限于GridView。
标签。
nowrap 文本不会换行,文本会在在同一行上继续,直到遇到
标签为止。
(层中放一个表格,如果层的float:none 则表格和层间会有空隙,这种问题的解决办法是在层的style里面加上white-space: nowrap)
使用方式: word-break:break-all;
一般情况下:
.body{
word-wrap:break-word;
word-break:keep-all;
overflow:hidden;
}
.css{
text-overflow:ellipsis;
white-space:nowrap;
overflow:hidden;
}
IE与Firefox将它看成是一个长单词了,因此不会自动换行。
对于IE,可以通过IE专有的CSS属性word-wrap即可实现自动换行:word-wrap:break-word;
对于Firefox,CSS2标准并没有定义类似word-wrap的属性,可以通过overflow属性将撑出的部分隐藏:overflow:hidden