Adblock Plus - 白名单规则

时间:2016-01-27 16:55:05

标签: filter adblock

我在页面上有一个如下所示的元素:

<a data-mytype="myvalue" href="http://example.com/promo/page">...</a>

此元素被以下ABP规则隐藏(存在于我使用的其中一个过滤器订阅中):

##[href*="/promo"]

如何编写白名单规则,以排除Adblock Plus根据特定属性/值对隐藏该元素 - 例如data-mytype="myvalue"

我已经检查了Writing Adblock Plus filtersAdblock Plus filters explained页面,但我还没想出如何(成功)根据指定的属性编写过滤器。

这两个页​​面都提到了标准的CSS选择器应该可以工作,但这似乎不起作用:

@@a[data-mytype="myvalue"]

我也尝试了以下内容:

#@#[href*="/promo"][data-mytype="myvalue"]

我错过了什么?

注意:我不想要一个只取消##[href*="/promo"]的规则,我正在寻找一个仅根据特定属性/值对将元素列入白名单的规则。

编辑(2016-03-17):澄清了我的问题。

2 个答案:

答案 0 :(得分:2)

首先禁用现有规则:

#@#[href*="/promo"]

请注意,选择器必须相同,否则元素隐藏异常不会适用。然后,您可以添加自己的规则,该规则将考虑data-mytype属性:

##[href*="/promo"]:not([data-mytype="myvalue"])

这两个规则的组合应该具有您想要的效果。供参考::not() CSS pseudo-class

答案 1 :(得分:0)

###yourdiv #@##yourdiv ##.yourclass #@#.yourclass可以禁用#@#[data-mytype="myvalue"]规则

在您的情况下:{{1}}