一. 要想固定table的总的宽度和每列的宽度:
<TABLE id="Table1" style="TABLE-LAYOUT:fixed" border="1"> 或在脚本中: this.style.tableLayout = fixed
可能的值:
二. 换行问题 <td>有个attribute 叫 NOWRAP,可以控制每个单元格是否允许换行
<TD nowrap=true> 或者 this.noWrap = true
可能的值:
Asp.net的DataGrid有个问题,它的Column有个属性ItemStyle.Wrap,设计是当这个列的ItemStyle.Wrap属性为true时,单元格允许回行,为false不允许回行,可是当设置了为false时输出到客户端的是这样的: <td nowrap=”nowrap”> 而不是 <td nowrap=”true”> 所以ItemStyle.Wrap属性是没有起作用的,请自己手工在DataGrid1_ItemDataBound事件中将不允许回行的那些单元增加个Attribute: nowrap=true。 private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { e.Item.Cells[n].Attributes.Add("nowrap"," true ") ; }
三. 截断英文单词强行回行 上面两个方法可以把表格的宽度都固定了,每个单元是否允许回行都可以设定了,现在可能又会碰到一个问题,当允许回行的遇到比较长的英文单词,可能就超出了这个单元格的宽度,要是不把这个单词从中截断强行换行的话,这个单词的超出单元格宽的的部分将不被显示出来。所以需要在单词超出单元格长度的地方把单词强行截断回行。 可以利用css中的word-break 风格来达到我们的目的:
<TABLE id="Table1" style="TABLE-LAYOUT:fixed;word-break:break-all" border="1"> 或在脚本中: this.style. wordBreak = break-all
可能的值:
|
||||||||||||||||||||||||||||||||
来自: CSDN文档中心 |