在我们日常开发的时候,我们的代码很复杂,因此有可能会出现改一处的CSS,其他地方的样式也会受影响的情况,这里简单的总结一下CSS嵌套选择,使得避免以上情况。

CSS 选择器嵌套

4种组合方法
  • descendant selector (space)
  • child selector (>)
  • adjacent sibling selector (+)
  • general sibling selector (~)
descendant selector (space)

留有空格的选择器
CSS选择器嵌套
可以看到我们的选择器是div p,就是div跟p之间有空格,这个的意思是选择div元素以内的所有的p元素,也就是全部子元素。

child selector (>)

这个 > 选择器会选择所有的直接自元素,注意跟上面的所有子元素的区别.
CSS选择器嵌套
我们可以看到 paragraph 3 in the div 没有选择,是因为该p元素内容是被section包裹着的,也就是不是div的直接自元素,因此背景不会是黄色。

adjacent sibling selector (+)

将会选择所有该元素同父元素的邻近的所有元素.注意有sibling,也就是同父元素,adjacent,也就是邻近的元素.
CSS选择器嵌套
div的父元素是body,然后在body内div的adjacent,也就是邻近的元素是paragraph 3,not in the div 内容。

general sibling selector (~)

div~p,就是div元素后面的所有p元素。
CSS选择器嵌套
在这里我们可以看到div元素后面的paragraph3,paragraph4都被选择。

最后附上两个非常好用的参考网站
点击这里
点击这里

相关文章: