关于ul:first-child中间加空格与不加空格的问题
看到一个同学提的问题:li和first-child之间加不加空格为什么区别很大?
这里给出自己理解的回答,讲的不对的地方还望大家在底下帮忙改正。
加空格后就像之前的 ance desc层次选择器;
li:first-child(不加空格),这里的父元素指的是li标签的父元素;
li :first-child(加空格),这时候因为变成了ance desc层次选择器(跟父子选择器类似,只是比其作用域大),所以其父元素指的就是li标签了,但因为li元素没有子元素了,所以这样的表达不对。换成ol则可以。
但这里还需要注意一个问题(换成ol :first-child 或者 ol>:first-child,他们的本质都是让ol变成所选择的父元素),那就是在h3标签上面再加一个ol标签及子元素li标签(最好大于1个便于看效果,当然这时候的css效果你要相应更改一下,不然排版乱了)。这时候就会看到ol标签背景变绿了。