网站首页 > 技术文章 正文
大家好,很高兴又见面了,我是"高级前端?进阶?",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力。
今天给大家带来的主题是 CSS 加载器,在很多前端开发场景都离不开它,但是如果需要很多绚丽的效果往往又需要自行开发。而 css-loaders 项目提供了超过 500+ 的加载器,希望大家后续能够用得上。话不多说,直接进入正题!
什么是单元素 css-loaders
css-loaders 是使用 CSS 制作动画的加载旋转器的集合。
每个 spinner 都由一个带有 loader 的类和内容文本“正在加载...”的 div 组成。 该文本适用于屏幕阅读器,可用作旧版浏览器的打底状态。
css-loaders 项目的目的是创建一组最小负载旋转器,既具有视觉吸引力,又传达其预期含义。该项目严格限制每个加载器一个元素(不包括伪元素),因为相信像加载器这样简单的东西不值得、也不需要更多元素。
每个加载程序都有一个以像素为单位的字体大小,所有其他大小均以 em 为单位,因此要更改加载程序的大小,只需调整字体大小即可。
在浏览器兼容方面也比较优秀:
- IE 10+ ?
- Chrome 4.0+ ?
- Firefox 16.0+ ?
- Opera 15.0+
- ? Safari 4.0+ ?
目前 css-loaders 项目在Github上通过MIT协议开源,有超过7k的star、1.1k的fork、是一个值得关注和尝试的前端开源项目。
如何使用css-loaders
不管什么效果,首先都需要一个loading元素,可以通过div添加:
<span class="loader"></span>
洗衣机加载中效果
.loader {
width: 120px;
height: 150px;
background-color: #fff;
background-repeat: no-repeat;
background-image: linear-gradient(#ddd 50%, #bbb 51%),
linear-gradient(#ddd, #ddd), linear-gradient(#ddd, #ddd),
radial-gradient(ellipse at center, #aaa 25%, #eee 26%, #eee 50%, #0000 55%),
radial-gradient(ellipse at center, #aaa 25%, #eee 26%, #eee 50%, #0000 55%),
radial-gradient(ellipse at center, #aaa 25%, #eee 26%, #eee 50%, #0000 55%);
background-position: 0 20px, 45px 0, 8px 6px, 55px 3px, 75px 3px, 95px 3px;
background-size: 100% 4px, 1px 23px, 30px 8px, 15px 15px, 15px 15px, 15px 15px;
position: relative;
border-radius: 6%;
animation: shake 3s ease-in-out infinite;
transform-origin: 60px 180px;
}
.loader:before {
content: "";
position: absolute;
left: 5px;
top: 100%;
width: 7px;
height: 5px;
background: #aaa;
border-radius: 0 0 4px 4px;
box-shadow: 102px 0 #aaa;
}
.loader:after {
content: "";
position: absolute;
width: 95px;
height: 95px;
left: 0;
right: 0;
margin: auto;
bottom: 20px;
background-color: #bbdefb;
background-image:
linear-gradient( to right, #0004 0%, #0004 49%, #0000 50%, #0000 100% ),
linear-gradient(135deg, #64b5f6 50%, #607d8b 51%);
background-size: 30px 100%, 90px 80px;
border-radius: 50%;
background-repeat: repeat, no-repeat;
background-position: 0 0;
box-sizing: border-box;
border: 10px solid #DDD;
box-shadow: 0 0 0 4px #999 inset, 0 0 6px 6px #0004 inset;
animation: spin 3s ease-in-out infinite;
}
@keyframes spin {
0% { transform: rotate(0deg) }
50% { transform: rotate(360deg) }
75% { transform: rotate(750deg) }
100% { transform: rotate(1800deg) }
}
@keyframes shake {
65%, 80%, 88%, 96% { transform: rotate(0.5deg) }
50%, 75%, 84%, 92% { transform: rotate(-0.5deg) }
0%, 50%, 100% { transform: rotate(0) }
}
效果如下:
更多Loading效果可以参考文末的官网,本文不再展开。
参考资料
https://github.com/lukehaas/css-loaders
https://cssloaders.github.io/
- 上一篇: 2.5D拓扑图—3D的逼真效果,2D的制作成本
- 下一篇: 直播点赞实现,浮动消失效果
猜你喜欢
- 2025-01-01 组态图不搞点3d效果,真的拿不出手了。
- 2025-01-01 AI设计创意海报:对比色配叠色,两种效果,两种感觉
- 2025-01-01 3D版生产工艺流程图,在展现效果上绝对是碾压的。
- 2025-01-01 直播点赞实现,浮动消失效果
- 2025-01-01 2.5D拓扑图—3D的逼真效果,2D的制作成本
- 2025-01-01 「Vue项目」中的滚动组件&联动效果从0到1(建议收藏)
- 2025-01-01 污水处理工艺流程放入智慧水务大屏,效果立马上来了。
- 2025-01-01 加入Unity3D的可视化大屏,效果绝对的震撼!
- 2025-01-01 电商可视化大屏效果拉满,所有数据一目了然
- 2025-01-01 要不说领导为何对驾驶舱情有独钟,这效果谁见谁不沦陷
你 发表评论:
欢迎- 556℃Oracle分析函数之Lag和Lead()使用
- 552℃几个Oracle空值处理函数 oracle处理null值的函数
- 544℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 539℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 537℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 526℃【数据统计分析】详解Oracle分组函数之CUBE
- 514℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 504℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端排序 (47)
- 前端密码加密 (47)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)