ABP自定义过滤器-如何选择/隐藏父元素

问题描述 投票:12回答:3

我想知道是否有一种方法可以隐藏已标识元素的父元素。

例如:

<div>
<span id="abx">some garbage content</span>
<div>other garbage containers not having any class or id</div>
</div>

选择abxAdBlockPlus的自定义过滤器将是:

##span#abx

但是如何选择其父元素?因为我们需要隐藏已标识元素的所有同级。

css adblock
3个回答
6
投票

您不能这样做,因为CSS 3的限制。

Selectors Level 4中实现relational pseudo-class: :has()之后,可以使用以下语法:

example.com##div:has(> #abx)

[Current support此功能。


2
投票

可能会使用关系伪类:has,但目前不支持。

(主题选择器已从规范中删除:http://css4.rocks/selectors-level-4/subject-of-selector.php

由于performance,此功能以前不是CSS的一部分。

uBlock Origin中有polyfill。


0
投票

您可以使用AdblockPlus CCS选择器。

#?#div:-abp-has(span###abx)

https://adblockplus.org/development-builds/new-syntax-for-advanced-element-hiding-rules

© www.soinside.com 2019 - 2024. All rights reserved.