html - 如何在列表中使用 CSS 子选择器?

标签 html css css-selectors

我测试了以下代码,但不知道为什么相同的 HTML 结构在列表中不起作用。在带有 pdiv 容器内一切正常。只有 .level1 类中的 p 得到 bold。但是 ul 中的相同结构不起作用。为什么 .level2 类中的 li 元素也是 bold

<ul class="level1">
  <li>Level 1</li>
  <li>Level 1</li>
  <li>Level 1
    <ul class="level2">
      <li>Level 2</li>
      <li>Level 2</li>
      </ul>
  </li>
  <li>Level 1</li>
</ul>


<div class="level1">
  <p>Level 1</p>
  <p>Level 1</p>
  <p>Level 1
    <div class="level2">
      <p>Level 2</p>
      <p>Level 2</p>
    </div>
  </p>
  <p>Level 1</p>
</div>

.level1 > li {
 font-weight: bold;
}

.level1 > p {
  font-weight: bold;
}

最佳答案

<ul class="level1">
  <li>Level 1</li>
  <li>Level 1</li>
  <li>Level 1               // Started here because of this 
    <ul class="level2">     // class2 ul elements are considered as li of class1
      <li>Level 2</li>
      <li>Level 2</li>
      </ul>
  </li>                   
  <li>Level 1</li>
</ul>

而在这里,你的第二个问题,

I would like to add @defau1t answer :
In short, it is impossible toplace a <div> element inside a <p> in the DOM because the opening <div> tag will automatically close the <p> element.

<div class="level1">
  <p>Level 1</p>
  <p>Level 1</p>
  <p>Level 1                 //P tag can't have div tag inside it.  
    <div class="level2">     //Hence it didn't worked
      <p>Level 2</p>
      <p>Level 2</p>
    </div>
  </p>
  <p>Level 1</p>
</div>

关于html - 如何在列表中使用 CSS 子选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18161516/

相关文章:

html - Bootstrap Jumbotron 区域直到页脚才会出现

html - 我怎样才能得到一个顶级元素,比如 xpath 上一个元素的前面?

ruby-on-rails - capybara /闹鬼 : CSS Attribute Selector raising syntax error

html - WooCommerce 仅为特定链接更改链接颜色

html - 文章容器扩展以在标准模式下显示所有内容,在怪癖模式下工作正常。只错了一部分

javascript - 如何使用 ajax 发布 json 对象?

javascript - CSS - 流体水平列表,1 个静态元素,在空间有限时隐藏元素

css - JSF/CSS 属性选择器

javascript - 如何使用 bootstrap-datepicker 沙盒限制 1 个月内的天数选择?

css - 将大内容与小内容对齐