我在TD中显示一些文本。我已经为td隐藏了溢出属性,此代码在Chrome,Safari,Mozilla中运行良好,但在IE中则不行。我用过-ms-但它也不起作用。
这是我用来创建表行的代码
strRowTd += "<tr><td height="20" style="-ms-display: block;" +
"display: block;overflow:hidden;-ms-overflow:hidden;" " +
"class="body_text_white_mid">" +
"<strong>" + data[i + 1][4] + "</strong>";
strRowTd += "</td></tr>";
您遇到问题,因为"溢出"仅适用于块级元素。由于表元素不是块元素,因此您应该使用<div>
包装器来获得效果。结果 Html 标记应如下所示:
<tr>
<td class="body_text_white_mid">
<div style="height:20px; overflow:hidden;">
your data[i][j]
</div>
</td>
</tr>
如果您使用class
而不是style
会更好.还要使用 String.Format(markupRow, data[i][j])
而不是字符串串联。
HTML表格支持"table-layout:fixed"CSS样式,该样式可防止用户代理根据其内容调整列宽。您可能想要使用它。
为了避免IE9出现问题,您需要使用
有关此样式的更多信息,请查看此处http://msdn.microsoft.com/en-us/library/ie/ms531161(v=vs.85).aspx