parse-state.html (1593B)
1 <!doctype html> 2 <meta charset="utf-8" /> 3 <title>CSS Selectors: custom state pseudo selectors</title> 4 <link rel="help" href="https://github.com/w3c/csswg-drafts/pull/8213" /> 5 <script src="/resources/testharness.js"></script> 6 <script src="/resources/testharnessreport.js"></script> 7 <script src="/css/support/parsing-testcommon.js"></script> 8 <script> 9 test_valid_selector(":state(--foo)"); 10 test_valid_selector(":state(bar)"); 11 test_valid_selector(":state(--)"); 12 test_valid_selector(":state(--0)"); 13 test_valid_selector(":host(:state(--foo))"); 14 test_valid_selector('my-input[type="foo"]:state(checked)'); 15 test_valid_selector('my-input[type="foo"]:state(--0)::before'); 16 test_valid_selector('my-input[type="foo"]:state(--0)::part(inner)'); 17 test_valid_selector( 18 'my-input[type="foo"]:state(--0)::part(inner):state(bar)', 19 ); 20 test_valid_selector('::part(inner):state(bar)::before'); 21 test_valid_selector('::part(inner):state(bar)::after'); 22 test_invalid_selector(":state"); 23 test_invalid_selector(":state("); 24 test_invalid_selector(":state()"); 25 test_invalid_selector(":state(0)"); 26 test_invalid_selector(":state(0rem)"); 27 test_invalid_selector(":state(url())"); 28 test_invalid_selector(":state(foo(1))"); 29 test_invalid_selector(":state(:host)"); 30 test_invalid_selector("my-input::after:state(foo)"); 31 test_invalid_selector('::part(inner):state(bar)::before:state(foo)'); 32 test_invalid_selector('::part(inner):state(bar)::after:state(foo)'); 33 test_invalid_selector("my-input::first-letter:state(foo)"); 34 test_invalid_selector('::slotted(foo):state(foo)'); 35 </script>