<!DOCTYPE html>
<html class="reftest-wait">
<title>background-position-x animation after finish</title>
<style>
@keyframes holdBackgroundPosition {
  from,to { background-position-x: 100%; }
}
#test {
  height: 100px;
  width: 100px;
  background-repeat: no-repeat;
  background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAMAAADzN3VRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRF/wAAAAAAQaMSAwAAABJJREFUeNpiYBgFo2AwAIAAAwACigABtnCV2AAAAABJRU5ErkJggg==); /* a 25x25 px red box */
  animation: holdBackgroundPosition 0.01s;
  background-position-x: 50%;
}
</style>
<div id="test" class="reftest-opaque-layer"></div>
<script>
document.getElementById("test").addEventListener("animationend", () => {
  requestAnimationFrame(() => {
    document.documentElement.classList.remove("reftest-wait");
  })
}, false);
</script>