选择除第一个元素之外的所有子元素

时间:2017-06-09 21:52:06

标签: jquery html css drupal-7 colorbox

我需要选择除第一个元素之外的元素的所有子元素。我正在使用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解决方案?谢谢

2 个答案:

答案 0 :(得分:3)

使用: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>

答案 1 :(得分: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>