文字和祝福语:创意的粒子效果网页(❤️好看好用❤️)HTML+CSS+JS

博主:命运之光 

🌸专栏:Python星辰秘典

🐳专栏:web开发(简单好用又好看)

❤️专栏:Java经典程序设计

☀️博主的其他文章:点击进入博主的主页

前言:欢迎踏入我的Web项目专栏,一段神奇而令人陶醉的数字世界!

🌌在这里,我将带您穿越时空,揭开属于Web的奥秘。通过HTML、CSS和JavaScript的魔力,我创造了一系列令人惊叹的Web项目,它们仿佛是从梦境中涌现而出。

🌌在这个专栏中,您将遇到华丽的界面,如流星划过夜空般迷人;您将感受到动态的交互,如魔法般让您沉浸其中;您将探索响应式设计的玄妙,让您的屏幕变幻出不同的绚丽景象。

🌌无论您是一个探险家还是一位嗜血的代码巫师,这个专栏将成为您的魔法书。我将分享每个项目的秘密,解开编码的谜题,让您也能够拥有制作奇迹的力量。

🌌准备好了吗?拿起您的键盘,跟随我的指引,一起进入这个神秘而充满惊喜的数字王国。在这里,您将找到灵感的源泉,为自己创造出一段奇幻的Web之旅!

文字和祝福语是我们日常生活中表达情感和传递祝福的重要方式。为了让这些文字和祝福语更加生动和有趣,我设计了一个创意的网页,通过动态效果和互动性,为用户带来与众不同的体验。

目录

简介

图片展示 

视频展示

网页效果

互动功能

项目源代码

代码的使用方法(超简单什么都不用下载)

🍓1.打开记事本 

🍓2.将上面的源代码复制粘贴到记事本里面将文件另存为HTML文件点击保存即可

🍓3.打开html文件(大功告成(●'◡'●))

结语


简介

🌌在这个创意网页项目中,我致力于创造一个独特而引人入胜的方式来展示文字和祝福语。通过精心设计的背景效果、动态文字展示和用户互动功能,这个网页将吸引用户的注意力,增强他们与文字之间的情感联系。

图片展示 

视频展示

文字和祝福语:创意的粒子效果网页


网页效果

🌌网页采用了现代和简洁的设计风格,背景以黑色和深灰色渐变为基调,营造出一种神秘而庄重的氛围。页面的核心是一个具有动态效果的文字容器,让用户可以输入他们想要传达的祝福语,并以独特的方式呈现出来。

🌌当用户输入祝福语后,网页会以淡入的动画效果展示出来,文字会以醒目的字体和阴影呈现,使其更加突出和引人注目。同时,网页背景还采用了创意的粒子效果,这些粒子以随机的颜色和速度在页面中漂浮,为整个网页增添了动感和趣味。


互动功能

🌌为了增加用户的参与度和互动性,网页还提供了输入框和发送按钮。用户可以在输入框中自由输入他们的祝福语,并通过点击发送按钮来展示它。这种互动的设计使用户感到他们的祝福语得到了重视和呈现,增加了与网页的情感连接。

🌌此外,用户还可以多次输入不同的祝福语,每次发送后,文字容器会重新显示新的祝福语,并伴随动画效果,让用户体验到与祝福语一起成长和变化的乐趣。


项目源代码

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>文字和祝福语</title><style>/* 粒子效果容器 */#particle-container {position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;
background: linear-gradient(#000000, #333333); /* 添加渐变效果 */}/* 文字样式 */#text-container {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}#text {color: white;font-size: 48px;font-weight: bold;text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);opacity: 0;animation: fade-in 3s ease-in-out forwards;}/* 输入框样式 */#input-container {position: absolute;top: 70%;left: 50%;transform: translate(-50%, -50%);text-align: center;}#input-text {font-size: 24px;padding: 8px;}#submit-button {font-size: 24px;padding: 8px 16px;margin-top: 8px;}/* 动画效果 */@keyframes fade-in {0% { opacity: 0; }100% { opacity: 1; }}</style>
</head>
<body><div id="particle-container"><canvas id="particle-canvas"></canvas></div><div id="text-container"><h1 id="text">祝福语</h1></div><div id="input-container"><input type="text" id="input-text" placeholder="输入你的祝福话语"><br><button id="submit-button">发送祝福</button></div><script>// 生成粒子效果function createParticles() {const particleContainer = document.getElementById('particle-container');const canvas = document.getElementById('particle-canvas');const context = canvas.getContext('2d');const particles = [];// 设置画布大小为容器大小canvas.width = particleContainer.clientWidth;canvas.height = particleContainer.clientHeight;// 创建粒子对象function Particle(x, y, radius, color, speedX, speedY) {this.x = x;this.y = y;this.radius = radius;this.color = color;this.speedX = speedX;this.speedY = speedY;}// 更新粒子位置Particle.prototype.update = function() {this.x += this.speedX;this.y += this.speedY;// 边界检测,使粒子在画布内移动if (this.x + this.radius > canvas.width || this.x - this.radius < 0) {this.speedX = -this.speedX;}if (this.y + this.radius > canvas.height || this.y - this.radius < 0) {this.speedY = -this.speedY;}};// 绘制粒子Particle.prototype.draw = function() {context.beginPath();context.arc(this.x, this.y, this.radius, 0, Math.PI * 2);context.fillStyle = this.color;context.fill();};// 生成随机颜色function randomColor() {const colors = ['#FF6138', '#FFBE53', '#2980B9', '#282741', '#F7FD04'];return colors[Math.floor(Math.random() * colors.length)];}// 生成随机速度function randomSpeed() {return (Math.random() - 0.5) * 2; // 随机速度范围为-1到1之间}// 创建粒子并添加到数组中for (let i = 0; i < 100; i++) {const x = Math.random() * canvas.width;const y = Math.random() * canvas.height;const radius = Math.random() * 3 + 1;const color = randomColor();const speedX = randomSpeed();const speedY = randomSpeed();const particle = new Particle(x, y, radius, color, speedX, speedY);particles.push(particle);}// 动画循环function animateParticles() {// 清空画布context.clearRect(0, 0, canvas.width, canvas.height);// 更新和绘制粒子for (let i = 0; i < particles.length; i++) {particles[i].update();particles[i].draw();}// 循环调用动画函数requestAnimationFrame(animateParticles);}// 开始动画animateParticles();}// 页面加载完成后执行window.addEventListener('load', () => {createParticles();});// 监听发送祝福按钮点击事件const submitButton = document.getElementById('submit-button');submitButton.addEventListener('click', () => {const inputText = document.getElementById('input-text').value;showBlessing(inputText);});// 显示祝福function showBlessing(blessing) {const textContainer = document.getElementById('text-container');const textElement = document.getElementById('text');textElement.innerText = blessing;textContainer.style.opacity = '1';textContainer.style.animation = 'none';setTimeout(() => {textContainer.style.opacity = '0';textContainer.style.animation = 'fade-in 3s ease-in-out forwards';}, 3000);}</script>
</body>
</html>

代码的使用方法(超简单什么都不用下载)

🍓1.打开记事本 

🍓2.将上面的源代码复制粘贴到记事本里面将文件另存为HTML文件点击保存即可

🍓3.打开html文件(大功告成(●'◡'●))


结语

🌌这个创意的文字和祝福语网页为用户提供了一种独特和有趣的方式来表达情感和传递祝福。通过动态的文字效果和创意的背景粒子效果,网页为用户带来了视觉上的享受和互动上的参与。不论是庆祝节日、送上生日祝福,还是表达对亲朋好友的祝福,这个网页都能给用户带来愉悦和满足的体验。

🌌让我们一起用文字和祝福语创造美好的时刻吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/14832.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Stable Diffusion 多角度人设立绘快速生成多种方法

对于插画师构建人物立绘图设计一套多方位的人设可能要很久&#xff0c;但是使用SD进行操作的话就非常简单了&#xff0c;这个利用ControlNet骨骼图进行配置操作。 供一些样图参考&#xff0c;也可以使用ADetailer进行人物相关部位的修复。 文章目录 准备工作关键词绘制使用骨骼…

Git--远程操作

文章目录 前言一、理解分布式版本控制系统二、远程仓库1.新建远程仓库2.克隆远程仓库3.向远程仓库推送4.拉取远程仓库5.配置Git忽略特殊文件 给命令配置别名 总结 前言 正文开始!!! 一、理解分布式版本控制系统 我们目前所说的所有内容(工作区,暂存区,版本库等等),都是在本地…

数据库-SQL-DML语句

文章目录 DML语句添加数据修改数据DML-删除数据 DML语句 添加数据 表的结构 修改数据 DML-删除数据 DML-总结&#xff1a;

【Redis】2、Redis 的 Java 客户端(Jedis 和 SpringDataRedis)

目录 零、Redis 的 Java 客户端有哪些&#xff1f;二、Jedis 客户端(1) 引依赖(2) 连接 Redis 服务并测试(3) Redis 连接池 三、SpringDataRedis 介绍四、SpringBoot 中集成 SpringDataRedis(1) 引入依赖(2) 配置文件中书写相关配置(3) RedisTemplate 的默认序列化方式(4) 自定…

Qt保存代码

补全保存代码 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//字体按钮对应的槽函数 void Widget::on_fontBtn_clicked() {…

TCP 协议报文

TCP 提供面向连接的通信传输&#xff0c;面向连接是指在传送数据之前必须先建立连接&#xff0c;数据传送完成后要释放连接。无论哪一方向另一方发送数据之前&#xff0c;都必须先在双方之间建立一条连接。在TCP/IP协议中&#xff0c;TCP协议提供可靠的连接服务&#xff0c;连接…

Adobe中修改注释签名

控制面板-> 系统和安全-> 管理工具-> 计算机管理-> 打开“计算机管理”对话框-> 在左边栏的系统工具下选择本地用户和组-> 点击“用户”->选择要改的用户名->右键重命名 打开Adobe Acrobat->点击"编辑"->首选项->注释 ->把 “登…

交叉导轨的结构与特长

在交叉导轨中&#xff0c;精密滚柱互相直交地组合在一起的滚柱保持架与设置在专用轨道上的90V形沟槽滚动面组合起来使用。通过将2列滚子导轨平行地装配&#xff0c;使导轨系统能承受4个方向的负荷。而且&#xff0c;因能向交叉滚子导轨施加预压&#xff0c;从而能获得无间隙且高…

七、VPN技术之密码学基础(密码体制、对称加密算法、非对称加密算法)

更多网络基础内容可见: 网络基础学习目录及各章节指引 7.1 密码学基础 7.1.1 基础概念 密码:对文本进行编码,使偷窥者无法识别的算法。是一套编码方案,一种特殊的报文编码和相应的解码方式的结合体。 加密之前的原始报文称为明文,使用密码之后的报文叫密文。一个简单的例…

23.07.09

完善对话框功能 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this);// this->setWindowOpacity(0); } Widget::~Widget() {delete ui; } //字体对应的槽 voi…

【Git原理与使用】-- 标签管理

目录 理解标签 创建标签 操作标签 删除 推送 理解标签 标签 tag &#xff0c;可以简单的理解为是对某次 commit 的⼀个标识&#xff0c;相当于起了⼀个别名。例如&#xff1a;在项目发布某个版本的时候&#xff0c;针对最后⼀次 commit 起⼀个 v1.0 这样的标签来标识里程碑…

LeetCode-每日一题【2095.删除链表的中间节点】

题目 给你一个链表的头节点 head 。删除 链表的 中间节点 &#xff0c;并返回修改后的链表的头节点 head 。 长度为 n 链表的中间节点是从头数起第 ⌊n / 2⌋ 个节点&#xff08;下标从 0 开始&#xff09;&#xff0c;其中 ⌊x⌋ 表示小于或等于 x 的最大整数。 对于 n 1、…