gpt4 book ai didi

css - 在 CSS 中,在元素上使用 "display:none",但保留其 ":after"

转载 作者:数据小太阳 更新时间:2023-10-29 09:13:52 24 4
gpt4 key购买 nike

是否可以不显示元素,如display:none,而是继续显示:before 和/或:after?

我试过了

#myspan       {display:none}
#myspan:after {display:inline; content:"*"}

但这没有用。我试图让 CSS 用星号替换 span 的内容,而不引入 jQuery。

最佳答案

不,这是不可能的。

伪元素被渲染成子元素:

<span id="myspan">whatever<after></span>

display:none 隐藏了包含所有子元素的元素。

编辑 1

在我看来,JavaScript 是您的最佳选择。即使没有 jQuery 更改文本也不难:

document.getElementById("myspan").innerHTML = "*";​

Demo

编辑 2

但是,如果你真的想用 CSS 来做,你可以使用负的 text-indent 来隐藏文本,使用 relative 定位来显示星号:

#myspan {    
text-indent: -9999px;
display: block;
}

#myspan:before {
content: '*';
position: absolute;
top: 0;
left: 9999px;
}

Demo

关于css - 在 CSS 中,在元素上使用 "display:none",但保留其 ":after",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14049423/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com