gecko-dev/layout/reftests/css-animations/stacking-context-opacity-removing-important-in-delay.html
Hiroyuki Ikezoe f110687f15 Bug 1278136 - Part 4: Tests to check stacking context for correct effect in cascading rule. r=birtles, bz
These tests aim to confirm that part 5 does not cause any regressons.

MozReview-Commit-ID: BtZ1OGiilmQ

--HG--
rename : layout/reftests/css-animations/no-stacking-context-animation-ref.html => layout/reftests/css-transitions/no-stacking-context-transition-ref.html
rename : layout/reftests/css-animations/stacking-context-animation-ref.html => layout/reftests/css-transitions/stacking-context-transition-ref.html
2016-10-12 09:59:02 +09:00

44 lines
1.1 KiB
HTML

<!DOCTYPE html>
<html class="reftest-wait">
<title>
Removing !important rule during delay phase of animation creates
a stack context for correct style
</title>
<style>
span {
height: 100px;
width: 100px;
position: fixed;
background: green;
top: 50px;
}
@keyframes Opacity0 {
from, to { opacity: 0 }
}
#test {
width: 100px; height: 100px;
background: blue;
animation: Opacity0 100s 100s;
}
</style>
<span></span>
<div id="test"></div>
<script>
window.addEventListener("load", () => {
var target = document.getElementById("test");
target.style.setProperty("opacity", "0.1", "important");
requestAnimationFrame(() => {
// Now the target opacity style should be 0.1 because of !important rule.
// Apply 100% opacity without important directive.
target.style.setProperty("opacity", "1", "");
requestAnimationFrame(() => {
// The CSS animation is no longer overridden but it's still in delay
// phase, so we should create a stacking context for 100% opacity style.
document.documentElement.classList.remove("reftest-wait");
});
});
});
</script>