热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

圆弧和扇形的加载动画该怎么写?

0.静态效果图1.画弧度的代码width:3em;height:3em;border:7pxtransparentsolid;border-left:7px#4DB6ACsolid;border-radius:50%;*这里还有另一个方式border-left:7px#4DB6ACsolid;border-radius:50%;bor
0.静态效果图

1.画弧度的代码

width: 3em;
height: 3em;
border: 7px transparent solid;
border-left: 7px #4DB6AC solid;
border-radius: 50%;

  

* 这里还有另一个方式

border-left:7px #4DB6AC solid;	
border-radius: 50%;
border-top:7px transparent solid;
border-bottom:7px transparent solid;

  后者做成旋转动画效果不如前者,肉眼能感到差异,在chrome49.

2.画扇形的代码

border: 7px transparent solid;
border-left: 7px #4DB6AC solid;
border-radius: 50%;

  

* 画扇形不可以定义宽度和长度,其余与画圆弧相同

3.less 封装画圆弧和扇形的代码

.arc(@direction,@style){
@color:~`"@{style}".split(/,\s+/)[1]`;
@width:~`"@{style}".split(/,\s+/)[0].replace("[","")`;
@shape:~`"@{style}".split(/,\s+/)[2].replace("]","")`;
border: @width transparent @shape;
@length:length(@direction);
.setStyle(@length,@style,@direction);
border-radius: 50%;

.setStyle(@length,@style,@direction) when (@length>0){
@index:@length - 1;
@pos:extract(@direction,@length);
border-@{pos}:@style ;
.setStyle(@index,@style,@direction);

}
}
//使用方式:
@driection 可以是top、left、right、bottom中的一个或多个
@style 需要严格按照 7px solid red 这样的顺序
.arc(left,7px solid red);
.arc(left top,7px solid red);
View Code

4.加载动画的完整代码

View Code

5.声明

案例代码是我从网上看到的,我自己模仿了一下但无论效果和方法上都不如前者。

欣慰的是能够知道原理,只是细节之处还需练习。

以上就是圆弧和扇形的加载动画该怎么写?的详细内容,更多请关注其它相关文章!


推荐阅读
author-avatar
alive
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有