@@ -1359,7 +1359,7 @@ Declaring Namespace Prefixes</h3>
13591359 should be specified by the language that uses Selectors.
13601360 If the language does not specify a namespace prefix declaration mechanism,
13611361 then no prefixes are declared.
1362- In CSS, namespace prefixes are declared with the ''@namespace'' rule. [[! CSS3NAMESPACE]]
1362+ In CSS, namespace prefixes are declared with the ''@namespace'' rule. [[CSS3NAMESPACE]]
13631363
13641364<h3 id="invalid">
13651365Invalid Selectors and Error Handling</h3>
@@ -2055,7 +2055,7 @@ Attribute presence and value selectors</h3>
20552055 please see the '':lang()'' pseudo-class.
20562056 </dl>
20572057
2058- Attribute values must be <<ident-token>> s or <<string-token>> s. [[! CSS3SYN]]
2058+ Attribute values must be <<ident-token>> s or <<string-token>> s. [[CSS3SYN]]
20592059
20602060 <div class="example">
20612061 Examples:
@@ -4024,7 +4024,7 @@ Child-indexed Pseudo-classes</h3>
40244024 with that of its selector argument <var> S</var> .
40254025 See [[#specificity-rules]] .
40264026
4027- The CSS Syntax Module [[! CSS3SYN]] defines the <a href="https://drafts.csswg.org/css-syntax/#anb"><var>An+B</var> notation</a> .
4027+ The CSS Syntax Module [[CSS3SYN]] defines the <a href="https://drafts.csswg.org/css-syntax/#anb"><var>An+B</var> notation</a> .
40284028
40294029 <div class="example">
40304030 Examples:
@@ -5099,6 +5099,7 @@ Appendix B: Obsolete but Required <code>-webkit-</code> Parsing Quirks for Web C
50995099<h2 id="visited-privacy" class="non-normative">
51005100Appendix C: Example Privacy-Preserving '':visited'' Restrictions</h2>
51015101
5102+ <p class="non-normative">
51025103Previous attempts to protect user privacy in '':visited''
51035104involved <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Privacy_and_the_:visited_selector">complex restrictions and behaviors</a>
51045105to "lie" about whether the link match '':visited'' or '':link'' ,
@@ -5109,7 +5110,10 @@ and help the user know what links they'd already clicked.
51095110This is ultimately an arms race that can't be won;
51105111there are multiple documented ways to still extract a user's browsing history
51115112even with these mitigations.
5113+ </p>
51125114
5115+
5116+ <p class="non-normative">
51135117This section describes an approach first developed and documented at
51145118<a href="https://github.com/explainers-by-googlers/Partitioning-visited-links-history">https://github.com/explainers-by-googlers/Partitioning-visited-links-history</a> ,
51155119that partitions a user's browsing history information,
@@ -5119,6 +5123,7 @@ With this, '':visited'' can be treated as a normal pseudo-class,
51195123without any of the complex mitigations described above,
51205124as it doesn't expose any information not already theoretically available to the site,
51215125while still preserving as much of the <em> usefulness</em> of '':visited'' as possible for the user.
5126+ </p>
51225127
512351281. Let |visited history| be a [=/set=]
51245129 containing [=tuples=] of three pieces of information:
@@ -5197,6 +5202,7 @@ while still preserving as much of the <em>usefulness</em> of '':visited'' as pos
51975202</div>
51985203
51995204
5205+ <div class="non-normative">
52005206<h2 id="changes">
52015207Changes</h2>
52025208
@@ -5438,7 +5444,9 @@ Changes since the 29 September 2011 Working Draft</h3>
54385444 <li> Changed <a>column combinator</a> from double slash to double pipe.
54395445 </ul>
54405446
5447+ </div>
54415448
5449+ <div class="non-normative">
54425450<h3 id="changes-level-3">
54435451Changes Since Level 3</h3>
54445452
@@ -5628,7 +5636,7 @@ Changes Since Level 3</h3>
56285636 <li> Added '':user-invalid'' .
56295637 <li> Added case-insensitive / case-sensitive attribute-value matching flags.
56305638 </ul> -->
5631-
5639+ </div>
56325640
56335641<h2 id="acknowledgements">
56345642Acknowledgements</h2>
0 commit comments