有什么方法可以使用CSS删除或隐藏两个HTML元素之间的文本?

时间:2019-03-28 14:42:41

标签: css

有什么方法可以完全通过CSS删除或隐藏两个元素之间的文本(在本例中为&ndash)?假设我无权访问HTML。

这正是我的情况:

<span class="foo">
    <span class="bar">sometext</span> 
    &ndash; <!-- hide this! -->
    <span class="bar">sometext</span>
</span>

当我虽然不是()时,我有一个小小的尤里卡时刻。只需选择foo,然后隐藏所有内容即可,但不要跨度(也请不要(.bar)尝试)。我这样尝试过,很遗憾没有帮助:

.foo:not(span) {
    content: ""; //tried to set their content as nothing
    display: none; //and tried to simply hide them
}

我认为没有选择第n行的伪元素?就像:: first-line

谢谢

1 个答案:

答案 0 :(得分:0)

使用继承和透明颜色。通过重复选择器,例如类 ex。.bar.bar

,以双重特异性保护孩子。

span.foo {
  color: rgba(0,0,0,0) /* or color: transparent */
}

span.bar.bar {
  color: tomato;
}
<span class="foo">
    <span class="bar">sometext</span> 
    &ndash; <!-- hide this! -->
    <span class="bar">sometext</span>
</span>