我已经定义了一个 SVG clipPath 并将它应用到我页面上的几个 DIV。它在 FF 中按预期工作/显示,但在 Chrome 和 Safari(所有最新版本)中,如果 HTML 元素位于页面的左上角,clipPath 似乎只会影响 HTML 元素。
SVG 对象
<svg height="0" width="0">
<defs>
<clipPath id="clip">
<path fill="#000000" d="M0,0.01c3.472,1.088,6.688,3.663,7.878,9.208c1.604,7.482,4.305,11.862,7.102,11.79v0.003
c0.007,0.001,0.014-0.001,0.02-0.001c0.007,0,0.014,0.002,0.021,0.001v-0.003c2.797,0.072,5.499-4.308,7.103-11.79
C23.312,3.672,26.527,1.098,30,0.01H0z"/>
</clipPath>
</defs>
</svg>
要剪切的元素的 CSS
.clipMe {
background: red;
width: 30px;
height: 21px;
clip-path: url(#clip);
-webkit-clip-path: url(#clip);
}
我相信这篇文章开始通过使用坐标系来解决这个问题,但我很快就迷失了/困惑了好几次。听起来好像是在说使用不同的测量单位和坐标,可以将 clipPath 应用于任何 HTML 元素......但我真的不确定。
我从 Illustrator 导出了我的 clipPath,所以如果需要使用不同的单位/坐标,我不知道该怎么做。
在 Chrome 和/或 Safari 中,是否有人成功地将 SVG clipPath(这是一个实际路径 - 不是多边形或椭圆)应用于位于页面左上角以外的 HTML 元素?