首頁  >  問答  >  主體

css3不包括

我这下面有一组li,我想给他们加个红色背景,但是就是除了最后一个不加要怎么写?
我用下面那样写没用

li:not(li:nth-last-child){
   background:red;
}

<ul>
<li></li>
<li></li>
<li></li>
</ul>
大家讲道理大家讲道理2767 天前516

全部回覆(2)我來回復

  • 高洛峰

    高洛峰2017-04-17 11:29:48

    不是這樣?

    li:not(:last-of-type){
    }
    /**:last-of-type指的是相对父元素的最后一个li元素**/

    二樓的答案,也可以

    li:not(:last-child){
    }
    /**:last-child指的是li元素而且这个li元素是父元素的最后一个元素**/
    
    /**等同于楼主的**/
    li:not(:nth-last-child(1)){
    }

    兩者有什麼不同?

    對於ul元素子元素全是li元素時,兩者是相同的

    <ul>
        <li>
        <li>
        <li><!--第一个和第二个选择器都会忽略这个-->
    <ul>

    但是如果ul元素子元素不全是li而且最後一個元素也不是li時

    <ul>
        <li>
        <li>
        <p>
        <li> <!--这时候第一个选择器会忽略这个,而第二个选择器会全选上-->
        <i>
    <ul>

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 11:29:48

    li:not(:最後一個孩子){
    }

    回覆
    0
  • 取消回覆