隐藏元素中的文本节点,但不隐藏子元素

elv*_*eti 58 css textnode

我有一点CSS的麻烦,似乎无法找到解决方案.我有这个HTML

<div id="closelink">
  <a href="">Close</a>
  Click to close
</div>
Run Code Online (Sandbox Code Playgroud)

现在我想隐藏文本«单击关闭»,不隐藏div,也不隐藏其中的链接.

可以这样做吗?

xpy*_*xpy 82

visibility可以在子元素上覆盖该属性,因此您可以执行以下操作:

<div id="closelink">
  <a href="">Close</a>
  Click to close
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

#closelink {
    visibility:collapse;
}

#closelink a{
    visibility:visible;
}
Run Code Online (Sandbox Code Playgroud)

结果如下:http://jsfiddle.net/pavloschris/Vva84/

  • 信息补充:http://www.w3.org/wiki/CSS/Properties/visibility collapse此值导致整个行或列从显示中删除,并且行或列通常占用的空间为可用于其他内容.此值用于行,行组,列和列组元素.如果在行,行组,列或列组以外的元素上使用,则"collapse"与"hidden"具有相同的含义. (4认同)

Thị*_*hạm 18

.closelink {
  font-size: 0px;
}

.close-link a {
  font-size: 12px;
}
Run Code Online (Sandbox Code Playgroud)

  • 这个答案对我有用,接受的解决方案没有(它保持父空间可见). (3认同)
  • 如果存在的话,这也将保留父母的边界。为我工作:) (2认同)

Dip*_*mar 5

尝试

#closelink {
  position: relative;
  left: -9999px;
}

#closelink a {
  position: relative;
  left: 9999px;
}
Run Code Online (Sandbox Code Playgroud)
<div id="closelink">
  <a href="">Close</a> Click to close
</div>
Run Code Online (Sandbox Code Playgroud)