您的位置:首页 > Web前端 > CSS

CSS3选择器:nth-child与:nth-of-type区别

2017-06-24 19:17 197 查看

一、:nth-child

1.1 说明

:nth-child(n)选择器匹配属于其父元素的第N个子元素,不论元素的类型。n可以是数字、关键词或公式。
注意:如果第N个子元素与选择的元素类型不同则样式无效!

1.2 示例

<style>
div>p:nth-child(2){
color:red;
}
</style>
<div>
<p>我是第1个段落</p>
<p>我是第2个段落</p><!--符合条件:1、是<p>元素,2、父元素<div>的第二个元素。这里被选择,会变成红色。-->
<p>我是第3个段落</p>
</div>
<div>
<p>我是第1个段落</p>
<span>我是第1个文本</span><!--不符合条件:不是<p>元素,没有被选择-->
<p>我是第2个段落</p>
</div>

1.3 改进

如果想让上面第二个
<span>
生效的可以去除子元素
<p>
的选择,写一个父元素
<div>
加一个空格,以防止
:nth-child
不生效。
<style>
div :nth-child(2){ //div+空格,只根据父元素选择
color:red;
}
</style>
<div>
<p>我是第1个段落</p>
<span>我是第1个文本</span><!--符合条件-->
<p>我是第2个段落</p>
</div>

二、:nth-of-type

2.1 说明

:nth-of-type(n)选择器匹配属于父元素的特定类型的第N个子元素的每个元素。n可以是数字、关键词或公式。

2.2 示例

<style>
div>p:nth-of-type(2){
color:red;
}
</style>
<div>
<p>我是第1个段落</p>
<p>我是第2个段落</p><!--符合条件:1、是特定元素类型<p>,2、是父元素<div>的第二个<p>元素。这里被选择,会变成红色-->
<p>我是第3个段落</p>
</div>
<div>
<p>我是第1个段落</p>
<blockquote>第1个引用</blockquote>
<p>我是第2个段落</p><!--符合条件:1、是特定元素类型<p>,2、是父元素<div>的第二个<p>元素。这里被选择,会变成红色-->
<p>我是第3个段落</p>
</div>
CSS3选择器:nth-child与:nth-of-type区别
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  HTML CSS CSS3