1

我的代码

<div class="allegati-item">
    <div class="allegati-titolo">Download</div>
    <a class="allegati-link" href="/documenti/DocumentoTest.pdf">Link1</a>
    <a class="allegati-link" href="/documenti/DocumentoTest.pdf">Link2</a>
</div>

.allegati-link
{
    border-top:1px solid #FF0000;
    display:block;
    margin-bottom:4px;
}

.allegati-item a.allegati-link:first-child
{
    border:0;
}​

我想删除第一个allegati-link元素中的边框,但是由于在它之前有一个 div,在里面allegati-item,似乎这不可能?

4

4 回答 4

3

你可以试试这个:

.allegati-item .allegati-titolo + a.allegati-link{
于 2012-07-04T13:18:25.987 回答
3

改为使用:first-of-type

.allegati-item > .allegati-titolo + a

最后一个版本具有更好的浏览器支持(从 IE7 开始),而第一个版本对您的标记的依赖程度较低。

于 2012-07-04T13:19:45.510 回答
2

假设这:first-of-type可能是最好的选择,这是不支持该伪类的浏览器的另一种选择

.allegati-link { border: 0; }
.allegati-link + .allegati-link { border-top: ...}

这样做你只会从第一个链接中删除边框。

于 2012-07-04T13:24:56.877 回答
0

你也可以这样

$(".allegati-titolo").next().attr("style", "border-top:0px; display:block; margin-bottom:4px;");

这将首先选择具有 class="allegati-titolo" 的 div 的下一个元素,然后将样式应用于第一个链接。

于 2012-07-04T14:37:50.987 回答