【问题标题】:How do I match a parent who has a specific child? [duplicate]如何匹配有特定孩子的父母? [复制]
【发布时间】:2009-12-17 07:34:18
【问题描述】:

可能重复:
Complex CSS selector for parent of active child

我想匹配一个 id 为“breadCrumb”的,只有当它有一个子 span id“userName”时。

匹配:

<div id="breadCrumb" class="nav">
    <span id="userName">esac</span>
</div>

但不匹配:

<div id="breadCrumb" class="nav">
    <span id="navtrail">...</span>
</div>

我想设置 #breadCrumb { display: none; },但我不想在第二种情况下隐藏它。

【问题讨论】:

  • 设计上不可能。 Duplicate question.
  • 你可以使用一些 JS 来解决这个问题。我最初将面包屑隐藏在 CSS 中,然后在页面加载时使用 JS 显示它。

标签: css css-selectors


【解决方案1】:

首先,这两个元素不在同一个页面上,是吗?如果是这样,则它是无效的 HTML,因为您不能(不应该)重复 ID。

你不能用直接的 CSS 做到这一点。我的建议是重申这个问题:

<div id="breadCrumb" class="nav userName">
    <span>esac</span>
</div>

<div id="breadCrumb" class="nav navtrail">
    <span>...</span>
</div>

然后您可以执行以下操作:

#breadCrumb.navTrail { display: none; }

div.nav.navTrail { display: none; }

IE6 不支持应用多个类选择器(上一个示例)。

【讨论】:

  • 不,它们不在同一页面上。在这个网站上,我可以自定义 CSS,但它适用于网站上的每个页面。
猜你喜欢
  • 1970-01-01
  • 2015-08-30
  • 2011-01-24
  • 2021-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多