2017-06-09 258 views
0

我需要選擇除第一個元素之外的元素的所有子元素。我正在使用drupal和colorbox模塊,並且我無法將唯一的類或ID添加到第一個元素中。選擇除元素第一個元素之外的所有子元素

<span> 
<span> 
<a> </a> <a> <img> </a> 
<a> <img> </a> 
<a> <img> </a> 
</span> 
</span> 

我有一個結構, 可以有更多的<a> <img> </a>,但你的想法。

總之。我需要選擇一個標籤<a> <img> </a>內的所有圖像標籤,以便我可以將CSS規則應用於它們,而不會影響第一個標籤<a>。也許有一個JQuery的解決方案呢?謝謝

+0

您的標記是無效的。你在編輯的第一個鏈接 –

+0

中有2個'a',謝謝。 –

+0

我的答案是否適用於新的標記? –

回答

2

使用:not(:first-child)排除第一個鏈接

.myClass img { 
 
    content: url('http://kenwheeler.github.io/slick/img/lazyfonz2.png'); 
 
} 
 

 
.myClass a:not(:first-child) img { 
 
    content: url('http://kenwheeler.github.io/slick/img/lazyfonz3.png'); 
 
}
<span> 
 
<span class="myClass"> 
 
<a> <img> </a> 
 
<a> <img> </a> 
 
<a> <img> </a> 
 
</span> 
 
</span>

它基本上是在jQuery的同樣的事情。

$('a:not(:first-child)').css('background','red');
a { 
 
    height: 1em; 
 
    width: 1em; 
 
    background: black; 
 
    display: inline-block; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span> 
 
<span> 
 
<a> <img> </a> 
 
<a> <img> </a> 
 
<a> <img> </a> 
 
</span> 
 
</span>

+0

我們假設這是第二個跨度這應該是CSS? .myClass a:不是(第一個孩子){display:inline;} –

+0

@MarwanAK':第一個孩子',你嘗試過嗎?更新我的答案... –

0

您可以使用此$("span>a").not(":eq(0)")

$("span>a").not(":eq(0)").css('background','red');
.myClass a { 
 
    width: 100px; height: 100px; 
 
    background: black; 
 
    display: block; 
 
} 
 
.myClass a:not(:first-child) { 
 
    background: red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
 
<span> 
 
<span> 
 
<a> dsada</a> <a> <img> </a> 
 
<a>dsada <img> </a> 
 
<a> dsada<img> </a> 
 
</span> 
 
</span>

+0

謝謝,已解決=) –

+0

歡迎您:)您還可以使用jquery .not(「:eq(0)」)函數 – hasan

相關問題