css 中 first-child 是什么意思

html-css08

css 中 first-child 是什么意思,第1张

css2里的伪类均摊符,意思是:匹配父元素的第一个子元素

你可以在css手机里可以查到这个伪类选择符

比如:

<ul>

<li>列表项一</li>

<li>列表项二</li>

<li>列表项三</li>

<li>列表项四</li>

</ul>

在上述代码中,如果我们要设置第一个li的样式,那么代码应该写成li:first-child{sRules},而不是ul:first-child{sRules}。其它相关的伪类都如此。

.content:first{...}

.content:nth-child(1){...}

CSS3 :nth-child() 选择器

:nth-child(n) 选择器匹配属于其父元素的第 N 个子元素,不论元素的类型。n 可以是数字、关键词或公式。

CSS :first-child 选择器

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

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

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

嗯,乍一看好像说的不是很明白,因此这个选择器很容易让人误解,通常会有两种误解:

误解一:认为E:first-child选中E元素的第一个子元素。

误解二:认为E:first-child选中E元素的父元素的第一个E元素。

你是不是也曾这样理解这个选择器或者现在仍然这样理解?以上两种理解都是错误的,理解,div里的第一个a元素字体应该是红色的,事实证明这种理解也是错的。OK,正确的理解应该是:只要E元素是它的父级的第一个子元素,就选中。它需要同时满足两个条件,一个是“第一个子元素”,另一个是“这个子元素刚好是E”。

span:first-child{color:red}

p:first-child{color:blue}/*p元素的父元素的第一个子元素是div而不是p元素,因此该样式不起作用*/

i:first-child{color:orange}

.demo的第一个子元素是div

第一个span第一个段落P第二个span

一个链接第一个i元素

一个链接第二个i元素

一个链接

效果:类似容易误解的结构选择器还有:nth-child()、:nth-last-child、:only-child,在平时的开发中需要注意一下。