所以我尝试了:
body :not(.cc) { display: none; }
以及我在这里找到的其他各种东西。 ({!important
,*
而不是正文,...)
我什至尝试使用该类的span元素代替td元素。
什么都没用。
<html>
<body>
<table><tr><td class="cc">text</td></tr></table>
Other text to not ne shown.
</body>
</html>
编辑:请原谅,我先在这里放一个误导性的html代码段。我删除了。
Edit2:我添加了“其他文本不显示。”
答案 0 :(得分:2)
您将需要这样的东西
body *:not(table):not(tr):not(td):not(tbody),
td:not(.cc) {
display: none;
}
<table>
<tr>
<td>hide</td>
</tr>
<tr>
<td class="cc">show</td>
</tr>
<div>Other text to not be shown.</div>
</table>
基本上,将除表元素之外的所有内容隐藏在主体中,然后第二条规则隐藏不是td
类的.cc
。我添加了tbody
,因为某些浏览器会将其自动添加到您的表中。基本的经验法则是,您不能隐藏任何包含要显示的元素的父母。
就文本而言,您需要将文本包装在一个元素中,以便可以使用CSS作为目标。当前它是由body标签包裹的,您不能隐藏body标签,否则将不会显示任何内容。
,您可以参考此问题答案 1 :(得分:1)
您无法显示.cc类,因为它的内部隐藏体!您可以根据需要执行此操作
p:not(.cc) {
display: none;
}
<p>text get's hidden</p>
<p class="cc">text doesn't get hidden</p>
<p>
hello world!
</p>
答案 2 :(得分:0)
为什么不先简单地为所有内容和类设置一个空白:
body { display : none ; }
.cc { display : block; }