検索

ホームページ  >  に質問  >  本文

css3不包括

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

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

<ul>
<li></li>
<li></li>
<li></li>
</ul>
大家讲道理大家讲道理2782日前532

全員に返信(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(:last-child){
    }

    返事
    0
  • キャンセル返事