- From: Elika Etemad via cvs-syncmail <cvsmail@w3.org>
- Date: Mon, 28 Mar 2011 20:27:09 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/selectors4
In directory hutz:/tmp/cvs-serv1564
Modified Files:
Overview.html Overview.src.html
Log Message:
Editorial cleanup of :matches/:not section. Fix some anchors.
Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/selectors4/Overview.html,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- Overview.html 23 Mar 2011 23:03:29 -0000 1.6
+++ Overview.html 28 Mar 2011 20:27:07 -0000 1.7
@@ -15,13 +15,13 @@
<h1 id=title>Selectors Level 4</h1>
- <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 23 March 2011</h2>
+ <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 28 March 2011</h2>
<dl>
<dt>This version:
- <dd> <!-- <a href="http://www.w3.org/TR/2011/ED-selectors4-20110323">
- http://www.w3.org/TR/2011/PR-selectors4-20110323</a> -->
+ <dd> <!-- <a href="http://www.w3.org/TR/2011/ED-selectors4-20110328">
+ http://www.w3.org/TR/2011/PR-selectors4-20110328</a> -->
<a href="http://dev.w3.org/csswg/selectors4">
http://dev.w3.org/csswg/selectors4</a>
@@ -155,11 +155,11 @@
<li><a href="#logical-combination"><span class=secno>4. </span> Logical
Combinations</a>
<ul class=toc>
- <li><a href="#grouping"><span class=secno>4.1. </span> Groups of
- selectors </a>
+ <li><a href="#grouping"><span class=secno>4.1. </span> Selector Groups
+ </a>
<li><a href="#matches"><span class=secno>4.2. </span> The Matches-Any
- Psuedo-class: ‘<code class=css>:matches()</code>’</a>
+ Pseudo-class: ‘<code class=css>:matches()</code>’</a>
<li><a href="#negation"><span class=secno>4.3. </span> The Negation
Pseudo-class: ‘<code class=css>:not()</code>’</a>
@@ -800,15 +800,14 @@
<a href="#universal-selector">universal selector</a>. No other type
selector or universal selector is allowed in the sequence.
- <p>A <dfn id=simple-selector><a name=simple-selectors-dfn></a><a
- href="#simple">simple selector</a></dfn> is either a <a
- href="#type-selectors">type selector</a>, <a
- href="#universal-selector">universal selector</a>, <a
+ <p>A <dfn id=simple-selector><a name=simple></a><a href="#simple">simple
+ selector</a></dfn> is either a <a href="#type-selectors">type
+ selector</a>, <a href="#universal-selector">universal selector</a>, <a
href="#attribute-selectors">attribute selector</a>, <a
href="#class-html">class selector</a>, <a href="#id-selectors">ID
selector</a>, or <a href="#pseudo-classes">pseudo-class</a>.
- <p><dfn id=combinators0>Combinators</dfn> are punctuation that represent a
+ <p><dfn id=combinator>Combinators</dfn> are punctuation that represent a
particular kind of relationship between the compound selectors on either
side. Combinators in Selectors level 4 include: whitespace,
"greater-than sign" (U+003E, <code>></code>), "plus
@@ -914,7 +913,7 @@
<h2 id=logical-combination><span class=secno>4. </span> Logical
Combinations</h2>
- <h3 id=grouping><span class=secno>4.1. </span> Groups of selectors</h3>
+ <h3 id=grouping><span class=secno>4.1. </span> Selector Groups</h3>
<p>A comma-separated list of selectors represents the union of all elements
selected by each of the individual selectors in the list. (A comma is
@@ -960,38 +959,63 @@
grouped, only the rule for <code>h2..foo</code> is dropped.)</p>
</div>
- <h3 id=matches><span class=secno>4.2. </span> The Matches-Any Psuedo-class:
+ <h3 id=matches><span class=secno>4.2. </span> The Matches-Any Pseudo-class:
‘<code class=css>:matches()</code>’</h3>
- <p>The <code>:matches(<var>X</var>)</code> pseudo-class is a functional
- notation taking a comma-separated list of <a href="#compound">compound
- selectors</a> as an argument. It represents an element that is represented
- by any of its arguments.
+ <p>The matches pseudo-class, <code>:matches(<var>X</var>)</code>, is a
+ functional notation taking a <a href="#grouping">selector group</a> as an
+ argument. It represents an element that is represented by its argument.
- <p><code>:matches()</code> may not be nested;
- <code>:matches(:matches(...))</code> is invalid. Also pseudo-elements are
- not valid within <code>:matches()</code>.
+ <p>In Selectors Level 4, only <a href="#compound">compound selectors</a>
+ are allowed within <code>:matches()</code>: <a
+ href="#combinator">combinators</a> are not allowed. Additionally,
+ <code>:matches()</code> may not be nested within itself or within
+ <code>:not()</code>: <code>:matches(:matches(...))</code> and
+ <code>:not(:matches(...))</code> are invalid.
- <p>Default namespace declarations do not affect the argument of the
- matches-any pseudo-class unless the argument is a universal selector or a
- type selector. (See below for examples.)
+ <p>Pseudo-elements cannot be represented by the matches pseudo-class; they
+ are not valid within <code>:matches()</code>.
+
+ <p>Default namespace declarations do not affect the subject of any selector
+ within a matches-any pseudo-class unless the argument is an explicit
+ universal selector or a type selector.
+
+ <div class=example>
+ <p>For example, following selector matches any element that is being
+ hovered or focused, regardless of its namespace. In particular, it is not
+ limited to only matching elements in the default namespace that are being
+ hovered or focused.</p>
+
+ <pre>*|*:matches(:hover, :focus)</pre>
+
+ <p>The following selector, however, represents only hovered or focused
+ elements that are in the default namespace, because it uses an explicit
+ universal selector within the <code>:matches()</code> notation:</p>
+
+ <pre>*|*:matches(*:hover, *:focus)</pre>
+ </div>
<h3 id=negation><span class=secno>4.3. </span> The Negation Pseudo-class:
‘<code class=css>:not()</code>’</h3>
<p>The negation pseudo-class, <code>:not(<var>X</var>)</code>, is a
- functional notation taking a comma-separated list of <a
- href="#compound">compound selectors</a> as an argument. It represents an
- element that is not represented by any of its arguments.
+ functional notation taking a <a href="#grouping">selector group</a> as an
+ argument. It represents an element that is not represented by its
+ argument.
- <p>Negations may not be nested; <code>:not(:not(...))</code> is invalid.
- Also pseudo-elements are not valid within <code>:not()</code>.
+ <p>In Selectors Level 4, only <a href="#compound">compound selectors</a>
+ are allowed within <code>:matches()</code>: <a
+ href="#combinator">combinators</a> are not allowed. Additionally,
+ negations may not be nested within itself or within
+ <code>:matches()</code>: <code>:not(:not(...))</code> and
+ <code>:matches(:not(...))</code> are invalid.
- <div class=example>
- <p>Examples:</p>
+ <p>Pseudo-elements cannot be represented by the negation pseudo-class; they
+ are not valid within <code>:not()</code>.
- <p>The following selector matches all <code>button</code> elements in an
- HTML document that are not disabled.</p>
+ <div class=example>
+ <p>For example, the following selector matches all <code>button</code>
+ elements in an HTML document that are not disabled.</p>
<pre>button:not([DISABLED])</pre>
@@ -999,33 +1023,16 @@
<pre>*:not(FOO)</pre>
- <p>The following group of selectors represents all HTML elements except
+ <p>The following compound selector represents all HTML elements except
links.</p>
<pre>html|*:not(:link):not(:visited)</pre>
</div>
- <p>Default namespace declarations do not affect the argument of the
- negation pseudo-class unless the argument is a universal selector or a
- type selector.
-
- <div class=example>
- <p>Examples:</p>
-
- <p>Assuming that the default namespace is bound to "http://example.com/",
- the following selector represents all elements that are not in that
- namespace:</p>
-
- <pre>*|*:not(*)</pre>
-
- <p>The following selector matches any element that is not being hovered,
- regardless of its namespace. In particular, it is not limited to only
- matching elements in the default namespace that are not being hovered,
- and elements not in the default namespace don't match the rule when they
- <em>are</em> being hovered.</p>
-
- <pre>*|*:not(:hover)</pre>
- </div>
+ <p>Default namespace declarations do not affect the subject of any selector
+ within a negation pseudo-class unless the argument is an explicit
+ universal selector or a type selector. (See <a
+ href="#matches"><code>:matches()</code></a> for examples.
<p class=note><strong>Note</strong>: the :not() pseudo allows useless
selectors to be written. For instance <code>:not(*|*)</code>, which
Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/selectors4/Overview.src.html,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- Overview.src.html 23 Mar 2011 23:03:29 -0000 1.7
+++ Overview.src.html 28 Mar 2011 20:27:07 -0000 1.8
@@ -430,7 +430,7 @@
(possibly implied) <a href="#universal-selector">universal selector</a>.
No other type selector or universal selector is allowed in the sequence.</p>
- <p>A <dfn><a name=simple-selectors-dfn></a><a
+ <p>A <dfn><a name=simple></a><a
href="#simple">simple selector</a></dfn> is either a <a
href="#type-selectors">type selector</a>, <a
href="#universal-selector">universal selector</a>, <a
@@ -439,7 +439,7 @@
href="#id-selectors">ID selector</a>, or <a
href="#pseudo-classes">pseudo-class</a>.</p>
- <p><dfn>Combinators</dfn> are punctuation that represent a particular
+ <p><dfn id=combinator>Combinators</dfn> are punctuation that represent a particular
kind of relationship between the compound selectors on either side.
Combinators in Selectors level 4 include: whitespace, "greater-than
sign" (U+003E, <code>></code>), "plus sign" (U+002B,
@@ -535,7 +535,7 @@
Logical Combinations</h2>
<h3 id=grouping>
-Groups of selectors</h2>
+Selector Groups</h2>
<p>A comma-separated list of selectors represents the union of all
elements selected by each of the individual selectors in the list.
@@ -575,62 +575,71 @@
</div>
<h3 id=matches>
-The Matches-Any Psuedo-class: '':matches()''</h3>
+The Matches-Any Pseudo-class: '':matches()''</h3>
- <p>The <code>:matches(<var>X</var>)</code> pseudo-class is a functional
- notation taking a comma-separated list of <a href="#compound">compound
- selectors</a> as an argument. It represents an element that is represented
- by any of its arguments.
+ <p>The matches pseudo-class, <code>:matches(<var>X</var>)</code>,
+ is a functional notation taking a <a href="#grouping">selector group</a>
+ as an argument. It represents an element that is represented by its argument.
- <p><code>:matches()</code> may not be nested; <code>:matches(:matches(...))</code>
- is invalid.
- Also pseudo-elements are not valid within <code>:matches()</code>.</p>
+ <p>In Selectors Level 4, only <a href="#compound">compound selectors</a>
+ are allowed within <code>:matches()</code>:
+ <a href="#combinator">combinators</a> are not allowed. Additionally,
+ <code>:matches()</code> may not be nested within itself or within
+ <code>:not()</code>: <code>:matches(:matches(...))</code> and
+ <code>:not(:matches(...))</code> are invalid.</p>
- <p>Default namespace declarations do not affect the argument of the
- matches-any pseudo-class unless the argument is a universal selector or a
- type selector. (See below for examples.)</p>
+ <p>Pseudo-elements cannot be represented by the matches pseudo-class;
+ they are not valid within <code>:matches()</code>.
+
+ <p>Default namespace declarations do not affect the subject of any selector
+ within a matches-any pseudo-class unless the argument is an explicit
+ universal selector or a type selector.</p>
+
+ <div class="example">
+ <p>For example, following selector matches any element that is being
+ hovered or focused, regardless of its namespace. In particular, it
+ is not limited to only matching elements in the default namespace
+ that are being hovered or focused.</p>
+ <pre>*|*:matches(:hover, :focus)</pre>
+ <p>The following selector, however, represents only hovered or focused
+ elements that are in the default namespace, because it uses an explicit
+ universal selector within the <code>:matches()</code> notation:</p>
+ <pre>*|*:matches(*:hover, *:focus)</pre>
+ </div>
<h3 id=negation>
The Negation Pseudo-class: '':not()''</h3>
<p>The negation pseudo-class, <code>:not(<var>X</var>)</code>, is a
- functional notation taking a comma-separated list of <a href="#compound">compound
- selectors</a> as an argument. It represents an element that is not
- represented by any of its arguments.
+ functional notation taking a <a href="#grouping">selector group</a>
+ as an argument. It represents an element that is not represented
+ by its argument.
- <p>Negations may not be nested; <code>:not(:not(...))</code> is invalid.
- Also pseudo-elements are not valid within <code>:not()</code>.</p>
+ <p>In Selectors Level 4, only <a href="#compound">compound selectors</a>
+ are allowed within <code>:matches()</code>:
+ <a href="#combinator">combinators</a> are not allowed. Additionally,
+ negations may not be nested within itself or within <code>:matches()</code>:
+ <code>:not(:not(...))</code> and <code>:matches(:not(...))</code> are invalid.
+
+ <p>Pseudo-elements cannot be represented by the negation pseudo-class;
+ they are not valid within <code>:not()</code>.
<div class="example">
- <p>Examples:</p>
- <p>The following selector matches all <code>button</code>
+ <p>For example, the following selector matches all <code>button</code>
elements in an HTML document that are not disabled.</p>
<pre>button:not([DISABLED])</pre>
<p>The following selector represents all but <code>FOO</code>
elements.</p>
<pre>*:not(FOO)</pre>
- <p>The following group of selectors represents all HTML elements
+ <p>The following compound selector represents all HTML elements
except links.</p>
<pre>html|*:not(:link):not(:visited)</pre>
</div>
- <p>Default namespace declarations do not affect the argument of the
- negation pseudo-class unless the argument is a universal selector or a
- type selector.</p>
-
- <div class="example">
- <p>Examples:</p>
- <p>Assuming that the default namespace is bound to
- "http://example.com/", the following selector represents all
- elements that are not in that namespace:</p>
- <pre>*|*:not(*)</pre>
- <p>The following selector matches any element that is not being
- hovered, regardless of its namespace. In particular, it is not
- limited to only matching elements in the default namespace that are
- not being hovered, and elements not in the default namespace don't
- match the rule when they <em>are</em> being hovered.</p>
- <pre>*|*:not(:hover)</pre>
- </div>
+ <p>Default namespace declarations do not affect the subject of any selector
+ within a negation pseudo-class unless the argument is an explicit universal
+ selector or a type selector. (See <a href="#matches"><code>:matches()</code></a>
+ for examples.</p>
<p class="note"><strong>Note</strong>: the :not() pseudo allows
useless selectors to be written. For instance <code>:not(*|*)</code>,
Received on Monday, 28 March 2011 20:27:11 UTC