如何用纯 CSS 创作一个摇摇晃晃的 loader
效果预览
在线演示
按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。
https://codepen.io/comehope/pen/oyJvpe
可交互视频
此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
请用 chrome, safari, edge 打开观看。
https://scrimba.com/p/pEgDAM/cqwpQh7
源代码下载
本地下载
每日前端实战系列的全部源代码请从 github 下载:
https://github.com/comehope/front-end-daily-challenges
代码解读
定义 dom,容器中包含一个子元素,子元素内是文字:
<div class="loader"><span>Loading...</span>
</div>
居中显示:
body {margin: 0;height: 100vh;display: flex;align-items: center;justify-content: center;background-color: black;
}
定义容器尺寸:
.loader {width: 10em;height: 10em;font-size: 30px;box-sizing: border-box;
}
设置文字样式:
.loader span {position: absolute;color: white;width: inherit;height: inherit;text-align: center;line-height: 10em;font-family: sans-serif;
}
画出组成圆的顶部弧线:
.loader {border-top: 0.3em solid hotpink;border-radius: 50%;
}
用伪元素画出组成圆的另外 2 条弧线:
.loader {position: relative;
}.loader::before,
.loader::after {content: '';position: absolute;width: inherit;height: inherit;border-radius: 50%;box-sizing: border-box;top: -0.2em;
}.loader::before {border-top: 0.3em solid dodgerblue;transform: rotate(120deg);
}.loader::after {border-top: 0.3em solid gold;transform: rotate(240deg);
}
定义动画效果:
@keyframes rotating {50% {transform: rotate(calc(180deg * var(--direction)));}100% {transform: rotate(calc(360deg * var(--direction)));}
}
把动画效果应用到圆上:
.loader {animation: rotating 2s ease-in-out infinite;--direction: 1;
}
把动画效果应用到文字上:
.loader span {animation: rotating 2s linear infinite;--direction: -1;
}
最后,隐藏可能超出窗口的内容:
body {overflow: hidden;
}
大功告成!
原文地址:https://segmentfault.com/a/1190000015424389
如何用纯 CSS 创作一个摇摇晃晃的 loader相关推荐
- 前端每日实战:45# 视频演示如何用纯 CSS 创作一个菱形 loader 动画
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/eKzjqK 可交互视频教程 此视频 ...
- python绘制图形沙漏_前端每日实战:118# 视频演示如何用纯 CSS 创作一个沙漏 loader...
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码. 请用 chrome, saf ...
- 如何用纯 CSS 创作一个沙漏 loader
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/VGegxr 可交互视频 ...
- 如何用纯 CSS 创作一个小球上台阶的动画
如何用纯 CSS 创作一个小球上台阶的动画 效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/come ...
- 如何用纯 CSS 创作一个同心圆弧旋转 loader 特效
效果预览 在线演示 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/OZmXQX 可交互视频教程 此视 ...
- 如何用纯 CSS 创作一个单元素抛盒子的 loader
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/qKwXbx 可交互视频 ...
- 如何用纯 CSS 创作一个荧光脉冲 loader 特效
效果预览 在线演示 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/erRzzR 可交互视频教程 此视 ...
- 如何用纯 CSS 创作一个文本淡入淡出的 loader 动画
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/ERwpeG 可交互视频 ...
- 如何用纯 CSS 创作一个极品飞车 loader
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/w178191520/article/details/84861010 效果预览 在线演示 按下右侧的 ...
最新文章
- 发那科karel机器人环境配置_湖北轻工职业技术学院-FANUC机器人授权培训中心正式授牌...
- r - 求平均成绩_学霸秘籍:小学数学知识点例题讲解 — 平均数问题
- 批处理命令 For循环命令具体解释!
- ios点击大头针气泡不弹出_画家双手抖不停,画不了画丢了工作,却迎合抖动创造出一个个奇迹...
- Perl常用语法记录
- 漫步最优化二十四——二分搜索
- 2016年1月29日报
- [转】Ubuntu16.04 字符界面 ifconfig 命令无网络接口 ens33 的解决方法
- python爬取网页实时数据_使用 Python 爬取网页数据
- 两种不同编码规则的查询
- numpy教程:随机数模块numpy.random
- mysql审计audit插件_MySQL5.7 (审计)安装audit审计插件
- java数组的四种拷贝方式
- CSS实现最简洁的四角边框
- 游戏中的Decal(贴花)
- 负数在计算机中的存储方式
- java pdf域插入img_java实现在pdf模板的指定位置插入图片
- even parity
- 【总结】2023数学建模美赛!收官!
- L2-018. 多项式A除以B