summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/selectors/placeholder-shown.html
blob: 62f6f96a10398804dc5d48efbb4ca0631322db4c (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
40
41
<!DOCTYPE html>
<title>CSS Selectors Test: :placeholder-shown matching</title>
<link rel="help" href="https://drafts.csswg.org/selectors/#placeholder">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
  :not(:placeholder-shown) + #t1,
  :placeholder-shown + #t2,
  :placeholder-shown + #t3,
  :placeholder-shown + #t4,
  :not(:placeholder-shown) + #t5,
  :not(:placeholder-shown) + #t6,
  :not(:placeholder-shown) + #t7 {
    color: green;
  }
</style>
<input type="text"><span id="t1">Should be green</span>
<input type="text" placeholder><span id="t2">Should be green</span>
<input type="text" placeholder=""><span id="t3">Should be green</span>
<input type="text" placeholder="placeholder"><span id="t4">Should be green</span>
<input type="text" placeholder value="value"><span id="t5">Should be green</span>
<input type="text" placeholder="" value="value"><span id="t6">Should be green</span>
<input type="text" placeholder="placeholder" value="value"><span id="t7">Should be green</span>
<script>
  const green = "rgb(0, 128, 0)";

  test(() => assert_equals(getComputedStyle(t1).color, green,
                           "No placeholder attribute"));
  test(() => assert_equals(getComputedStyle(t2).color, green,
                           "Placeholder attribute without value"));
  test(() => assert_equals(getComputedStyle(t3).color, green,
                           "Placeholder attribute - empty string"));
  test(() => assert_equals(getComputedStyle(t4).color, green,
                           "Placeholder attribute - non-empty string"));
  test(() => assert_equals(getComputedStyle(t5).color, green,
                           "Placeholder attribute without value - input text"));
  test(() => assert_equals(getComputedStyle(t6).color, green,
                           "Placeholder attribute - empty string - input text"));
  test(() => assert_equals(getComputedStyle(t7).color, green,
                           "Placeholder attribute - non-empty string - input text"));
</script>