<!DOCTYPE html>
<title>CSS Custom Properties: Using revert in fallbacks</title>
<link rel="help" href="https://drafts.csswg.org/css-variables/#substitute-a-var">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
body.revert {
--x:FAIL;
margin: -1px;
display: grid;
--x: var(--unknown, revert);
margin: var(--unknown, revert);
display: var(--unknown, revert);
}
</style>
<html>
<body>
<pre id=out></pre>
<script>
let body_ua_display = getComputedStyle(document.body).display;
let body_ua_margin = getComputedStyle(document.body).margin;
document.body.classList.add('revert');
test((t) => {
assert_equals(getComputedStyle(document.body).getPropertyValue('--x'), '');
}, 'var(--unknown, revert) in custom property');
test((t) => {
assert_equals(getComputedStyle(document.body).getPropertyValue('margin'), body_ua_margin);
}, 'var(--unknown, revert) in shorthand');
test((x) => {
assert_equals(getComputedStyle(document.body).getPropertyValue('margin-left'), body_ua_margin);
}, 'var(--unknown, revert) in shorthand observed via longhand');
test((t) => {
assert_equals(getComputedStyle(document.body).getPropertyValue('display'), body_ua_display);
}, 'var(--unknown, revert) in longhand');
</script>
</body>
</html>