代码之家  ›  专栏  ›  技术社区  ›  fire

将背景色应用于li,但不应用嵌套的。

  •  1
  • fire  · 技术社区  · 14 年前

    我已经嵌套了ul/li,问题是,如果您向顶部li添加背景色,因为其中有嵌套项,整个列表中的背景色似乎是这个,而不仅仅是顶部li(我认为这是因为它扩展了顶部li的高度)。

    是否可以只将背景色应用于顶部li?

    我希望这是有道理的!

    7 回复  |  直到 14 年前
        1
  •  1
  •   Prutswonder    14 年前

    你说的是高层 li 但是我认为你的意思是根 ,其中包含子元素 元素也是如此。在这种情况下,可以按如下方式设置背景色:

    .myroot>ul>li { background-color: Yellow }
    

    注意:上面的示例需要一个包装元素(通常是 DIV )具有类名“myrot”。

    this article 有关CSS子选择器的详细信息。

        2
  •  2
  •   amphetamachine    14 年前

    有关系选择器 > 意思是“直系子女”:

    ul > li {
        background-color: <your color>;
    }
    

    但是我在使用跨平台兼容性时遇到了一些问题。您还可以设置多个级别的规则:

    ul li {
        background-color: <your color>;
    }
    
    ul li li {
        background-color: none;
    }
    
        3
  •  1
  •   Dominique    14 年前

    我所理解的是,你有一个保险商实验室,里面有李(我们称之为“家长”),李也有一个保险商实验室,里面有李(我们称之为孩子)?您将背景应用于父级,并且它在子级下也可见?

    由于孩子位于家长内部,他们必须改变他的身高,所以背景比强光大,有两种方法可以阻止,你可以(如前所述)把另一个背景放在孩子的身上,或者你可以在家长内部放一个跨度之类的东西,把背景放在跨度上而不是li.parent。

        4
  •  0
  •   Ramuns Usovs    14 年前

    好吧,你总是可以对李的孩子使用不同的背景色。

        5
  •  0
  •   Haim Evgi    14 年前

    使用jquery为第一个li提供一个特殊类

    `$("ul li:first")`.addClass('special_bg')
    

    =仅获取<-ul->的第一个<-li->元素

        6
  •  0
  •   Dan Iveson    14 年前

    这取决于您的CSS。您可以定义一个顶级的LI类,并使用它来设置背景色。

        7
  •  0
  •   Aaron Digulla    14 年前

    孩子总是从父母那里继承属性;这就是为什么它被称为 级联 样式表。

    我建议付出一切 li 元素是默认的背景色,只需覆盖顶层元素(例如使用特殊类)。