uBlock 规则不适用

uBlock rule doesn't grip

uBlock 正在阻止来自某些网站的广告,但它留下了大的(高度)div,它在加载后扩展了网站并将正文向下推。使用“块是元素”给我

###js-ad-container-XYZ

XYZ 是一个随机字符串作为选择器并使用此建议,div 被删除,但在转到该站点上的另一篇文章后再次出现。

为了通配随机数,我发现 this blog post 建议使用 www.annoyingwebsite.com##div[id^="start_of_div_name_before__randomnumber"] 因此我尝试将规则更改为

that-site.com##div[id^="js-ad-container"]

但这似乎不起作用,因为过滤器编辑器在行中显示错误,并且巨大的 div 仍在站点上单击过滤器编辑器中的预览。我还尝试在 div 之前使用三个 ###,但这也无济于事。我想这是一件应该可行的简单事情,所以我希望我做错了......

编辑:我与检查员核实过,该元素确实是一个 div,其 id 与它出现在编辑器中时使用上下文菜单中的“块元素”时相同。

#js-ad-container-XYZ表示要屏蔽id为js-ad-container-XYZ的元素。第二次尝试时,您说只阻止具有该 ID 的 div 节点。这将做同样的事情,更坏的情况是它不会匹配任何节点。我发现你通常需要将块扩展到任意数量的父节点,直到你阻塞相关容器。为此,您使用 nth-ancestor():

that-site.com##div[id^="js-ad-container"]:nth-ancestor(1)