为了账号安全,请及时绑定邮箱和手机立即绑定

svg 怎么应用 CSS3 的过渡效果,实现 path 路径的平滑过渡

svg 怎么应用 CSS3 的过渡效果,实现 path 路径的平滑过渡

红糖糍粑 2019-03-29 19:18:41
svg 怎么应用 CSS3 的过渡效果,实现 path 路径的平滑过渡
查看完整描述

2 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

 代码如下(相关详情在js代码部分):
  css:
#svg , #path {
transition:all 0.5s ease-in-out;
-webkit-transition:all 0.5s ease-in-out;
-moz-transition:all 0.5s ease-in-out;
-o-transition:all 0.5s ease-in-out;
-ms-transition:all 0.5s ease-in-out;
}
#path {
fill:#e7e7e7;
stroke:none;
}
html:
<svg width='100' height='100' xmlns='' version='1.1' id='svg'>
<path d='' id='toggle' id='path'></path>
</svg>
javascript:
var d1 = 'M 0 0 h 5 v 20 h -5 L 0 0 M 11 0 h 5 v 20 h -5 L 11 0 Z';
var d2 = 'M 0 0 L 18 11 L 0 22 L 0 0 Z';
var svg = $id('svg');
var path = $id('path');
实现点击 svg 路径发生变化。


查看完整回答
反对 回复 2019-03-31
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

在html5+css3中做到动态效果有4种方式:
1.transition(过渡)-通过属性值的变化来平滑过渡产生动画;

2.animate(动画)-这是css3中的自带的动画,可以动过各种变形(比如形变、缩放、位移),这里的位移其实就可以实现弧线运动,但是这儿需要的代码会非常多,个人是不建议用这个方法的。

3.canvas(画布)-可以想象着拿着一支笔在画笔上画东西,映射到电脑上,就是在每个坐标上面画东西。

4.svg-抱歉 这个我还没研究。

推荐方式:
canvas,步骤:

1.要达到弧线运动,那么就必须知道弧线的公式
2.通过setinterval来设置每一帧的坐标,比如:
(function({
y=公式与x的联系
} ,30)//这儿的30,代表30毫秒为一帧。
补充:如果要有个重复动作,那么久必须设置一个临界值,然后点返回原点重复动作;




查看完整回答
反对 回复 2019-03-31
  • 2 回答
  • 0 关注
  • 1460 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信