wpt / css / css-backgrounds / background-clip / clip-text-stacking-context-child.html

Status: FAIL | Duration: 31ms | Subtests: 0/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi

/css/css-backgrounds/background-clip/clip-text-stacking-context-child.html

<!DOCTYPE html>
<title>background-clip:text with stacking context children</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds-4/#valdef-background-clip-text">
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/9563">
<link rel="match" href="clip-text-stacking-context-child-ref.html">
<link rel="stylesheet" href="/fonts/ahem.css">

<style>
.clip {
  font: 50px/1 Ahem;
  color: transparent;
  background-color: green;
  background-clip: text;
}
</style>
<!-- Test passes if there are 8 5-character green texts. -->

<!-- opacity creates a stacking context; its glyphs still contribute to the
     mask, but the opacity must not dim the revealed background -->
<div class="clip">XXXXX<div style="opacity: 0.99">XXXXX</div></div>

<!-- transform creates stacking context -->
<div class="clip">XXXXX<div style="transform: translateX(0)">XXXXX</div></div>

<!-- will-change creates stacking context -->
<div class="clip">XXXXX<div style="will-change: opacity">XXXXX</div></div>

<!-- filter creates stacking context -->
<div class="clip">XXXXX<div style="filter: opacity(1)">XXXXX</div></div>

<!-- fully transparent stacking context does not contribute to the mask -->
<div class="clip"><div style="opacity: 0">XXXXX</div></div>

/css/css-backgrounds/background-clip/clip-text-stacking-context-child-ref.html

<!DOCTYPE html>
<link rel="stylesheet" href="/fonts/ahem.css">
<style>
.clip {
  font: 50px/1 Ahem;
  color: green;
}
</style>
<div class="clip">XXXXX<div>XXXXX</div></div>
<div class="clip">XXXXX<div style="transform: translateX(0)">XXXXX</div></div>
<div class="clip">XXXXX<div style="will-change: opacity">XXXXX</div></div>
<div class="clip">XXXXX<div style="filter: opacity(1)">XXXXX</div></div>
<div class="clip"><div style="opacity: 0">XXXXX</div></div>