1

我无法控制它托管在另一台服务器上的 html。如果我想用css来修改一些列表项,我该怎么做呢?

例如

服务器端html:

<ol>
<li>Coffee</li>
<li>Milk</li>
<li>Orange Juice</li>
<li>Chocolate Milk</li>
<li>Espresso with hot foamy milk</li>
<li>Espresso diluted with hot water</li>
</ol>

我想使用 css 将最后两项显示为“Cappuccino”和“Americano”。

谢谢。

4

3 回答 3

3

实际上可以通过使用:after伪类来渲染它。但它真的很丑。仅当您没有其他选择时才这样做:

ol li:nth-child(5){
    color: #fff;           /* same color as the background to hide it */
    position:relative;
}    
ol li:nth-child(5):after{
    content: "Capuccino";
    display: block;
    color: #000;          /* your text color */
    position:absolute;
    top:0;
    left:0;
}

jsfiddle

于 2013-01-21T21:35:01.703 回答
2

您不能通过 CSS 更改 HTML 标记的内容。

您可以希望通过 JavaScript 这样做,即使那样,您也需要从 DOM 中选择匹配的元素,并替换它们的innerHTML属性。


但是用 CSS 是不可能的。

于 2013-01-21T21:30:36.330 回答
1

我能想到的唯一黑客是使用该属性:

{display:none}

手动为每个标签。

于 2013-01-21T21:30:30.210 回答