<!DOCTYPE html>
<html class="reftest-wait">
<title>
Changing keyframes to opacity frames creates a stacking context even if the
animation is delay phase
</title>
<style>
span {
  height: 100px;
  width: 100px;
  position: fixed;
  background: green;
  top: 50px;
}
#test {
  width: 100px; height: 100px;
  background: blue;
}
</style>
<span></span>
<div id="test"></div>
<script>
  var anim = document.getElementById("test")
    .animate({ width: ['100px', '100px'] },
             { delay: 100000, duration: 100000 });
  anim.ready.then(function() {
    anim.effect.setKeyframes({ opacity: [0, 1] });
    requestAnimationFrame(function() {
      document.documentElement.classList.remove("reftest-wait");
    });
  });
</script>