用css动态实现圆环百分比分配——初探css3动画

本文介绍如何使用CSS动态实现圆环颜色的平滑分配,通过结合CSS3新特性与动画,创建出从绿色平滑过渡到红色的效果。在过程中遇到了内环边缘粗糙的问题,通过调整代码进行了优化。同时,文章探讨了小程序与H5在CSS表现上的差异,以及微信开发者工具显示的不准确之处,强调了CSS在性能和过渡效果上的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近的小程序项目有个设计图要求做一个圆环,两种颜色分配,分别代表可用金额和冻结金额。要是就直接这么显示,感觉好像挺没水平??于是我决定做个动态!

在mdn把新特性gradients(渐变)、transitions(过渡)、 animations(动画) 都看了一遍,不禁感叹css牛逼!这三个新特性加上canvas,仿佛一瞬间有了正面刚js的能耐。用js很难过渡得那么完美,而且浏览器的css渲染明显比用js性能好得多。
然后看了张鑫旭(传说中玩转css的那个男人)的一篇关于圆环的博文,拍案叫绝。链接=>3种纯CSS实现中间镂空的12色彩虹渐变圆环方法
只能说服气!除了灵活运用各种css特性之外,鑫大佬最让我佩服的是他的创造性思维。会让你不禁感叹:卧槽,还有这种操作?!想到了高中物理老师每次装完逼讲的一句话:思想有多远,就能走多远。

虽然demo跟我的需求不太一样,问题还是没有解决,但我认真看完之后还是学会了很多,对我后面的代码帮助很大。鑫大佬这篇博文的重点还是在渐变,而我需要动态平缓连续得实现颜色的分配,比如原本整个环是绿色,然后慢慢地60%被红色占了,而且整个过程要平滑。跟我的需求最接近的就是倒计时那个demo,linear-gradient线性渐变实现的多彩圆环demo,但不是连续的过程,而是通过剪裁,每次剪30度。

看了其他一些博客分享,好像也没有找到合适的,那没办法了...只能自己想一个!
因为再写这个demo的时候,发现小程序和H5在css表现上还是有些差异(具体有哪些差异,在文末总结),所以还是贴H5代码好了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值