Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: pages/filter-cheatsheet.html

Issue 29482703: Issue 5353 - Add advanced element hiding filters documentation (Closed) Base URL: https://hg.adblockplus.org/web.adblockplus.org/
Patch Set: more changes Created July 17, 2017, 6:19 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | pages/filters.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pages/filter-cheatsheet.html
===================================================================
--- a/pages/filter-cheatsheet.html
+++ b/pages/filter-cheatsheet.html
@@ -165,16 +165,20 @@
{
vertical-align: top;
padding: 5px;
}
td > p:first-child
{
margin-top: 0px;
}
+ td > code
+ {
+ overflow-wrap: break-word;
+ }
.syntax
{
width: 10%;
}
.purpose
{
width: 45%;
}
@@ -787,8 +791,61 @@
<td>{{s137 Matches div elements that end the style specified}}</td>
</tr>
<tr>
<td><code>##div[style*=&quot;width:300px;height:250px;&quot;]</code></td>
<td>{{s138 Matches div elements that containing the style specified}}</td>
</tr>
</table>
<p>{{s139 The above filters are only examples of valid element hiding rules. Any <a href="http://www.w3.org/TR/css3-selectors/">CSS selector</a> supported by Firefox can be used for element hiding.}}</p>
+
+<h3 id="elementhideemulation">{{abp-pseudo-select-title Extended CSS selectors (Adblock Plus specific)}}</h3>
+
+<p>{{abp-pseudo-select-explanation-p1 In some situations standard CSS selectors are not sufficient, for those cases you can also use the following Adblock Plus specific pseudo-selectors:}}</p>
+
+<table>
+ <col class="selector">
+ <col class="selectorPurpose">
+ <tr>
+ <th>{{pseudo-class-header Pseudo-class}}</th>
+ <th>{{s127 Purpose}}</th>
+ </tr>
+ <tr>
+ <td><code>:-abp-properties()</code></td>
+ <td>{{abp-properties-purpose Select an element if its CSS style properties match the one specified}}</td>
kzar 2017/07/18 10:26:39 I think it should be "...match what's specified",
hub 2017/07/18 15:50:17 Done.
+ </tr>
+ <tr>
+ <td><code>:-abp-has()</code></td>
+ <td>{{abp-has-purpose Select an element if its content subtree match the selector specified}}</td>
+ </tr>
+</table>
+
+<p>{{abp-pseudo-select-explanation-p2 When writing element hiding filters that use those you must use the <code>#?#</code> syntax (replace <code>##</code> with <code>#?#</code>). You must also make those such filter specific to one or more domains. Some examples:}}</p>
kzar 2017/07/18 10:26:39 A couple of small tweaks: "When writing element h
hub 2017/07/18 15:50:17 Done.
+
+<table>
+ <col class="selector">
+ <col class="selectorPurpose">
+ <tr>
+ <th>{{s126 Selector}}</th>
+ <th>{{s127 Purpose}}</th>
+ </tr>
+ <tr>
+ <td><code>example.com#?#div:-abp-properties(width:300px;height:250px;)</code></td>
+ <td>{{abp-properties-example1 Matches <code><fix>div</fix></code> elements whose style contain the specified properties}}</td>
+ </tr>
+ <tr>
+ <td><code>example.com#?#div:-abp-has(&gt; div &gt; img.advert)</code></td>
+ <td>{{abp-has-example1 Matches <code><fix>div</fix></code> elements that contain as a direct descendant a <code><fix>div</fix></code> containing an <code><fix>img</fix></code> with the class "advert"}}</td>
+ </tr>
+ <tr>
+ <td><code>example.com#?#div:-abp-has(&gt; div &gt; img:-abp-properties(width:300px;height:250px;))</code><br><code>example.com#?#div:-abp-has(&gt; div &gt; img:-abp-properties(WidTh:300px;hEigHt:250px;))</code></td>
+ <td>{{abp-has-example2 Both these filters match <code><fix>div</fix></code> elements that contain as a direct descendant element matching the selector: a <code><fix>div</fix></code> that has a child <code><fix>img</fix></code> whose style properties contain the specified properties. The CSS properties are checked case-insensitively}}</td>
kzar 2017/07/18 10:26:39 I think you should add "an" after "descendant.".
kzar 2017/07/18 10:26:39 Please break the second example off into its own r
kzar 2017/07/18 10:26:40 I think the part about the selector needs to be ex
hub 2017/07/18 15:50:17 Done.
hub 2017/07/18 15:50:17 Done.
hub 2017/07/18 15:50:17 ok
+ </tr>
+ <tr>
+ <td><code>example.com#?#div &gt; img:-abp-properties(width:*px;height:250px;)</code></td>
+ <td>By using a wildcard <code>*</code>, this filter matches <code>img</code> whose CSS style properties have <code>width</code> specified in pixels and <code>height</code> of 250 pixels</td>
kzar 2017/07/18 10:26:40 Please add "an" before "img", "a" before "width" a
hub 2017/07/18 15:50:17 Done.
+ </tr>
+ <tr>
+ <td><code>example.com#?#div &gt; img:-abp-properties(/width: 3[2-8]px;/)</code></td>
+ <td>By using a regular expression, this filter matches <code>img</code> whose CSS style properties have <code>width</code> between 32 and 38 pixels</td>
+ </tr>
+</table>
+
« no previous file with comments | « no previous file | pages/filters.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld