当前位置: 首页 > 面试题库 >

是否有CSS父选择器?

钱雅逸
2023-03-14
问题内容

如何选择<li>锚元素的直接父元素?

例如,我的CSS将是这样的:

li < a.active {
    property: value;
}

显然,可以使用JavaScript进行此操作,但是我希望CSS Level 2本身具有某种解决方法。

我正在尝试设置样式的菜单已由CMS弹出,因此我无法将活动元素移动到<li>元素…(除非我将菜单创建模块作为主题,但我不希望这样做)。

有任何想法吗?


问题答案:

当前无法在CSS中选择元素的父级。

如果有办法,可以在当前的CSS选择器规范中使用:

  • 选择器3级规格
  • CSS 2.1选择器规格

也就是说,选择器第4级工作草案包含一个:has()伪类,它将提供此功能。它将类似于jQuery实现。

li:has(> a.active) { /* styles to apply to the li tag */ }

但是,截至2020年4月, 任何浏览器仍不支持此功能

同时,如果需要选择父元素,则必须使用JavaScript。



 类似资料:
  • 问题内容: 只有子元素存在时,我才能使用css选择器吗? 考虑: 我只想在div没有至少一个子元素的情况下应用div 。 我可以使用的任何选择器吗? 问题答案: 甚至文本节点也将导致父节点不被认为是空的,因此DIV中的UL将阻止DIV被匹配。 如果您执行脚本路线: 当然,jQuery使这样的任务变得更容易,但是这一任务不足以包含整个库。

  • 问题内容: CSS中是否有类似!=(不相等)的内容?例如,我有以下代码: 但是对于某些输入,我需要使此无效。我想通过在输入标签中添加“重置”类来做到这一点,例如 然后只需从CSS跳过此标签即可。 我该怎么做? 我能看到的唯一方法是在输入标签中添加一些类,然后按如下所示重写CSS: 问题答案: 在CSS3中,您可以使用过滤器, 但是并不是所有的浏览器都完全支持CSS3,因此请确保您知道自己正在做什么

  • 问题内容: 我知道有一个选择器。我似乎找不到选择器的使用或文档。有一个吗? 问题答案: CSS中没有伪类。 该动态伪类,像其他伪类,事实上所有其他选择,代表_国家_ ; 它们不代表文档树中的 事件 或 状态之间的转换 。举个例子:伪类代表了一个 被 关注的元素。它不代表刚刚_获得_关注的元素,也不存在伪类来代表刚刚 失去 关注的元素。 同样,这适用于伪类。虽然它表示具有指示设备在其上的元件,既不存

  • 问题内容: 我知道这是在黑暗中拍摄的,但是有没有办法仅使用CSS,CSS2,没有jquery,没有javascript来选择和设置元素祖先的样式?我已经遍历了选择器,但是发布了它,以防万一我错过了一些东西或者有一个聪明的解决方法。 例如,假设我有一个嵌套在div中的类名称为“ test”的表。是否有某种: 问题答案: CSS2或CSS3中没有父选择器之类的东西。实际上,可能永远不会存在,因为一旦开

  • 问题内容: 我想将CSS规则应用于其类之一与指定前缀匹配的任何元素。 例如,我想要一个规则,该规则将适用于以(A和C,但以下代码段中不包含B)开头的类的div : 某种组合: 和 在CSS 2.1下可以使用吗?它可以在任何CSS规范下执行吗? 注意:我知道我可以使用jQuery来模拟。 问题答案: 这不是可行的与CSS2.1,但它有可能与CSS3属性字符串匹配选择(这 是 在IE7 +支持): 注

  • 问题内容: CSS中的星形选择器是否会影响页面渲染性能? 有使用它的警告吗? 问题答案: 在表演方面,史蒂夫·索德斯就是 其中的一员 : CSS选择器的性能影响 简化CSS选择器 报告之一的无耻报价: 优化CSS选择器的关键是着眼于 最右边的选择器 ,也称为关键选择器(巧合?)。这是一个更昂贵的选择器:A.class0007 * {}。尽管此选择器看起来更简单,但匹配浏览器的成本更高。因为 浏览器