怎么区分CSS的子代和后代选择器

2025-01-21 01:05:12
推荐回答(1个)
回答1:

子选择器
还有一个比较有用的选择器子选择器,即大于符号(>),用于选择指定标签元素的第一代子元素。如右侧代码编辑器中的代码:
.food>li{border:1px solid red;}

这行代码会使class名为food下的子元素li(水果、蔬菜)加入红色实线边框。

[html] view plain copy


[html] view plain copy

食物



  • 水果

    • 香蕉

    • 苹果




  • 蔬菜

    • 白菜

    • 油菜

    • 卷心菜





包含(后代)选择器
包含选择器,即加入空格,用于选择指定标签元素下的后辈元素。如右侧代码编辑器中的代码:
.first span{color:red;}

这行代码会使第一段文字内容中的“胆小如鼠”字体颜色变为红色。
请注意这个选择器与子选择器的区别,子选择器(child selector)仅是指它的直接后代,或者你可以理解为作用于子元素的第一代后代。而后代选择器是作用于所有子后代元素。后代选择器通过空格来进行选择,而子选择器是通过“>”进行选择。
总结:>作用于元素的第一代后代,空格作用于元素的所有后代。
举例:

.food li{
border:1px solid red;/*添加边框样式(粗细为1px, 颜色为红色的实线)*/
}

[html] view plain copy

  • 水果

    • 香蕉

    • 苹果




  • 蔬菜

    • 白菜

    • 油菜

    • 卷心菜