我正在开发一个 asp.net mvc 3 应用程序。我正在使用表显示来自数据库的数据。基本上该表有 4 列,但在某些情况下,整行可能有 2 个甚至 1 个单列。通过使用if
语句,我可以捕获这些情况并正确管理它们(更具体地使用 colspan),因此我可以保持我的表结构干净。但是有一个默认行为,我真的很想用一些 CSS 来改变(如果可能的话)。
当我在一行上有两列时,我希望每列从行的整个宽度中正好占 50%。为了让自己更清楚,这是我现在看到的:
在最底部,实际上这也是表格的结尾,但仍然是同一表格中的一行两个字符串Sign in here
。如您所见,左边的空间比右边的要少得多。一开始我使用不同的表来管理这类东西,但我真的想把所有东西都放在一个表中,并在必要时调整当前行上单元格的宽度。我可以确定这一行,我可以附加一些类,我只是不知道使用什么 CSS 使每个单元格占据相同的空间(当然有可能做到这一点)
附言
抱歉,这是我在视图中用来呈现这一行的代码(Razor):
<tr>
@if (!string.IsNullOrEmpty(Model[0][0].FieldValue))
{
<td colspan="2">
@Html.DisplayFor(x => x[0][0].FieldValue)
</td>
}
else
{
<td colspan="2">
Sign in here
</td>
}
@if (!string.IsNullOrEmpty(Model[1][0].FieldValue))
{
<td colspan="2">
@Html.DisplayFor(x => x[1][0].FieldValue)
</td>
}
else
{
<td colspan="2">
Sign in here
</td>
}
</tr>