mhe*_*ers 6 css css3 pseudo-element
嗨我有一个包含这样的文本的列表项:
<li>Search</li>
Run Code Online (Sandbox Code Playgroud)
我想用字体真棒显示一个图标
li:before {
content: "\f002";
}
Run Code Online (Sandbox Code Playgroud)
我没有能力删除"搜索"文本(它是从Drupal CMS生成的,标记和类名称也是如此),但我想隐藏搜索文本,但显示伪元素(搜索图标).我该怎么做呢?通常,我要隐藏文本的方法就是:
li {
text-indent: -1000px;
overflow: hidden;
}
Run Code Online (Sandbox Code Playgroud)
但这也会隐藏伪元素
小智 6
聚会有点晚了,但您可以随时将 li 的字体大小更改为 0,并将图标的字体大小更改回原始字体大小。像这样:
li {
font-size: 0;
}
li:after {
font-size: 1em;
}
Run Code Online (Sandbox Code Playgroud)
您可以坚持使用“text-indent”方法(或者更好的“ Kellum Method ”)并使用 CSS 定位伪元素:
li {
display:block;
position:relative;
text-indent: -100%;
white-space: nowrap;
overflow: hidden;
}
li:after {
content: "visible pseudo-element";
position:absolute;
right:0;
}
Run Code Online (Sandbox Code Playgroud)
http://jsfiddle.net/Fiddel/aopteq8m/