<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <title>NEGATED :active pseudo-class</title>
  <style type="text/css"><![CDATA[div.stub * { color : lime }
div.stub > * > *:not(:active) { color : black }
]]></style>
  <link rel="author" title="Daniel Glazman" href="http://glazman.org/"/>
  <link rel="author" title="Ian Hickson" href="mailto:ian@hixie.ch"/>
  <link rel="help" href="https://www.w3.org/TR/css3-selectors/#selectors"/> <!-- bogus link to make sure it gets found -->
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="/resources/testdriver.js"></script>
  <script src="/resources/testdriver-actions.js"></script>
  <script src="/resources/testdriver-vendor.js"></script>
  <script src="common.js"></script>
 </head>
 <body>
 <div class="stub">
  <p> <a id="t1" href="#t1">This text should turn green while it is active.</a> </p>
  <p> <button id="t2">This text should turn green while it is active.</button> </p>
 </div>
  <script><![CDATA[
promise_test(async () => {
  const t1 = document.getElementById('t1');
  assert_color(t1, 'rgb(0, 0, 0)', 'Initially not active');

  // Move to t1 and press down to make it active
  await new test_driver.Actions()
      .pointerMove(0, 0, {origin: t1})
      .pointerDown()
      .send();
  assert_color(t1, LIME, 'Active');

  // Release
  await new test_driver.Actions().pointerUp().send();
  assert_color(t1, 'rgb(0, 0, 0)', 'Not active again');
}, 'a:active');

promise_test(async () => {
  const t2 = document.getElementById('t2');
  assert_color(t2, 'rgb(0, 0, 0)', 'Initially not active');

  // Move to t2 and press down to make it active
  await new test_driver.Actions()
      .pointerMove(0, 0, {origin: t2})
      .pointerDown()
      .send();
  assert_color(t2, LIME, 'Active');

  // Release
  await new test_driver.Actions().pointerUp().send();
  assert_color(t2, 'rgb(0, 0, 0)', 'Not active again');
}, 'button:active');
]]></script>
</body>
</html>
