在html表格单元格中标记自动换行

时间:2012-07-10 17:08:08

标签: c# asp.net html

代码片段 -

HtmlTableCell fixedDataCell = new HtmlTableCell();
fixedDataCell.Style.Add(HtmlTextWriterStyle.Height, "22px");
fixedDataCell.Style.Add(HtmlTextWriterStyle.Width, "100px");
fixedDataCell.Style.Add(HtmlTextWriterStyle.FontSize, "small");
fixedDataCell.NoWrap = true;

Label lbl = new Label();
lbl.Text = "ABCDEFGHIJKLMNOQRSTUVWXYZ";
lbl.Width = 1;

fixedDataCell.Controls.Add(lbl);

单元格展开而不是截断或添加省略号到标签的文本。细胞保持一定宽度非常重要。如何处理该单元格内的标签?

编辑:显然只是添加一个宽度值就可以解决这个问题。

3 个答案:

答案 0 :(得分:0)

要隐藏溢出,请尝试:

fixedDataCell.Style.Add(HtmlTextWriterStyle.OverflowX, "hidden");

虽然有省略号:

fixedDataCell.Style.Add(HtmlTextWriterStyle.OverflowX, "ellipsis");

答案 1 :(得分:0)

显然只需添加宽度值即可解决此问题。

答案 2 :(得分:0)

HTML只会包含一个逻辑单词,例如用空格或标点符号分隔的单词,对于长拼词,HTML不会破坏或包装单词。因此,如果容器比单词所需的水平空间“更窄”,则内容会出血或强制扩展容器,这在您的示例中是正确的。

通过添加诸如“overflow-x:hidden”之类的CSS属性,可以剪裁出血内容以适合容器,但是如果用户想要查看剪切的内容,您可能需要添加工具提示。

我会提醒使用“overflow-x:省略号”,因为它是一个CSS3属性,旧版本的IE可能不支持。