首页 > web前端 > css教程 > 如何根据 CSS 中特定子元素的存在来设置父元素的样式?

如何根据 CSS 中特定子元素的存在来设置父元素的样式?

Barbara Streisand
发布: 2024-11-26 04:12:08
原创
201 人浏览过

How Can I Style a Parent Element Based on the Existence of a Specific Child Element in CSS?

如果父元素有 CSS 子元素,则将样式应用于父元素

在 CSS 中,可以根据子元素的存在来设置父元素的样式使用 has() 选择器实现。

要在父级包含类为“sub”的子级时将样式应用于父级,请使用以下 CSS规则:

ul li:has(ul.sub) {
  /* Parent styles */
}
登录后复制

例如,如果您有以下 HTML:

<ul class="main">
  <li>Parent 1</li>
  <li>Parent 2</li>
  <li>Parent 3 with Child
    <ul class="sub">
      <li>Child of Parent 3</li>
    </ul>
  </li>
  <li>Parent 4</li>
</ul>
登录后复制

以及以下 CSS:

ul li:has(ul.sub) {
  background-color: lightblue;
}
登录后复制

输出将显示“Parent 3 with Child”为浅蓝色,表示父级 (li) 有一个类别为“sub”的子级。

请注意问题的建议答案中提到的 $ 选择器尚未在 CSS4 中标准化。相反,has() 选择器是实现此功能的受支持方法。

以上是如何根据 CSS 中特定子元素的存在来设置父元素的样式?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板