SVG 动画:弃用 SMIL,转而支持 CSS 或 Web 动画
SVG 的 SMIL 动画的终止引起了开发人员的担忧,他们已经依靠它来达到各种效果。但是,此弃用提供了探索替代动画方法的机会,例如 CSS 或 Web 动画。
1) 悬停效果
要使用 CSS 复制悬停效果,只需将以下内容添加到 CSS 规则中:
<code class="css">.element_tpl:hover { stroke-opacity: 0.5; }</code>
2) 缩放动画
对于提交更改后的缩放动画,请考虑使用以下组合CSS 过渡和关键帧。
<code class="css">.element_tpl { transition: transform 0.5s ease-in-out; } @keyframes scale-transition { 0% { transform: scale(1); } 50% { transform: scale(1.12); } 100% { transform: scale(1); } } .element_tpl--transition { animation: scale-transition 0.5s infinite; }</code>
3) 放大/缩小动画
要在单击时进行放大和缩小动画,您可以使用 CSS 的转换属性:
<code class="css">.element_tpl:active { transform: scale(1.1); }</code>
注意: 确保在任何被动元素上包含指针事件:无,以防止意外交互。
保留 SMIL 动画
虽然 SMIL 支持已被弃用,但仍然有一些选项可以保留现有的 SMIL 动画。最可行的解决方案是使用 Eric Willigers 的 SMIL polyfill,它使用 Web 动画 API 实现 SMIL。
结论
SMIL 的 SVG 动画的弃用提供了一个机会拥抱更现代和高性能的动画技术。通过利用 CSS 或 Web 动画,开发人员可以创建引人入胜的动态 SVG 动画,而不会影响功能或用户体验。
以上是**CSS 或 Web 动画是 SVG 弃用的 SMIL 动画的理想替代品吗?**的详细内容。更多信息请关注PHP中文网其他相关文章!