jquery - 隐藏 TR - 包含边界

标签 jquery

简单地做一些事情

$("tr.myclass").hide();

将隐藏相关行。但是,如果我对 tr 中包含的 td 有边框,那么在隐藏 tr 后它们仍然会显示。因此,原始表格的 td 元素底部有一个 1px 边框。隐藏行集的位置会导致两个像素边框取代它们。

我假设这是因为 tr 被隐藏而不是 td,所以边界仍然存在。不过,这并不重要,tr 中包含的所有内容都应该隐藏。

我对这个有点迷失,因为互联网上似乎没有人遇到过它,至少,根据我的搜索标准没有。

有什么想法吗?

编辑

好的,尝试一下使用 <col /><colgroup></colgroup> ,你会发现它是可重现的。我的同事告诉我去掉 col 和 colgroups,嘿,很快,它工作得很好。这是在 IE8 中(我不是 IE 用户,但这是针对仅 IE 的项目)。很奇怪。

最佳答案

边框不属于单元格,而是属于表格并显示在单元格之间。隐藏行将隐藏单元格,但不会删除它们,因此单元格之间的边框仍然存在。

表格不应该以这种方式使用,如果您隐藏表格的一部分,它的行为将会不稳定或意外。隐藏元素时表结构不会改变,因此表不会显示,就好像隐藏元素不存在一样。如果要从表中删除表行,则必须实际从表中删除 tr 元素。

关于jquery - 隐藏 TR - 包含边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1999311/

相关文章:

javascript - 如果选中复选框,则显示/隐藏 div

javascript - 在 Razor 中将小数字段显示为 Int

javascript - mootools 和 jQuery 冲突

jQuery 并 append 而不添加空格

javascript - 调用函数时如何设置jQuery this?

javascript - 如何使用 jQuery 禁用/启用 YouTube 视频上的播放按钮?

jquery - XMLHttpRequest 无法加载 http ://localhost:8080/exist/rest/db/. ... Access-Control-Allow-Origin 不允许 Origin null

javascript - 如果仅发生错误,则需要在提交后保留星级值

javascript - Jquery $(window).height() 函数不返回实际窗口高度

javascript - 使用相同的类,使用 javascript 一次悬停 3 个项目