<html>
<head>
<script>
    window.targetScaleFactor = 1;
</script>
<script src="../../resources/srcset-helper.js"></script>
<script src="../../resources/js-test-pre.js"></script>
<script>
    if (window.testRunner)
        testRunner.dumpAsText();

    function runTest()
    {
        shouldBeTrue('document.getElementById("foo").clientWidth==400');
    }
</script>
<style>
    #foo { --image-set: -webkit-image-set(url(resources/image-set-1x.png) 1x, url(resources/deleteButton.png) 3x, url(resources/image-set-2x.png) 2x); }
</style>
</head>

<body id="body">
    <div>This test passes if the image below says 1x with a reddish background when the deviceScaleFactor is 1, and if says 2x with a greenish background when the deviceScaleFactor is 2.</div>
    <img id="foo" src="" style="content:var(--image-set)">
</body>
</html>
