我有一个 div,它的内容服务器在表中动态生成。我需要在表格顶部有最后一行,我用 CSS 做到了。但是,当内容增加它的高度时,第四行会覆盖第一行。HTML 如下所示:
<div class="main">
<table id="news">
<tr id="tr1">
<td id="td1">
<fieldset id="fieldset1">Content</fieldset>
</td>
</tr>
<tr id="tr2">
<td id="td2">
<fieldset id="fieldset2">Content</fieldset>
</td>
</tr>
<tr id="tr3">
<td id="td3">
<fieldset id="fieldset3">Content</fieldset>
</td>
</tr>
</table>
</div>
CSS:
.main { padding-top: 150px; } /* Making room for 3rd row */
#tr3 { margin-top: -500px; } /* Move it above the other rows */
我需要的是找到#tr3 的高度并将这个值传递给.main 的填充和#tr3 的margin-top 的方法。我试图从通过搜索找到的解决方案中整理出一些东西,但我的知识并没有那么广泛,我想出的是:
var tr3Height = document.getElementById('#tr3').clientHeight;
var mainPadding = document.getElementById('.main');
function SetAttribute (ObjectID, Value) {
document.getElementById('.main').style.paddingTop = tr3Height + "px";
document.getElementById('#tr3').style.marginTop = -(500 + tr3Height) + "px";
}
我很确定这是应该如何完成的,但我不知道如何完成它。也许有人可以帮助我朝着正确的方向前进。谢谢你。
编辑:我忘了提:我不能改变 .main div 中的 HTML,因为是服务器生成的。