我有一个包含 10 列的列表视图,我希望每一行的大小完全相同。
问题在于,虽然 9 列由 1-2 个单词组成,但 1 列可以由未知数量的单词组成,这意味着每行的格式会有所不同,因此会破坏视图。
我已经尝试格式化奇数列,<td>
例如 width="200" height="50" style="overflow:scroll" 但仍然显示滚动条(包括在不需要它的单元格上)并且它实际上仍在扩展容纳所有文本的高度(滚动条可见但不可用)
如何将该单元格格式化为每一行都相同?
我有一个包含 10 列的列表视图,我希望每一行的大小完全相同。
问题在于,虽然 9 列由 1-2 个单词组成,但 1 列可以由未知数量的单词组成,这意味着每行的格式会有所不同,因此会破坏视图。
我已经尝试格式化奇数列,<td>
例如 width="200" height="50" style="overflow:scroll" 但仍然显示滚动条(包括在不需要它的单元格上)并且它实际上仍在扩展容纳所有文本的高度(滚动条可见但不可用)
如何将该单元格格式化为每一行都相同?
如果您正在寻找包装文本,您可以使用 CSS 来实现。将 CSS 类应用到您的 .
允许长单词能够中断并换行到下一行:
.wrapText {word-wrap:break-word;}
或者
.wrapText {word-wrap:normal;}
normal - 只在允许的断点处断词 break-word - 允许破坏不可破坏的词
例如。
<td class="wrapText"></td>
或者
<td style="word-wrap:break-word;"></td>
overflow:auto 只会在需要时显示滚动条
table-layout:fixed 将停止您的单元格调整大小
还有overflow-y:scroll;overflow-x:hidden for CSS3 取决于支持。我知道它适用于 IE8 和 firefox、chrome 等。但是这些只允许您指定垂直滚动
首先设置您的table
:
table
{
width: 0px;
table-layout: fixed;
}
0 像素宽度将被忽略,因为我们将为单元格指定宽度,但它是使固定布局工作所必需的(作为替代,您可以使用正确的宽度)。然后你必须对单元格应用一些格式:
table td
{
width: 200px;
height: 100px;
}
table td div
{
width: 200px;
height: 100px;
overflow: auto;
}
你的单元格必须是这样的:
<tr>
<td></td>
<td><div>Here the long content</div></td>
</tr>
设置溢出:隐藏以在溢出实际高度时截断文本
试试这个
<table border="1" style="height:50px;width:200px;table-layout:fixed">
<tr>
<td style="height:50px; width: 100px;">
Test
</td>
<td style="height:50px; width: 100px;overflow:hidden;border-collapse:collapse;" nowrap>
<nobr> This is a long tex to show how the cell trancate a text, can you see it ?</nobr>
</td>
</tr>
</table>
解决这个问题的最简单方法似乎是一个 asp:TextBox,它刚刚创建,所以它看起来像一个标签。上面的所有答案都适用于单独创建的表格,但我对 listView 格式不太熟悉,可能没有在正确的地方设置一些东西。