wpt / css / css-masking / parsing / mask-size-computed.html

Status: PASS | Duration: 67ms | Subtests: 16/16 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
Property mask-size value '1px'PASS
Property mask-size value '1px auto'PASS
Property mask-size value '2% 3%'PASS
Property mask-size value 'auto'PASS
Property mask-size value 'auto auto'PASS
Property mask-size value 'auto 4%'PASS
Property mask-size value 'contain'PASS
Property mask-size value 'cover'PASS
Property mask-size value 'calc(10px + 0.5em) calc(10px - 0.5em)'PASS
Property mask-size value 'calc(10px - 0.5em) calc(10px + 0.5em)'PASS
Property mask-size value 'auto 1px, 2% 3%, contain'PASS
Property mask-size value 'auto' multiple base valuesPASS
Property mask-size value 'auto, auto' multiple base valuesPASS
Property mask-size value 'auto, auto, auto' multiple base valuesPASS
Property mask-size value 'auto, 100%' multiple base valuesPASS
Property mask-size value '100%' multiple base valuesPASS

/css/css-masking/parsing/mask-size-computed.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Masking Module Level 1: getComputedStyle().maskSize</title>
<link rel="author" title="Sam Weinig" href="mailto:sam@webkit.org">
<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#the-mask-size">
<meta name="assert" content="mask-size computed value is a list, each item a pair of sizes (one per axis) each represented as either a keyword or a computed length-percentage value.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
<style>
  #target {
    font-size: 40px;
  }
</style>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("mask-size", "1px", "1px auto");
test_computed_value("mask-size", "1px auto", "1px auto");
test_computed_value("mask-size", "2% 3%");
test_computed_value("mask-size", "auto");
test_computed_value("mask-size", "auto auto", "auto");
test_computed_value("mask-size", "auto 4%");
test_computed_value("mask-size", "contain");
test_computed_value("mask-size", "cover");
test_computed_value("mask-size", "calc(10px + 0.5em) calc(10px - 0.5em)", "30px 0px");
test_computed_value("mask-size", "calc(10px - 0.5em) calc(10px + 0.5em)", "0px 30px");
test_computed_value("mask-size", "auto 1px, 2% 3%, contain");

document.getElementById("target").style['mask-image'] = "none, none";
test_computed_value("mask-size", "auto", "auto", "multiple base values");
test_computed_value("mask-size", "auto, auto", "auto, auto", "multiple base values");
test_computed_value("mask-size", "auto, auto, auto", "auto, auto, auto", "multiple base values");
test_computed_value("mask-size", "auto, 100%", "auto, 100% auto", "multiple base values");
test_computed_value("mask-size", "100%", "100% auto", "multiple base values");
</script>
</body>
</html>