Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- Manifest: layout/reftests/svg/reftest.list
<!--
Any copyright is dedicated to the Public Domain.
-->
<title>Testcase for CSS polygon clipPath</title>
<rect id="out" width="100%" height="100%"/>
<!-- test elementFromPoint can get the element using clip-path -->
<rect id="in" x="100" y="100" width="100" height="100"
clip-path="polygon(0 0, 50px 0, 50px 50px, 0 50px)"/>
<script>
function testElementFromPoint() {
let inCount = 0, outCount = 0, inElem, outElem;
document.getElementById("in").style.fill = "red";
document.getElementById("out").style.fill = "blue";
inElem = document.elementFromPoint(100, 100);
if (inElem.style.fill == "red") { ++inCount; }
inElem = document.elementFromPoint(149, 100);
if (inElem.style.fill == "red") { ++inCount; }
inElem = document.elementFromPoint(149, 149);
if (inElem.style.fill == "red") { ++inCount; }
inElem = document.elementFromPoint(100, 149);
if (inElem.style.fill == "red") { ++inCount; }
if (inCount == 4) { document.getElementById("in").style.fill = "lime"; }
outElem = document.elementFromPoint(99, 100);
if (outElem.style.fill == "blue") { ++outCount; }
outElem = document.elementFromPoint(150, 99);
if (outElem.style.fill == "blue") { ++outCount; }
outElem = document.elementFromPoint(151, 150);
if (outElem.style.fill == "blue") { ++outCount; }
outElem = document.elementFromPoint(100, 151);
if (outElem.style.fill == "blue") { ++outCount; }
if (outCount == 4) { document.getElementById("out").style.fill = "lime"; }
}
</script>
</svg>