tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

clip-path-element-objectboundingbox-001.html (1167B)


      1 <!DOCTYPE html>
      2 <title>Hit-test of clip-path objectBoundingBox &lt;clipPath> with additional transform</title>
      3 <link rel="help" href="https://drafts.fxtf.org/css-masking/#the-clip-path">
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <style>
      7 body {
      8  margin: 0;
      9 }
     10 .box {
     11  width: 100px;
     12  height: 100px;
     13  background-color: blue;
     14  margin: 100px;
     15  clip-path: url(#clip);
     16 }
     17 </style>
     18 <div class="box"></div>
     19 <svg height="0">
     20  <clipPath id="clip" clipPathUnits="objectBoundingBox" transform="scale(0.01, 0.01)">
     21    <polygon points="50,0 100,50 50,100 0,50"/>
     22  </clipPath>
     23 </svg>
     24 <script>
     25 function assert_element_at(element, pointlist) {
     26  for (let point of pointlist) {
     27    let result = document.elementFromPoint(point[0], point[1]);
     28    assert_equals(result, element, point.join(','));
     29  }
     30 }
     31 
     32 test(function() {
     33  let div = document.querySelector('.box');
     34 
     35  // Points inside clip-path.
     36  assert_element_at(div, [[150, 150], [150, 125], [150, 175], [125, 150], [175, 150]]);
     37 
     38  // Points outside clip-path.
     39  assert_element_at(document.body, [[120, 120], [180, 120], [120, 180], [180, 180]]);
     40 });
     41 </script>