【问题标题】:Select all children except first one of element选择除第一个元素之外的所有子元素
【发布时间】:2017-06-09 21:52:06
【问题描述】:

我需要选择一个元素的所有子元素,除了第一个元素。我正在使用 drupal 和 colorbox 模块,我不能单独向第一个元素添加唯一类或 ID。

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

我有这样的结构和 可以有更多 &lt;a&gt; &lt;img&gt; &lt;/a&gt; 但你明白了。

简而言之。我需要选择 a 标签&lt;a&gt; &lt;img&gt; &lt;/a&gt; 中的所有图像标签,这样我就可以对它们应用 CSS 规则,而不会影响第一个 &lt;a&gt; 标签。也许有一个 Jquery 解决方案?谢谢

【问题讨论】:

  • 您的标记无效。您在第一个链接中有 2 个a
  • 我的答案是否适用于新标记?

标签: jquery html css drupal-7 colorbox


【解决方案1】:

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

【讨论】:

【解决方案2】:

你可以使用这个$("span&gt;a").not(":eq(0)")

$("span&gt;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>

【讨论】:

  • 欢迎您:) 你也可以使用 jquery .not(":eq(0)") 函数
猜你喜欢
  • 2010-09-15
  • 1970-01-01
  • 2011-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-20
相关资源
最近更新 更多