CSS子选择器(>)不使用某些属性

Pra*_*K C 3 html css css-selectors

当我尝试使用">"选择父元素的所有直接子元素时,它可以使用一些属性,如border和all,但不能使用像color,font-weight等字体属性.

我的HTML是

<ul>
  <li>Item 1</li>
  <li>
    <ol>
      <li>Subitem 2A</li>
      <li>Subitem 2B</li>
    </ol>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

CASE1 CSS:

ul>li {
    color:#F00;
}
Run Code Online (Sandbox Code Playgroud)

但是这里的颜色:#F00属性应用于所有"li"元素,但我希望它只适用于"ul"的直接"li".

案例2 CSS:

ul>li {
  border: solid 1px #000;
}
Run Code Online (Sandbox Code Playgroud)

这个适用于我,边界只适用于直接的李子.

我知道可以通过覆盖其他一些类来解决它.但我想知道,为什么有些css属性会被继承而有些则没有.

Pra*_*K C 6

由于某些CSS属性的默认继承功能,它正在发生.默认情况下,这些属性的值将传输给子级.

W3C的这个文档给出了各种CSS属性的详细继承列表.完整的财产表

  • @BoltClock那些答案正在谈论如何覆盖我已经知道的条件.但我寻找的是这种现象背后的原因. (4认同)