summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/selectors/parsing/parse-part.html
blob: c166fd7765b1bfb36871b47ea08a55e03392292d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<!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)');
  test_valid_forgiving_selector("::part(foo):is(ul)");
  test_valid_forgiving_selector("::part(foo):is(nav ul)");
  test_valid_forgiving_selector("::part(foo):where(ul)");
  test_valid_forgiving_selector("::part(foo):where(nav ul)");
  test_invalid_selector("::part(foo):has(li)");
</script>