如何在不知道父元素的情况下选择第n个孩子?

fom*_*icz 7 css css-selectors css3

在我不知道父元素的情况下,我无法想出选择第n个元素,最后一个元素或第一个元素的方法.nth-child存在,但仅限于儿童,例如:

<div>
   <p>One</p>
   <p>Two</p>
</div>
Run Code Online (Sandbox Code Playgroud)

p:last-child选择"Two"段落,并p:first-child选择"One"段落.但是,当我有动态代码并且不知道父名称是什么,甚至是父母的真实情况(可能是div,span,anchor,ul等)时呢?

例如:

<youdontknowwhat!>
   <p class="select-me">One</p>
   <p class="select-me">Two</p>
</youdontknowwhat!>
Run Code Online (Sandbox Code Playgroud)

我如何在这里选择第二段?(我无法选择,youdontknowwhat!因为我真的不知道它是什么元素(它只是一个假设的名字).

为何会出现first-child,last-child以及nth-child选择和NO :first,:last,:nth(像.select-me:first)?

Bol*_*ock 27

怎么会:first有所不同:first-child?每个HTML元素都是DOM中某个其他元素的子元素,除了<html>它是根元素. - BoltClock

这是因为你不知道父元素. - fomicz

你不需要知道父元素:first-child:nth-child()工作.即使您没有指定父元素,它们也会正常工作.

保证以下选择器匹配任何适当的.select-me元素,无论其父元素是什么:

.select-me:nth-child(2)
Run Code Online (Sandbox Code Playgroud)