| <!doctype html> |
| <meta charset="utf-8" /> |
| <title>CSS Selectors: part pseudo selectors</title> |
| <link rel="help" href="https://drafts.csswg.org/css-shadow-parts/#part" /> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/css/support/parsing-testcommon.js"></script> |
| <script> |
| test_valid_selector("::part(--foo)"); |
| test_valid_selector("::part(bar)"); |
| test_valid_selector("::part(--)"); |
| test_valid_selector("::part(--0)"); |
| test_valid_selector("::part(foo bar)"); |
| test_valid_selector("::part(-foo bar)"); |
| test_valid_selector("::part(foo):focus"); |
| test_valid_selector("::part(foo):hover"); |
| test_valid_selector("::part(foo):focus-within"); |
| test_valid_selector("::part(foo)::before"); |
| test_valid_selector("::part(foo)::after"); |
| test_valid_selector("::part(foo)::placeholder"); |
| test_valid_selector("::part(foo)::first-line"); |
| test_valid_selector("::part(foo)::first-letter"); |
| test_valid_selector("::part(foo)::file-selector-button"); |
| test_valid_selector("::part(foo):is(:focus)"); |
| test_valid_selector(":lang(en)::part(foo)"); |
| test_valid_selector(":dir(ltr)::part(foo)"); |
| test_valid_selector("::part(foo):lang(en)"); |
| test_valid_selector("::part(foo):dir(ltr)"); |
| test_invalid_selector(":part()"); |
| test_invalid_selector(":part(0)"); |
| test_invalid_selector(":part('foo')"); |
| test_invalid_selector(":part([foo])"); |
| test_invalid_selector('::part(foo) + ::part(bar)'); |
| </script> |