vue实现动态css,巧用 CSS 动画实现动态气泡背景

编程入门 行业动态 更新时间:2024-10-28 16:29:24

vue实现<a href=https://www.elefans.com/category/jswz/34/1771299.html style=动态css,巧用 CSS 动画实现动态气泡背景"/>

vue实现动态css,巧用 CSS 动画实现动态气泡背景

今天是节后上班第一天,早上醒来一睁眼,嗯?啊…?什么…?这是哪?我是谁?上什么班?

然鹅,还是被昨晚特意设置的八个闹钟⏰吵醒,冬天早上起床的难度…想必各位都心有体会 😭,抱着一万个不情愿起床早早地来到了办公室,还是熟悉的环境,还是熟悉的味道。。。

还有,熟悉的任务需求😂。

今天的第一个任务是写个登录页面,老大给了我一个参(chao)考(xi)案例,大家点击链接就能看到。嗯,这个登录页面确实很简洁、大方,尤其是它的气泡背景,第一反应这应该是张动态图片,打开审查元素才发现原来这是用代码写的,一下子激起了宝宝的好奇心,所以也试着写了一个带气泡背景的登录页面,效果如下:

emm…为什么上传的 gif 动态图总是这么小,来补张截图:

(大家可以自行脑补这些背景气泡往上升的画面 😭)

只需一些简单的代码就可以实现这样的效果,

首先我们先定义10个 li 列表标签,我用的是 vue 框架:

.bg-bubbles {

position: absolute;

// 使气泡背景充满整个屏幕;

top: 0;

left: 0;

width: 100%;

height: 100%;

// 如果元素内容超出给定的宽度和高度,overflow 属性可以确定是否显示滚动条等行为;

overflow: hidden;

li {

position: absolute;

// bottom 的设置是为了营造出气泡从页面底部冒出的效果;

bottom: -160px;

// 默认的气泡大小;

width: 40px;

height: 40px;

background-color: rgba(255, 255, 255, 0.15);

list-style: none;

// 使用自定义动画使气泡渐现、上升和翻滚;

animation: square 15s infinite;

transition-timing-function: linear;

// 分别设置每个气泡不同的位置、大小、透明度和速度,以显得有层次感;

&:nth-child(1) {

left: 10%;

}

&:nth-child(2) {

left: 20%;

width: 90px;

height: 90px;

animation-delay: 2s;

animation-duration: 7s;

}

&:nth-child(3) {

left: 25%;

animation-delay: 4s;

}

&:nth-child(4) {

left: 40%;

width: 60px;

height: 60px;

animation-duration: 8s;

background-color: rgba(255, 255, 255, 0.3);

}

&:nth-child(5) {

left: 70%;

}

&:nth-child(6) {

left: 80%;

width: 120px;

height: 120px;

animation-delay: 3s;

background-color: rgba(255, 255, 255, 0.2);

}

&:nth-child(7) {

left: 32%;

width: 160px;

height: 160px;

animation-delay: 2s;

}

&:nth-child(8) {

left: 55%;

width: 20px;

height: 20px;

animation-delay: 4s;

animation-duration: 15s;

}

&:nth-child(9) {

left: 25%;

width: 10px;

height: 10px;

animation-delay: 2s;

animation-duration: 12s;

background-color: rgba(255, 255, 255, 0.3);

}

&:nth-child(10) {

left: 85%;

width: 160px;

height: 160px;

animation-delay: 5s;

}

}

// 自定义 square 动画;

@keyframes square {

0% {

opacity: 0.5;

transform: translateY(0px) rotate(45deg);

}

25% {

opacity: 0.75;

transform: translateY(-400px) rotate(90deg)

}

50% {

opacity: 1;

transform: translateY(-600px) rotate(135deg);

}

100% {

opacity: 0;

transform: translateY(-1000px) rotate(180deg);

}

}

}补充一下,这里最外层父容器的背景颜色是:

background: linear-gradient(to bottom right, #50A3A2, #53E3A6);

至此,一个气泡背景图就完成了。回过头来看,确实不难,但也愈来愈让人感受到 css 动画的魅力和强大 ☺️。

如果喜欢这篇文章的话,不妨点个喜欢或关注,这将是我更大的动力。

前端路漫漫,望与君共勉 💪。

版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

作者: Daniel_Yang

原文链接:

更多推荐

vue实现动态css,巧用 CSS 动画实现动态气泡背景

本文发布于:2023-07-03 03:22:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1000535.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:动态   气泡   巧用   背景   动画

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!