CSS-伪类获取除第一个之外的其他子元素

若实现效果如下,css伪类可以把握的死死的↓↓↓

小头像
模型
举个栗子:

 <div class="contents">
    <div>1</div>
    <div>2</div>
    <div>3</div>
</div>
<style>
.contents{
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}
.contents div{
    height: 150px;
    line-height: 150px;
    width: 150px;
    background: #ccc;
    text-align: center;
    color:#fff;
}
</style>

方法一:
:not(selector) 选择器匹配非指定元素/选择器的每个元素。
:first-child 选择器用于选取属于其父元素的首个子元素的指定选择器。
<style> .contents div:not(:first-child){ background:blue; } </style>
方法二:
使用nth-of-type()或者nth-child()。
(n是从0开始的,那么n+2自然就是从第2个元素开始了,同理如果选中单数元素那么就是2n+1,如果是想选中双数元素,那么就应该写成2n+2;具体情况可以根据项目情况使用。)

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

或者:

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

方法三:巧妙使用+或者~兄弟选择符 。
(+ 选择器:如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器。~ 选择器 :作用是查找某一个指定元素的后面的所有兄弟结点。)

<style>
.contents div+div{
   background:blue;
}
</style>

或者:

<style>
.contents div~div{
  background:blue;
}
</style>

说明:css兄弟选择器(+ 和 ~)的区别和效果,如下本人是做一个操作备忘,学习啦css兄弟选择器(+ 和 ~)的使用和区别
1.+ 选择器
如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器。 比如:

<p>This is paragraph.</p>
<h1>This is a heading.</h1>
<p>This is paragraph.</p>

<style type="text/css">
    h1 + p {
        margin-top:50px;
        color:red;
    }
</style>

效果如下:
效果图
兄弟选择器只会影响下面的p标签的样式,不影响上面兄弟的样式。

注意这里的’+’的意义跟’and’意义不一样,兄弟选择器的样式是应用在兄弟元素上,跟参照的元素样式无关,如上例只影响p元素的样式,而不影响h1标签的样式。 当然这个也会循环查找,即当两个兄弟元素相同时,会一次循环查找:

<div>
  <ul>
    <li>List item 1</li>
    <li>List item 2</li>
    <li>List item 3</li>
  </ul>
</div>
<style type="text/css">
    li + li {
        color:red;
    }
</style>

运行之后第一个li字体颜色没有变红,第二个和第三个元素字体变红,这就是因为第三个li是第二个li的兄弟元素,所以也会应用样式。
2. ~ 选择器
作用是查找某一个指定元素的后面的所有兄弟结点。 示例代码:

<p>1</p>
<h3>2</h3>
<p>3</p>
<p>4</p>
<p>5</p>
<style type="text/css">
    h1 ~ p{
        color:red;
    }
</style>

运行之后h3标签之后的p标签包裹的字体都是呈红色。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值