代码之家  ›  专栏  ›  技术社区  ›  00Saad

为什么before伪选择器不能正常工作,除非指定了类?

  •  -2
  • 00Saad  · 技术社区  · 6 年前

    HTML格式

    <label>
      <Input type="checkbox"/>
      <span class="check-label">Remember me</span>
    </label>
    

    CSS格式

    input[type="checkbox"] + .check-label:before {
      content: "before";
    }
    

    所以当我使用一个类时,这个css就像预期的那样工作,但是当我这样做时:

    input[type="checkbox"] + label > span:before {
      content: "before";
    }
    

    before内容不显示。我不喜欢使用一堆类和ID,除非我必须这样做,那么为什么在这个特殊的情况下我不得不这样做呢?

    1 回复  |  直到 6 年前
        1
  •  1
  •   mtr.web    6 年前

    我同意伊舍伍德的观点,但我认为你真正想要的是:

    input[type="checkbox"] + span:before {
      content: "before";
    }