Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy" content="style-src 'self' 'nonce-allowme';">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<title>Nonce isn't lost on document move</title>
<style type="text/css" nonce="allowme">
p {
color: red;
}
</style>
<p>What color is this?</p>
<script>
test(function() {
const doc = document.implementation.createDocument("http://www.w3.org/1999/xhtml","html");
const style = document.createElement("style");
style.setAttribute("nonce", "allowme");
style.textContent = "p { color: lime }";
doc.documentElement.appendChild(style);
document.body.appendChild(style);
assert_equals(style.nonce, "allowme", "Nonce should not have been lost");
assert_equals(getComputedStyle(document.querySelector("p")).color, "rgb(0, 255, 0)", "Style should apply");
})
</script>