首页 > web前端 > css教程 > 正文

如何在CSS中针对多个父母的第n个孩子?

Barbara Streisand
发布: 2024-10-23 22:01:02
原创
401 人浏览过

How to Target nth-child Across Multiple Parents in CSS?

CSS:跨多个父级定位第 n 个子元素

问题

考虑以下 HTML 结构:

<code class="html"><div class="foo">
  <ul>
    <li>one</li>
    <li>two</li>
  </ul>
  <ul>
    <li>three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
登录后复制

目标是将列表项“一”和“三”设置为红色。但是,使用 CSS 选择器:

<code class="css">.foo li:nth-child(1),
.foo li:nth-child(3)</code>
登录后复制

为每个 ul 的第一个子元素设置样式。

解决方案

仅 CSS 方法:

不幸的是,仅使用 CSS 无法在多个父级中选择第 n 个子级。 :nth-child() 和同级组合器都不允许进行此类选择。

Javascript 或 DOM 操作:

要实现此类目标,您可以诉诸 Javascript 或 DOM操纵技术。例如,使用 jQuery:

<code class="javascript">$('.foo li:eq(0), .foo li:eq(2)').css('color', 'red');</code>
登录后复制

类或 ID 标记:

或者,您可以使用类或 ID 显式标记目标列表项。例如:

<code class="html"><div class="foo">
  <ul>
    <li class="target">one</li>
    <li>two</li>
  </ul>
  <ul>
    <li class="target">three</li>
  </ul>
  <ul>
    <li>four</li>
  </ul>
</div></code>
登录后复制

然后,使用标记的类或 ID 进行样式设置:

<code class="css">.foo .target {
  color: red;
}</code>
登录后复制

以上是如何在CSS中针对多个父母的第n个孩子?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!