Ios Safari中SVG不希望出现的alpha掩码行为

Ios Safari中SVG不希望出现的alpha掩码行为,ios,svg,safari,mask,Ios,Svg,Safari,Mask,我试图对两个重叠的SVG元素应用一个掩码。使用以下代码: Mask 2+elements Safari bug有一个(黑客)解决方法,但它确实有效。挑战在于让掩码将其输入视为位图,而不是重叠的形状。通过在形状组和遮罩之间的组上插入虚拟过滤器,您可以使用Safari来完成此操作。进行以下更改: 将此添加到SVG DEF: <filter id="dummy-filter> <feColorMatrix type="saturate" values="1"/> &l

我试图对两个重叠的SVG元素应用一个掩码。使用以下代码:


Mask 2+elements Safari bug
有一个(黑客)解决方法,但它确实有效。挑战在于让掩码将其输入视为位图,而不是重叠的形状。通过在形状组和遮罩之间的组上插入虚拟过滤器,您可以使用Safari来完成此操作。进行以下更改:

将此添加到SVG DEF:

<filter id="dummy-filter>
   <feColorMatrix type="saturate" values="1"/>
</filter>

safari是否支持mask type=“luminance”?这是我的一部分。我知道Chrome和Firefox已经实现了它,也许Safari开发者还没有来得及实现它。@RobertLongson是的,我在示例代码的第11行使用了
mask type=“luminance”
。我也尝试过
alpha
,两者都会产生渐变淡出,但有相同的不需要的颜色重叠。然后提高a,除非已经有了。@RobertLongson谢谢,我会的。但是有没有一种替代的掩蔽方法可以提供快速的解决方法呢?等待Webkit错误修复可能需要几个月甚至更长的时间。对不起,我不熟悉Webkit的细节。一个建议是Webkit是开源的,所以请人来修复这个bug。Robert很长一段时间以来一直自愿为Mozilla做贡献,并回顾SVG对它的贡献。我知道,可能是因为他,Firefox中没有出现这个bug,对此我表示感谢。
<g id="combined" ... etc.
 <g filter="url(#dummy-filter)">
   <rect ... etc.
   <rect ... etc.
 </g>
</g>