<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>CSS Positioned Layout Module: parsing inset with valid values</title> <link rel="help" href="https://drafts.csswg.org/css-position/#insets"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src="/css/support/parsing-testcommon.js"></script> </head> <body> <script> const single_values = [ // [input, serialized(optional)] ["0", "0px"], ["auto"], ["10%"], ["1rem"], ["-10px"], ["-20%"], ["calc(2em + 3ex)"], ]; const double_values = [ // [input, serialized(optional)] ["auto auto", "auto"], ["100px 100px", "100px"], ["10% -5px"], ["1rem calc(0px)"] ]; function test_inset_longhand(longhand_property) { for (let value of single_values) { if (value[1] === undefined) test_valid_value(longhand_property, value[0]); else test_valid_value(longhand_property, value[0], value[1]); } } function test_inset_shorthand(shorthand_property) { for (let value of single_values) { if (value[1] === undefined) test_valid_value(shorthand_property, value[0]); else test_valid_value(shorthand_property, value[0], value[1]); } for (let value of double_values) { if (value[1] === undefined) test_valid_value(shorthand_property, value[0]); else test_valid_value(shorthand_property, value[0], value[1]); } } test_inset_longhand("inset-block-start"); test_inset_longhand("inset-block-end"); test_inset_longhand("inset-inline-start"); test_inset_longhand("inset-inline-end"); test_inset_shorthand("inset-block"); test_inset_shorthand("inset-inline"); </script> </body> </html>