首页 > css中使用:nth-child()的时候不存在:nth-child(1),直接从nth-child(2)开始,是怎么回事?

css中使用:nth-child()的时候不存在:nth-child(1),直接从nth-child(2)开始,是怎么回事?

有人遇到过相同的情况吗?
昨天遇到这样的情况,记得之前也好像遇到过类似的。


找到答案的,原来:nth-child()是从父标签的子标签中计算的,不论你选择的是什么,都计算在内。
以后还是用:nth-of-type()好一些。

详情请转到:张鑫旭大神的博客:CSS3选择器:nth-child和:nth-of-type之间的差异http://www.zhangxinxu.com/wordpress/2011/06/css3%E9%80%89%E6%8B%A9%E5%99%A8nth-child%E5%92%8Cnth-of-type%E4%B9%8B%E9%97%B4%E7%9A%84%E5%B7%AE%E5%BC%82/


E F:nth-child(n)表示选择父元素E的第n个子元素F
E:nth-of-type(n)表示选择父元素内具有指定类型的第n个E元素


我也遇到过这样的情况,其实很简单,打个比方 nth-child(1)没有找到,因为你要找的那个孩子是在父容器里的第二个,所以才要nth-child(2)才能找到第一个孩子。


p: nth-child(n) //p标签且为第n个子元素
p: nth-of-type(n) //第n个p标签

nth-child(n) 的限制条件为两个,是且的关系,只满足一个就找不到。我写的这篇文章中,有对这个问题详细的讲解和代码示例,网址为:
https://.com/a/1190000005716073


不是没找到,而是找到了其他的。child统计的是所有标签,包括文字节点!所以,看看父标签内有什么东西吧。
PS: 这种具体问题的提问,拜托以后发代码上来吧,这样别人才能找到问题所在呀。

【热门文章】
【热门文章】