@@ -542,16 +542,17 @@ Cascading and Per-Element Highlight Styles</h3>
542
542
<div class="example">
543
543
For example, if the following rules were applied:
544
544
<pre>
545
- p::selection { background: green; color: yellow; }
546
- em::selection { color: orange; }
545
+ p::selection { color: yellow; background: green; }
546
+ p > em::selection { color: orange; }
547
+ em::selection { color: red; }
547
548
</pre>
548
549
to the following markup:
549
550
<pre>
550
- <p>Highlight this < em> and this< /em> .</p>
551
+ <p>Highlight this < em>and this> /em>.</p>
551
552
</pre>
552
553
The highlight would be green throughout,
553
- with a yellow text outside the <code> <em></code> element
554
- and a orange text inside it.
554
+ with yellow text outside the <code> <em></code> element
555
+ and orange text inside it.
555
556
</div>
556
557
557
558
Issue: This could alternately be described in terms of inheritance.
@@ -565,8 +566,29 @@ Cascading and Per-Element Highlight Styles</h3>
565
566
<strong> '':root::selection'' </strong>
566
567
for their document-wide selection style,
567
568
since this will allow clean overriding in descendants.
568
- (''::selection'' alone would apply to every element in the tree,
569
- overriding the more specific styles of any ancestors.)
569
+ ''::selection'' alone applies to every element in the tree,
570
+ overriding the more specific styles of any ancestors.
571
+
572
+ <div class="example">
573
+ For example, if an author specified
574
+ <pre>
575
+ ::selection { background: blue; }
576
+ p.warning { background: red; }
577
+ </pre>
578
+ and the document included
579
+ <pre>
580
+ <p class="warning">Some <strong>very important information</strong></p>
581
+ </pre>
582
+ The highlight would be blue around “very important information”
583
+ because the <code> <strong></code> element´s ''::selection''
584
+ also matches the ''::selection { background: blue; }'' rule.
585
+ (Remember that ''*'' is implied when a tag selector is missing.)
586
+ The style rules that would give the intended behavior are
587
+ <pre>
588
+ :root::selection { background: blue; }
589
+ p.warning { background: red; }
590
+ </pre>
591
+ </div>
570
592
571
593
<h3 id="highlight-painting">
572
594
Painting the Highlight</h3>
0 commit comments