CSS的子选择器与后代选择器的区别

子选择器

还有一个比较有用的选择器子选择器,即大于符号(>),用于选择指定标签元素的第一代子元素如右侧代码编辑器中的代码:

.food>li{border:1px solid red;}

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

[html]  view plain  copy
  1. <style type="text/css">  
  2. .food>li{border:1px solid red;}/*添加边框样式(粗细为1px, 颜色为红色的实线)*/  
  3. </style>  

[html]  view plain  copy
  1. <h1>食物</h1>  
  2. <ul class="food">  
  3.     <li>水果  
  4.         <ul>  
  5.             <li>香蕉</li>  
  6.             <li>苹果</li>  
  7.             <li></li>  
  8.         </ul>  
  9.     </li>  
  10.     <li>蔬菜  
  11.         <ul>  
  12.             <li>白菜</li>  
  13.             <li>油菜</li>  
  14.             <li>卷心菜</li>  
  15.         </ul>  
  16.     </li>  
  17. </ul>  

包含(后代)选择器

包含选择器,即加入空格,用于选择指定标签元素下的后辈元素。如右侧代码编辑器中的代码:

.first  span{color:red;}

这行代码会使第一段文字内容中的“胆小如鼠”字体颜色变为红色。

请注意这个选择器与子选择器的区别,子选择器(child selector)仅是指它的直接后代,或者你可以理解为作用于子元素的第一代后代。而后代选择器是作用于所有子后代元素。后代选择器通过空格来进行选择,而子选择器是通过“>”进行选择。

总结:>作用于元素的第一代后代,空格作用于元素的所有后代。

举例:

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

}

[html]  view plain  copy
  1. <ul class="food">  
  2.     <li>水果  
  3.         <ul>  
  4.             <li>香蕉</li>  
  5.             <li>苹果</li>  
  6.             <li></li>  
  7.         </ul>  
  8.     </li>  
  9.     <li>蔬菜  
  10.         <ul>  
  11.             <li>白菜</li>  
  12.             <li>油菜</li>  
  13.             <li>卷心菜</li>  
  14.         </ul>  
  15.     </li>  
  16. </ul>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值