在我编辑的主 wiki 上有一个名为 Item:
的自定义命名空间,提示的是该命名空间内的每个页面都显示为 Item:This_item
- - Item:That_item
-- Item:Foo_item
.
我在网上冲浪并浏览了该皮肤的 CSS,并发现:
span#ca-nstab-main:before,
span#ca-nstab-user:before,
span#ca-nstab-wp:before {
content: "[ ";
}
span#ca-talk:before {
content: "& ";
}
span#ca-talk:after {
content: " ]";
}
它采用命名空间名称“我将使用 main
作为示例”和相应的 talk
页面名称,并使它们显示为 [ main &谈话]
而不是主要谈话
。
我想知道是否有类似的东西可以让我将 Item:Foo
显示为只是 Foo
剥离“Item:
”离开。我知道类别页面上列出的元素位于 div#mw-pages
a
标记中。
也许甚至是使用 JavaScript 的内嵌方式来去掉前五个字符?我说“在线”是因为 $wgAllowUserJs在此 wiki 上设置为 false。
编辑: 维基核心将其解析为:
<style type="text/css">
/*<![CDATA[*/
a[title^="Item:"] {
font-family: 'Lucida Grande', Geneva, Arial, Verdana, monospace;
font-size: 12px;
display: inline-block;
overflow: hidden;
text-indent: -2.1em;
}
/*]]>*/
</style>
如何使引号不被解析,有什么技巧吗?我可以使用单引号而不是像 font-family 行中的双引号吗?
最佳答案
如果您只能使用 CSS,您可以尝试这样的方法。 (http://jsfiddle.net/zPJHU/)
li a {
/* monospace fonts may be more consistant cross browsers */
font-family: "Courier New", monospace;
font-size: 1em;
display:inline-block;
overflow:hidden;
text-indent: -2.9em; /* may have to play with this value */
}
li a:hover{
font-size: 1.8em; /* just for demonstration of font-size increase */
}
演示标记:
<p>Hover over links to increase font-size</p>
<ul>
<li><a href="#Item:wicket" title="This really says: 'Item:Wicket'">Item:Wicket</a></li>
<li><a href="#Item:chewbacca" title="This really says: 'Item:Chewbacca'">Item:Chewbacca</a></li>
<li><a href="#Item:obiwan" title="This really says: 'Item:Obi Wan Kenobi'">Item:Obi Wan Kenobi</a></li>
</ul>
关于javascript - CSS : add content to an element is `content: "text to add";` as remove content from an element is ` ? 中的等效项是什么???`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10238444/