我正在开发一个使用 CSS3 的投影的项目。投影也被应用于具有 alpha 像素的图像。它在 Chrome 中运行良好。Firefox出现问题。我想要一个替代解决方案。目前我正在使用 SVG 来渲染类似阴影的效果,但它太重了,而且它会导致一些问题。我想获得一些想法,以便在 Firefox 中实现相同的功能。
请帮忙。谢谢。
我正在开发一个使用 CSS3 的投影的项目。投影也被应用于具有 alpha 像素的图像。它在 Chrome 中运行良好。Firefox出现问题。我想要一个替代解决方案。目前我正在使用 SVG 来渲染类似阴影的效果,但它太重了,而且它会导致一些问题。我想获得一些想法,以便在 Firefox 中实现相同的功能。
请帮忙。谢谢。
Firefox 实现了过滤效果工作草稿 <feDropShadow>
元素。这是经过优化的,因此它的工作速度比将所有单独的过滤器捆绑在一起要快一些。
下面的示例显示了 SVG 1.1 投影和新的<feDropShadow>
等效项。
<svg viewBox="0 0 800 400"
xmlns="http://www.w3.org/2000/svg">
<defs>
<filter id="feDropShadowEquiv1">
<feGaussianBlur stdDeviation="3"/>
<feOffset dx="3" dy="3" result="offsetblur"/>
<feFlood flood-color="#720"/>
<feComposite in2="offsetblur" operator="in"/>
<feMerge>
<feMergeNode/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<filter id="feDropShadow1">
<feDropShadow stdDeviation="3" flood-color="#720"/>
</filter>
</defs>
<g font-family="Verdana" font-size="30">
<text x="100" y="90" filter="url(#feDropShadow1)">feDropShadow</text>
<text x="100" y="140" filter="url(#feDropShadowEquiv1)" >feDropShadow</text>
</g>
</svg>