0

我有示例(js-fiddle) 我想隐藏所有 tbody 元素,不包含没有类“day_label”和“hide”的元素 tr 元素在这个例子中我有一天的统计数据,如果有我需要隐藏一整天没有任何记录。

4

3 回答 3

2

使用 CSS (在这个特定的冻结时刻)无法根据孩子的孩子有效地选择父母 - 你在问什么 - 是不可能的。

你有三个 ;) 选项:

  1. 在生成 HTML(使用服务器端语言或在 JS 中)时,使用描述子级状态的类生成父级。这样您就可以直接定位到父级。

  2. 使用 JavaScript 定位你的父母,然后计算它是否有合适的孩子。如果是这样,则应用一个添加您需要的样式的类名。

  3. 对于其他情况,您也可以按照 Abe Petrillo 的说明进行操作 - 这是为了反转您的逻辑,并且仅在找到特定选择器时启用。但是,我相信这对您尝试做的事情不起作用,因为它涉及比可以实现的更复杂的“条件逻辑”。

于 2012-09-25T12:38:10.723 回答
2
于 2012-09-25T12:49:47.077 回答
1

不确定您的意思,但您可以隐藏所有行,然后显示相关的行:

tbody tr { display:none; }
tbody tr.day_label { display: block; }
于 2012-09-25T12:31:12.053 回答