css child selector expression 理解混淆 下面代码走一遍

标签 css css-selectors

在 CSS 中这是什么意思? .wb 是一个类,我也知道 .wb-chIld 可能是它的子类,它继承了它的属性。现在什么是 > 和 * ?什么情况下我们会写这样的代码?

.wb, .wb-child > * {
     border-width: 2px;
}

最佳答案

让我们分解一下。

所以我们有:

.wb, .wb-child > * {
     border-width: 2px;
}

.wb:是一个类,任何有这个类的东西都会有下面定义的样式。

.wb, .wb-child > *:现在我们有一个逗号 , 这允许我们在一个样式上有多个选择器。所以在这种情况下有 2 个选择器,.wb.wb-child > *

.wb-child > *:现在让我们看一下这是在选择什么。它指向 .wb-child 并选择所有(* 选择所有元素)该类的直接子级。

让我们在演示中看一下。

.wb,
.wb-child > * {
  border: 1px solid red;
  margin: 5px;
}
<div class="wb">
  This is some test text.
  <div class="wb-child">
    <span>I am a immediate span child of .wb-child</span>
    <div>I am a immediate div child of .wb-child
      <div>I am a child of this div, not an immediate child of .wb-child</div>
    </div>
  </div>
</div>

在此演示中,我们为 .wb 所有 .wb-child 子级( > *)。请注意 .wb-child 本身没有边框,只有它的 child 有。

.wb-child div 中的 div 也不受影响,这是因为它不是一个直接的.wb-child 的 child 。

了解更多关于*选择器的信息here .

关于css child selector expression 理解混淆 下面代码走一遍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30772848/

相关文章:

css - 为什么 Chrome 开发者工具和实际的 Chrome 渲染不同?

javascript - 如何使用 javascript 将表 th 转换为 li 并将 td 转换为 <p>?

css - 是否有针对最后一类的CSS选择器?

css - Bootstrap 导航栏 x 滚动

html - 在 CSS 中检测小型设备(如手机或平板电脑)的最佳方法是什么?

css - 如何解决这个 css float 问题?

asp.net - jQuery 帮助 - 如何仅选择包装集中的第一项?

css - 仅在某些标签内的标签上使用 css 样式?

css - 是否有 CSS 父级选择器?

html - 样式不会被覆盖