如何用CSS或jQuery设置第一个和最后一个li的样式?

如何使用CSS或jQuery设置第一个(顶级) li和最后一个(顶级) li的样式?

我正在使用CSS来设置第一个li样式,但它也是每个二级ul第一个li样式,所以我怎样才能让它只设置主要1中的li和最后一个带有Main 6的li

这是我的代码:

  ul li:first-child { width: 800px; border:1px solid #fc5604; border-top-width:thin; (2px) }  

和HTML:

  

您必须使用直接子选择器 :

 ul > li:first-child 

此规则将影响仅在

    之前的

    • 。 这应该适用于jQuery和css。 并非所有浏览器都可以使用伪类(尤其是last-child

      第一项很简单,我看到你已经有了:first-child:last-child也是如此,但它在IE中的支持有限。 但是,如果列表项的数量是固定的(在我看来),你实际上可以用CSS单独定位最后一项。 注意!

       li + li + li +li + li + li { background:pink; } 

      这是一个小提琴: http : //jsfiddle.net/jgRZQ/1/

      +选择器基本上是针对下一个兄弟(如果它匹配你的类型),所以这是计算到最后一个的问题。 是的,这适用于IE7。 🙂

      为第一个ul标签指定一个类名。

        

      然后你可以像下面的CSS一样使用:

        
        

      如果您想使用jQuery,可以使用以下内容:

       $('#nav > ul li').first().css('background-color', 'red'); $('#nav > ul li').last().css('background-color', 'red'); 

      ^应该做的伎俩。