summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-pseudo/support/highlights.css
blob: 3ec7e0dd317dddc5f292aedcba08a4966f0579a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/**
 * Container for the interesting part of a highlight reftest, to be
 * used on both the test page and any reference pages.
 */
.highlight_reftest {
    /*
        https://drafts.csswg.org/css-pseudo-4/#highlight-bounds
        For text, the corresponding overlay must cover at least
        the entire em box and may extend further above/below the
        em box to the line box edges.
    */
    line-height: 1;
}

/**
 * Container for layers. All text is transparent by default, and each direct
 * child creates a layer that overlaps any text content.
 */
.hrt_layers,
.hrt_layers * {
    color: transparent;
}
.hrt_layers {
    position: relative;
}
.hrt_layers > * {
    position: absolute;
}

/**
 * Cover to clip text from the right. Usage:
 *
 *  <div class="hrt_layers">
 *      <div><!-- content to clip to “foo” from right --></div>
 *      <div><span class="hrt_cover">bar</span>foobar</div>
 *      foobar
 *  </div>
 */
.hrt_cover {
    background: white;
    position: absolute;
    padding: 0.5em 0;
    top: -0.5em;
    right: 0;
}

/**
 * Hider to clip text from the left. Usage:
 *
 *  <div class="hrt_layers">
 *      <div>foo<span class="hrt_hider">
 *          <div><!-- content to clip to “bar” from left --></div>
 *          bar
 *      </span></div>
 *      foobar
 *  </div>
 */
.hrt_hider {
    display: inline-block;
    overflow: hidden;
    position: relative;
    padding: 0.5em 0;
    top: -0.5em;
}
.hrt_hider > * {
    position: absolute;
    right: 0;
}