当前位置: 首页 > news >正文

Vue3实战笔记(37)—粒子特效登录页面

文章目录

  • 前言
  • 一、粒子特效登录页
  • 总结


前言

上头了,再来一个粒子特效登录页面。


一、粒子特效登录页

登录页:


<template><div><vue-particles id="tsparticles" @particles-loaded="particlesLoaded"  :options="options"  />
<form><h3>Login Here</h3><label for="username">Username</label><input type="text" placeholder="Email or Phone" id="username"><label for="password">Password</label><input type="password" placeholder="Password" id="password"><button>Log In</button><div class="social"><div class="go"><i class="fab fa-google"></i> Google</div><div class="fb"><i class="fab fa-facebook"></i> Facebook</div></div>
</form><div id="tsparticles"></div>
<form><h3>Login Here</h3><label for="username">Username</label><input type="text" placeholder="Email or Phone" id="username"><label for="password">Password</label><input type="password" placeholder="Password" id="password"><button>Log In</button><div class="social"><div class="go"><i class="fab fa-google"></i> Google</div><div class="fb"><i class="fab fa-facebook"></i> Facebook</div></div>
</form></div>
</template><script setup lang="ts" name="">
let themeableContainer;import tsParticles from "@tsparticles/vue3";const particlesLoaded = async (container: any) => {console.log("Particles container loaded", container);
};
const options ={fpsLimit: 60,fullScreen: { enable: true },particles: {number: {value: 50},shape: {type: "circle"},opacity: {value: 0.5},size: {value: 400,random: {enable: true,minimumValue: 200}},move: {enable: true,speed: 10,direction: "top",outModes: {default: "out",top: "destroy",bottom: "none"}}},interactivity: {detectsOn: "canvas",events: {resize: true}},style: {filter: "blur(50px)"},detectRetina: true,themes: [{name: "light",default: {value: true,mode: "light"},options: {background: {color: "#f7f8ef"},particles: {color: {value: ["#5bc0eb", "#fde74c", "#9bc53d", "#e55934", "#fa7921"]}}}},{name: "dark",default: {value: true,mode: "dark"},options: {background: {color: "#080710"},particles: {color: {value: ["#004f74", "#5f5800", "#245100", "#7d0000", "#810c00"]}}}}],emitters: {direction: "top",position: {x: 50,y: 150},rate: {delay: 0.2,quantity: 2},size: {width: 100,height: 0}}}
</script><style lang='scss' scoped>
*,
*:before,
*:after {padding: 0;margin: 0;box-sizing: border-box;
}
form {height: 520px;width: 400px;background-color: rgba(255, 255, 255, 0.13);position: absolute;transform: translate(-50%, -50%);top: 50%;left: 50%;border-radius: 10px;backdrop-filter: blur(30px);-webkit-backdrop-filter: blur(30px);border: 2px solid rgba(255, 255, 255, 0.1);box-shadow: 0 0 40px rgba(8, 7, 16, 0.6);padding: 50px 35px;
}
form * {font-family: "Poppins", sans-serif;color: #000000;letter-spacing: 0.5px;outline: none;border: none;
}@media (prefers-color-scheme: dark) {form * {color: #ffffff;}
}form h3 {font-size: 32px;font-weight: 500;line-height: 42px;text-align: center;
}label {display: block;margin-top: 30px;font-size: 16px;font-weight: 500;
}
input {display: block;height: 50px;width: 100%;background-color: rgba(255, 255, 255, 0.07);border-radius: 3px;padding: 0 10px;margin-top: 8px;font-size: 14px;font-weight: 300;
}::placeholder {color: #1b1b1b;
}@media (prefers-color-scheme: dark) {::placeholder {color: #e5e5e5;}
}button {margin-top: 50px;width: 100%;background-color: #ffffff;color: #080710;padding: 15px 0;font-size: 18px;font-weight: 600;border-radius: 5px;cursor: pointer;
}
.social {margin-top: 30px;display: flex;
}
.social div {background: red;width: 150px;border-radius: 3px;padding: 5px 10px 10px 5px;background-color: rgba(255, 255, 255, 0.27);color: #150f03;text-align: center;
}@media (prefers-color-scheme: dark) {.social div {color: #eaf0fb;}body {background: #000;}
}.social div:hover {background-color: rgba(255, 255, 255, 0.47);
}
.social .fb {margin-left: 25px;
}
.social i {margin-right: 4px;
}
</style>

如果不成功仔细看第一篇文章,一步一步做,很简单的。实际效果要比图片好看多了,gif录糊了糊了。。。

在这里插入图片描述


总结

行到水穷处,坐看云起时

相关文章:

Vue3实战笔记(37)—粒子特效登录页面

文章目录 前言一、粒子特效登录页总结 前言 上头了&#xff0c;再来一个粒子特效登录页面。 一、粒子特效登录页 登录页&#xff1a; <template><div><vue-particles id"tsparticles" particles-loaded"particlesLoaded" :options"…...

解锁无限可能:JavaScript与【机器学习】的浪漫邂逅

解锁无限可能&#xff1a;JavaScript与机器学习的浪漫邂逅 在人工智能和大数据日益盛行的今天&#xff0c;机器学习已成为我们理解、分析和处理数据的强大工具。而JavaScript&#xff0c;作为前端开发的主流语言&#xff0c;其灵活的特性和广泛的应用场景也让我们对其充满了期…...

【Linux】$()中的内容与不加$()时有什么区别

$()中的内容与不加$()有什么区别&#xff0c;例如$(/usr/local/hadoop/bin/hadoop classpath)与/usr/local/hadoop/bin/hadoop classpath两者有何区别&#xff1f;&#xff1f;&#xff1f; 关于这个问题&#xff0c;笔者建议可以参考如下文章&#xff1a; Linux—shell中$((…...

2024最新前端面试八股文【基础篇293题】

⼀、HTML、HTTP、web综合问题 1 前端需要注意哪些SEO 2 <img> 的 title 和 alt 有什么区别 3 HTTP的⼏种请求⽅法⽤途 4 从浏览器地址栏输⼊url到显示⻚⾯的步骤 5 如何进⾏⽹站性能优化 6 HTTP状态码及其含义 7 语义化的理解 8 介绍⼀下你对浏览器内核的理解 9 …...

【NumPy】关于numpy.median()函数,看这一篇文章就够了

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…...

起保停电路工作原理

一、电路组成 起保停电路由电源保护设备&#xff08;空气开关&#xff09;、交流接触器、启动按钮、停止按钮和用电设备组成。 起保停电路的组成部分通常可分为四个部分&#xff1a; 保护部分&#xff1a;&#xff08;空气开关&#xff09;在电流或电压超出一定范围时自动切断…...

【Vue】Vue2使用ElementUI

目录 Element UI介绍特点Vue2使用Element安装引入ElementUI组件库 使用ElementUI用户注册列表展示其他 mint-ui介绍特点安装组件引入组件Mint-ui相关组件 Element UI 介绍 官网(基于 Vue 2.x ):https://element.eleme.cn/#/zh-CN ElementUI 是一个基于 Vue.js 的桌面端组件库…...

设计模式在芯片验证中的应用——模板方法

一、模板方法 模板方法(Template Method)设计模式是一种行为设计模式&#xff0c; 它在父类中定义了一个功能的框架&#xff0c; 允许子类在不修改结构的情况下重写功能的特定步骤。也就是模板方法定义了一组有序执行的操作&#xff0c;将一些步骤的实现留给子类&#xff0c;同…...

Webpack Bundle Analyzer:深入分析与优化你的包

Webpack Bundle Analyzer是一个用于可视化的工具&#xff0c;它可以帮助你分析Webpack打包后的输出文件&#xff0c;查看哪些模块占用了最多的空间&#xff0c;从而进行优化。 2500G计算机入门到高级架构师开发资料超级大礼包免费送&#xff01; 首先&#xff0c;你需要安装W…...

Java后端开发学习历程

1、JavaWeb------------------------>19天 2、SSMSpringBoot------------->12天 3、瑞吉外卖项目------------------>15天 4、JavaSE-------------------------->25天 总耗时71天&#xff08;2024.03.11——2024.05.26两个半月&#xff09;&#xff0c;Java后端…...

CentOS 7 socat命令端口转发

场景 开发排查问题需配置远程调试,但配置调试的服务器不支持外网访问,于是就考虑到用端口转发的方式让开发进行远程调试,转发工具比如有:rinetd等等,意外看到使用socat做转发更简单方便,下面就记录一下 命令简介 socat 是一个功能强大的网络工具,可以在两个连接的数据…...

vue全局修改设置滚动条样式

vue全局修改设置滚动条样式 具体代码&#xff1a; ::-webkit-scrollbar{ /*滚动条整体样式*/width: 6px; /*高宽分别对应横竖滚动条的尺寸*/height: 1px; } ::-webkit-scrollbar-thumb{ /*滚动条里面小方块*/border-radius: 5px;background: #cfcbcb; } ::-webkit-scrollbar-…...

​✨聚梦AI绘图插件-for photoshop(基于ComfyUI) 内测版V0.1发布

&#x1f388;背景 photoshop本身是有AI生成能力的&#xff0c;不过限于种种原因&#xff0c;国内使用很不方便。 photoshop也是有AI插件的&#xff0c;不过大多安装起来比较复杂&#xff0c;或者&#xff0c;干脆就会收费。 所以我们做了一个免费的AI插件&#xff0c;期望能…...

java “错误:编码GBK 的不可映射字符”

环境&#xff1a;JDK-17 本机编码&#xff1a;utf-8 代码编码&#xff1a;GBK 错误&#xff1a;java “错误&#xff1a;编码GBK 的不可映射字符” 解决1&#xff1a;记事本打开java源文件&#xff0c;另存为选择ANSI编码 解决2&#xff1a;复制代码再将编码格式改为utf-8,…...

前端 JS 经典:Web 性能指标

什么是性能指标&#xff1a;Web Performance Metrics 翻译成 Web 性能指标&#xff0c;一般和时间有关系&#xff0c;在短时间内做更多有意义的事情。 一个站点表现得好与不好&#xff0c;标准在于用户体验&#xff0c;而用户体验好不好&#xff0c;有一套 RAIL 模型来衡量。这…...

SVN创建分支,分支合并,切换分支。通俗易懂

1、首先在svnbucket.com远程仓库上创建项目&#xff0c;这里我创建了个测试demo&#xff1a; 2、先把svn仓库的项目检出到自己的文件夹&#xff0c;我这里是demo001文件夹&#xff0c;此时并没有创建truck, branches, tags这三个目录&#xff1a; 3、 在demo001文件夹里新建tru…...

【编译原理复习笔记】中间语言

中间语言 中间语言的特点和作用 &#xff08;1&#xff09;独立于机器 &#xff08;2&#xff09;复杂性介于源语言和目标语言之间 中间语言可以使编译程序的结构在逻辑上更为简单明确 常用的中间语言 后缀式 图表示&#xff1a;抽象语法树&#xff0c;有向无环图 三地址代…...

linux笔记6--shell相关

文章目录 1. 查看当前的shell类型2. ps -f命令3. 父子shell4. 分号在命令里的作用问题&#xff1a;环境变量echo&#xff1a; 5. sleep和jobssleep:jobs:例子&#xff1a;&: 6. 外部命令和内建命令图解外部命令type命令 7. history命令8. alias命令9. 推荐 1. 查看当前的sh…...

链表-线性表的链式表示

链表-线性表的链式表示 #mermaid-svg-ozpXrKnNCyYdqHvN {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ozpXrKnNCyYdqHvN .error-icon{fill:#552222;}#mermaid-svg-ozpXrKnNCyYdqHvN .error-text{fill:#552222;stro…...

GNU/Linux - 时区设置

CST China Standard Time 北京时间/中国标准时间 在时区划分上&#xff0c;属东八区&#xff0c;比协调世界时早 8 小时&#xff0c;记为 UTC8 GMT Greenwich Mean Time 格林威治标准时间 是指位于英国伦敦郊区的格林尼治天文台的标准时间&#xff0c;因为本初子午线被定…...

Pretext:值得关注的文本排版引擎依

一、语言特性&#xff1a;Java 26 与模式匹配进化 1.1 Java 26 语言级别支持 IDEA 2026.1 EAP 最引人注目的变化之一&#xff0c;就是新增 Java 26 语言级别支持。这意味着开发者可以提前体验和测试即将在 JDK 26 中正式发布的语言特性。 其中最重要的变化是对 JEP 530 的全面支…...

OpenClaw调试技巧大全:Qwen3-14b_int4_awq任务失败排查指南

OpenClaw调试技巧大全&#xff1a;Qwen3-14b_int4_awq任务失败排查指南 1. 为什么我们需要系统化的调试方法 上周我在尝试用OpenClaw自动整理项目文档时&#xff0c;遇到了一个诡异的问题&#xff1a;任务执行到一半突然卡住&#xff0c;既没有报错也没有继续执行。花了整整三…...

电脑风扇噪音如何解决?智能温控系统全攻略

电脑风扇噪音如何解决&#xff1f;智能温控系统全攻略 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanControl…...

Spring Boot 4.0 Agent-Ready不是未来式——是今天上线就必须具备的生产红线(附GDPR/等保2.0合规增强checklist)

第一章&#xff1a;Spring Boot 4.0 Agent-Ready不是未来式——是今天上线就必须具备的生产红线&#xff08;附GDPR/等保2.0合规增强checklist&#xff09;Spring Boot 4.0 正式将 JVM Agent 集成能力列为启动时强制校验项&#xff0c;而非可选扩展。这意味着任何未通过 java -…...

Spire实现Wod与Pdf相互转换

在 Java 中使用 Spire 库进行 Word 和 PDF 的转换&#xff0c;你需要用到两个不同的库&#xff1a;Word 转 PDF&#xff1a;使用 Spire.Doc for Java (免费版)PDF 转 Word&#xff1a;使用 Spire.PDF for Java (免费版)重要提示&#xff1a; 免费版&#xff08;Free Spire&…...

HARMONYOS的@builderparam的功能及使用案例

一、@BuilderParam 核心功能(一句话总结) @BuilderParam 是 ArkTS 中用于接收 @Builder 构建函数的装饰器,作用是让父组件向子组件动态注入 UI 片段/逻辑,实现组件“插槽(slot)”能力,解耦子组件固定结构、提升复用灵活性。 本质:UI 占位符,子组件只定义位置,父组件…...

DotNetPy:现代.NET 与 Python 互操作 实战指南胀

我为什么会发出这个疑问呢&#xff1f;是因为我研究Web开发中的一个问题时&#xff0c;HTTP请求体在 Filter&#xff08;过滤器&#xff09;处被读取了之后&#xff0c;在 Controller&#xff08;控制层&#xff09;就读不到值了&#xff0c;使用 RequestBody 的时候。 无论是…...

终极mPDF入门指南:5分钟内轻松将HTML转换为PDF的完整教程

终极mPDF入门指南&#xff1a;5分钟内轻松将HTML转换为PDF的完整教程 【免费下载链接】mpdf PHP library generating PDF files from UTF-8 encoded HTML 项目地址: https://gitcode.com/gh_mirrors/mp/mpdf mPDF是一款强大的PHP库&#xff0c;能够将UTF-8编码的HTML轻松…...

Braft Editor原子组件深度解析:Audio、Video、Embed等多媒体组件实现原理

Braft Editor原子组件深度解析&#xff1a;Audio、Video、Embed等多媒体组件实现原理 【免费下载链接】braft-editor 美观易用的React富文本编辑器&#xff0c;基于draft-js开发 项目地址: https://gitcode.com/gh_mirrors/br/braft-editor Braft Editor是一款基于Draft…...

栅极驱动核心原理 - DESAT保护

栅极驱动核心原理 - DESAT保护 它是一张电路实现图 + 文字说明图,旨在解释DESAT保护在驱动IC内部是如何通过硬件电路实现的——即如何利用恒流源、电阻、二极管和比较器来检测 VCEV_{CE}V...