css获取除第一个之外的子元素

时间: 2018-04-09阅读: 20269标签: 伪类

前端页面开发中,需要使用css来选择除了第一个之外的子元素,例如希望每个span之间能间隔一定的距离,单不能给每个span设置margin-left,这样会导致第一个span的前面有间距,影响排版。下面就来讲解实现css获取除第一个之外的子元素的多种方法。


效果如下:



基本结构如下:

<style>
.dom div{
    float: left;
    height: 150px;
    line-height: 150px;
    width: 150px;
    margin: 20px;
    background: #ccc;
    text-align: center;
    color:#fff;
}
</style>
 <div class="dom">
    <div>1</div>
    <div>2</div>
    <div>3</div>
</div>


方法1:使用伪类选择器:not  

<style>
.dom  div:not(:first-child){
	background:red;
}
</style>

说明:

:not(selector) 选择器匹配非指定元素/选择器的每个元素。  

:first-child 选择器用于选取属于其父元素的首个子元素的指定选择器。 


方法2:使用nth-of-type或者nth-child 

<style>
.dom div:nth-of-type(n+2){
	background:red;
}
</style>

或者:

<style>
.dom div:nth-child(n+2){
	background:red;
}
</style>

说明:

n是从0开始的,那么n+2自然就是从第2个元素开始了,同理如果选中单数元素那么就是2n+1,如果是想选中双数元素,那么就应该写成2n+2;具体情况可以根据项目情况使用。 


方法3:巧妙使用+或者~兄弟选择符  

<style>
.dom div+div{
   background:red;
}
</style>

或者:

<style>
.dom div~div{
  background:red;
}
</style>

说明:

+ 选择器:如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器。

~ 选择器 :作用是查找某一个指定元素的后面的所有兄弟结点。  

由于都是div元素,第一个元素没有兄弟元素,所以就能获取除第一个之外的子元素。至于css兄弟选择器(+ 和 ~)的区别请点链接:http://www.fly63.com/article/detial/603





站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/602

CSS3新增的伪类有哪些 与 居中div的多种方法

CSS3新增伪类有那些?p:first-of-type:选择属于其父元素的首个<p>元素,p:last-of-type:选择属于其父元素的最后<p>元素,p:only-of-type:属于父元素的特定类型的唯一子元素,p:only-child:属于父元素的唯一子元素的每个<p>元素;p:nth-child(2)

css伪类和伪元素

伪类和伪元素,对于绝大多数同学来说,都是耳熟能详的名字,但确实又有很多人搞不清楚它们之间的区别,以致于混淆概念。而当概念都混淆的时候,也往往意味着你不会经常使用它,怕出错,怕用不好

16个非常有用的CSS伪选择器

这篇文章鼓励构造 UI 时使用更多纯 CSS 和更少的 JS。熟悉所有的 CSS 是实现这个目标的一种方法 —— 另一种是实施最佳实践和尽可能的减少代码。

中间文字,两边横线的css3伪类的使用

CSS伪类是用来添加一些选择器的特殊效果。使用了css3的伪类,即相当于是在一个div中写入文字,然后在它前后各加了一个div,然后进行位置及宽高的调节。代码中只写一个div,然后在css样式中,对该div设置flex布局

css中:visited怎么不起作用?

css定义超链接四个状态也是有顺序的,对于这4个伪类的设置,有一点需要特别注意,那就是它们的先后顺序,要让它们遵守一个顺序原则,也就是link ~ visited ~ hover ~ active 。

css选择器优先级高低排列_css样式权重计算和!important属性

css的选择器是有权重(即优先级)的,在不同选择器的样式出现冲突时候,会采用权重高的选择器设置样式,而优先级不仅仅只是:“行间>内部>外部、ID>class>元素”。css优先级到底是怎么计算的呢?

CSS中一些利用伪类、伪元素和相邻元素选择器的技巧

一个评论框,后面的按钮有点赞或者发送评论两种状态,其中发送按钮有根据输入框中是否有字分为可点击和不可点击两种状态。

深入理解CSS伪类

伪类经常与伪元素混淆,伪元素的效果类似于通过添加一个实际的元素才能达到,而伪类的效果类似于通过添加一个实际的类来达到。实际上css3为了区分两者,已经明确规定了伪类用一个冒号来表示,而伪元素则用两个冒号来表示。本文将详细介绍伪类的详细知识

css链接link_CSS :link 伪类

链接可以使用任何css属性,包括字体、颜色、背景等等、链接有四个状态,可在四个状态时设置不同的属性,当为链接的不同状态设置样式时,需要遵循a:hover 必须位于a:link 和a:visited之后,a:active 必须位于 a:hover 之后

CSS 的 :is()和 :where() 即将在浏览器中和大家见面

现在,Safari(技术预览版106)和Firefox(版本78)的预览版均支持新的CSS :is() 和 :where() 伪类。 Chrome的实施仍然落后。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!