我正在设计一个添加/编辑用户的页面 - 我使用了一个转发器控件和一个表来显示用户。在用户视图中,表行的各列具有显示记录值的标签,当用户单击编辑按钮时,标签将被隐藏,并显示文本框供用户编辑值 - 问题是 - 文本框一旦显示可见,表格大小增加 - 行高和单元格大小变大。有没有办法显示文本框,以便它们采用与标签相同的大小
答案 0 :(得分:1)
处理表格时,问题是:您的标签可以跨越多个文本行(即:您可以拥有长文本)吗?如果是,您可能会遇到布局问题。如果不是,一个简单的方法就是创建一个CSS类:
.CellContent { display:block; width: ...; height: ...; }
使用您首选的单元格宽度/高度。跟你的身高保持一点“大”。
将类分配给标签和文本框,切换控件时不应更改宽度/高度(由于display:block属性)。
同样,如果您有长文本,您仍会遇到问题,并且可能希望使用多行。在这种情况下,我建议忽略高度问题:只需将宽度设置为一致,并始终显示3-4行文本框进行编辑。如果他们准备输入长文本,用户就不会看到行高变化。
答案 1 :(得分:0)
我会使用JS + CSS ......但是你必须亲自动手。 Visual Studio对您没有多大帮助。
我是这样做的:
<td>
clientWidth和clientHeight。<td>
的宽度和高度设置为那些px值(因此它们不再相对)当您切换回来时,请确保取消设置<td>
宽度和高度,以便它们返回自动值。
你需要稍微调整一下。我确定你必须使用<td>
上的填充,并设置溢出:隐藏,但你应该能够做你想做的事。