不会写代码也可以, 手把手教你制作炫酷生日祝福网页(程序员专属情人节表白网站)

news/2024/5/9 9:02:38/文章来源:https://blog.csdn.net/qq_38512499/article/details/127331262

❤ 精彩专栏推荐👇🏻👇🏻👇🏻
💂 作者主页: 【进入主页—🚀获取更多源码】
🎓 web前端期末大作业: 【📚HTML5网页期末作业 (1000套) 】
🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (125套) 】
七夕来袭!是时候展现专属于程序员的浪漫了!你打算怎么给心爱的人表达爱意?鲜花礼物?代码表白?还是创意DIY?或者…无论那种形式,快来秀我们一脸吧!


📂文章目录

  • 二、📚网站介绍
  • 三、🔗网站效果
    • ▶️1.视频演示
    • 🧩 2.图片演示
  • 四、💒 网站代码
    • 🧱HTML结构代码
    • 🏠CSS样式代码
  • 五、🎁更多源码


二、📚网站介绍

📒网站文件方面:html网页结构文件、css网页样式文件、js网页特效文件、images网页图片文件;

📙网页编辑方面:可使用任意HTML编辑软件(如:Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad++ 等任意html编辑软件进行运行及修改编辑等操作)。
其中:
(1)📜html文件包含:其中index.html是首页、其他html为二级页面;
(2)📑 css文件包含:css全部页面样式,3D动态效果,雪花飘落等等
(3)📄 js文件包含:页面炫酷效果实现


三、🔗网站效果

▶️1.视频演示

108七夕动漫背景(烟花)3D相册

🧩 2.图片演示

在这里插入图片描述


四、💒 网站代码

🧱HTML结构代码


<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>七夕情人节- 动漫3D相册告白</title><!-- 播放器css --><link rel="stylesheet" href="./css/common.css" /><!-- 相册css --><link type="text/css" href="./css/style.css" rel="stylesheet" /><scriptid="jqbb"src="https://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script><style type="text/css">body {margin: 0;position: relative;}.raining {display: block;}/* 背景图片 */.backimg {position: absolute;left: 0;top: 0;background: url(img/20.jpg);height: 100%;width: 100%;opacity: 0.3;}.audio {position: absolute;left: 0;top: 0;}</style>
</head><body><!-- 烟花 --><canvas class="raining"></canvas><!-- 打字 --><div class="typing"><!-- 字幕 --><h2 class="header-sub-title" id="word"></h2><h2 class="header-sub-title blink">|</h2></div><!-- 相册 --><div class="box"><ul class="minbox"><li></li><li></li><li></li><li></li><li></li><li></li></ul><ol class="maxbox"><li></li><li></li><li></li><li></li><li></li><li></li></ol></div><!-- 播放器 --><div id="app"><div class="container_player"><div class="music-box"><!-- 播放器相片 --><img src="img/01.png" /><div class="mask"><div class="mplayer" onclick="play()"><i class="fa"><span class="before"></span><span class="after"> </span></i><svgclass="loadingSvg"width="25"height="25"viewBox="0,0,50,50"style="position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);"><circle></circle></svg></div><div class="m-circle m-progress"><svg width="163" height="163" viewBox="0,0,163,163"><circlecx="81"cy="81"r="159"stroke-width="8"stroke="rgba(255, 206, 113, 0.2)"fill="rgba(0,0,0,.2)"></circle><circleclass="a"cx="81"cy="81"r="159"stroke-width="6"stroke="rgba(255, 206, 113, 1)"fill="none"stroke-dasharray="0 999"transform="matrix(0,-1,1,0,0,163)"></circle></svg></div><div class="m_time"><span class="mplayer_curtime">00:00</span><span class="m-join">/</span><span class="mplayer_durtime">00:00</span></div></div></div></div></div><!-- 音乐 --><audio id="myAudio" src="./azn.mp3" loop="loop" ></audio><div class="backimg"></div>
</body>
<script type="text/javascript" src="js/christmassnow.js"></script>
<script src="js/common.js"></script>
<script type="text/javascript">
$(document).ready(function(){/* 自动播放音乐 */play()
})
/* 烟花 */var canvas = document.querySelector(".raining");var w, h;~~ function setSize() { //定义canvas的宽高,让他跟浏览器的窗口的宽高相同window.onresize = arguments.callee;w = window.innerWidth;h = window.innerHeight;canvas.width = w;canvas.height = h;}();var canCon = canvas.getContext("2d"); //建立2d画板var arain = []; //新建数组,储存雨滴//function random(min, max) { //返回最小值到最大值之间的值return Math.random() * (max - min) + min;}function rain() {};rain.prototype = {init: function() { //变量初始化this.x = random(0, w); //在0-w之间生成雨滴this.vx = 0.1;this.y = h; //起点在下面this.vy = random(4, 5);this.h = random(0.1 * h, 0.4 * h); //地板高度this.r = 1; //雨滴绽放的半径this.vr = 1;this.colos = Math.floor(Math.random() * 1000);},draw: function() {if (this.y > this.h) {canCon.beginPath(); //拿起一支笔canCon.fillStyle = '#' + this.colos; //笔墨的颜色,随机变化的颜色canCon.fillRect(this.x, this.y, 3, 10); //想象画一个雨滴} else {canCon.beginPath(); //拿起一支笔canCon.strokeStyle = '#' + this.colos; //笔墨的颜色canCon.arc(this.x, this.y, this.r, 0, Math.PI * 2); //想象画一个圆canCon.stroke(); //下笔作画}},move: function() { //重点是判断和初始位置。其他无大变化if (this.y > this.h) { //位置判断this.y += -this.vy; //从下往上				} else {if (this.r < 100) { //绽放的大小this.r += this.vr;} else {this.init(); //放完后回归变量原点}}this.draw(); //开始作画}}function createrain(num) {for (var i = 0; i < num; i++) {setTimeout(function() {var raing = new rain(); //创建一滴雨raing.init();raing.draw();arain.push(raing);}, 800 * i) //每隔150ms下落一滴雨}}createrain(10); //雨滴数量setInterval(function() {canCon.fillStyle = "rgba(0,0,0,0.1)"; //拿起一支透明0.13的笔		canCon.fillRect(0, 0, w, h); //添加蒙版 控制雨滴长度for (var item of arain) {//item of arain指的是数组里的每一个元素//item in arain指的是数组里的每一个元素的下标(包括圆形连上的可遍历元素)item.move(); //运行整个move事件}}, 1000 / 60); //上升时间// -----------打印字-----------const words = ["❤亲爱的,今天是我们在一起的第520天","❉ 月梅星稀鸣蝉哀,胡琴曲幽谁人拉","❉ 今夜无人盈袖拂,时逢科举缘是由","❉ 你的笑,我无法忘掉","❉ 你的好,温暖我心潮","❉ 你的美,如秋月皎皎","❉ 我的爱,如秋水淼淼","❉ 陪着你一直到老","❉ 亲爱的,七夕到了","❉ 陪着你度过生命中的每一个七夕",];let i = 0;let timer;// speed in mslet deleteDelay = 3000;let typeSpeed = 100;let delSpeed = 50;/* 开始编写文字 */function typingEffect() {let word = words[i].split("");var loopTyping = function () {if (word.length > 0) {document.getElementById("word").innerHTML += word.shift();} else {delay(function () {deletingEffect(); // do stuff}, deleteDelay); // end delay// deletingEffect();return false;}timer = setTimeout(loopTyping, typeSpeed);};loopTyping();}function deletingEffect() {let word = words[i].split("");var loopDeleting = function () {if (word.length > 0) {word.pop();document.getElementById("word").innerHTML = word.join("");} else {if (words.length > i + 1) {i++;}else {i = 0;}typingEffect();return false;}timer = setTimeout(loopDeleting, delSpeed);};loopDeleting();}var delay = (function () {var timer = 0;return function (callback, ms) {clearTimeout(timer);timer = setTimeout(callback, ms);};})();/* 开始打印字 */typingEffect();</script></html>

🏠CSS样式代码


* {margin: 0;padding: 0;
}@font-face {font-family: gothamrnd-light;src: url(../font/GothamRnd-Light.otf);
}/* html,
body {font: 12px gothamrnd-light, 微软雅黑;font-family: gothamrnd-light;color: #666;background-color: #272727;width: 100%;height: 100%;-webkit-font-smoothing: antialiased;-webkit-text-size-adjust: none;-webkit-tap-highlight-color: transparent;-webkit-overflow-scrolling: touch;overflow-scrolling: touch;
} */
#app {
}
.container_player {position: fixed;top: 5%;right: 5%;z-index: 999999999999999;
}.music-box {width: 100px;height: 100px;border-radius: 50%;position: relative;overflow: hidden;display: block;margin: 0 auto 0;
}.music-box img {width: 100%;border-radius: 50%;transition: all 0.36s ease;display: inline;animation: spin 46s infinite linear;animation-play-state: paused;
}.music-box .mask {width: 79px;height: 79px;border-radius: 50%;top: 50%;left: 50%;transform: translate3d(-50%, -50%, 0);position: absolute;background-color: rgba(0, 0, 0, 0.3);z-index: 999999999999 !important;
}.mplayer {position: absolute;width: 40px;height: 40px;background-color: #ad986d;top: 50%;left: 50%;border-radius: 50%;transform: translate3d(-50%, -50%, 0);z-index: 999999999999 !important;cursor: pointer;
}.mplayer i {background-color: #000;display: block;position: absolute;top: 50%;left: 50%;transform: translate3d(-50%, -50%, 0);width: 2px;height: 10px;margin-left: -2px;transition: 0.36s ease;
}.fa {display: inline-block;font: normal normal normal 14px/1 FontAwesome;font-size: inherit;text-rendering: auto;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;transform: translate(0, 0);line-height: 10px;
}.mplayer i .before {width: 0;height: 0;border-color: transparent transparent transparent #ad986d;display: inline-block;border-width: 4px 6px;border-style: solid;color: #ad986d;margin-left: 2px;border-width: 5px 8px;margin-top: 0;transition: 0.36s ease;
}.mplayer i .before {border-left-color: #000;
}.mplayer i .after {display: inline-block;width: 2px;height: 10px;opacity: 0;transition: 0.36s ease;border-left: 2px solid #000;border-right: 2px solid #000;
}.loadingSvg circle {r: 7;stroke: rgba(0, 0, 0, 0.7);stroke-dasharray: 43.5;stroke-dashoffset: 43.5;cx: 12.5;cy: 12.5;stroke-width: 2;fill: none;/* z-index: 9999999; */
}.m-circle {position: absolute;top: 50%;left: 50%;transform: translate3d(-50%, -50%, 0);width: 163px;height: 163px;overflow: hidden;border-radius: 50%;
}
.m-circle svg {z-index: 99999999999999;
}.m_time span {display: block;text-align: center;
}.m_time .mplayer_curtime {font-size: 14px !important;padding-top: 0px;font-size: 8px;color: #e1be78 !important;
}.m_time .m-join {display: none;
}.m_time .mplayer_durtime {font-size: 12px;color: #ad986d;
}.mplaying img {animation-play-state: running;-webkit-animation-play-state: running;
}img {animation: spin 46s infinite linear;-webkit-animation: spin 46s infinite linear;animation-play-state: paused;-webkit-animation-play-state: paused;
}.mplaying .mplayer i {margin-top: -8px;background-color: transparent;
}.mplaying .mplayer i .before {opacity: 0;
}.mplaying .mplayer i .after {opacity: 1;
}.mplaying .loadingSvg circle {transition: 2s;stroke-dasharray: 43.5;stroke-dashoffset: 43.5;/* z-index: 9999999; */
}@keyframes spin {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}
}@keyframes svgLoading {0% {stroke-dashoffset: 2;}100% {stroke-dashoffset: -39;}
}

五、🎁更多源码

1.如果我的博客对你有帮助 请 “👍点赞” “✍️评论” “💙收藏” 一键三连哦!

2.💗【👇🏻👇🏻👇🏻🉑关注我| 获取更多源码】 带您学习各种前端插件、3D炫酷效果、图片展示、文字效果、以及整站模板 、大学生毕业HTML模板 、等!

📣以上内容技术相关问题💌欢迎一起交流学习👇🏻👇🏻👇🏻

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

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

相关文章

MySQL日志redo log、undo log、bin log简介

一条简单的SQL查询语句&#xff0c;执行流程&#xff1a; 查询缓存-词法分析-语法分析-语法书-预处理器-优化器-执行计划-执行器-调用API-引擎-数据 执行器-返回数据-返回缓存 概述 undo log&#xff1a;回滚日志&#xff0c;原子性&#xff0c;实现事务回滚和MVCC&#xf…

windows下vs code配置c++环境

1. 下载vs code 下载链接&#xff1a;https://code.visualstudio.com/ 2. 下载mingw64 下载链接&#xff1a;https://sourceforge.net/projects/mingw-w64/ 然后复制到没有中文路径的文件夹中&#xff0c;再配置环境变量。 验证GCC是否配置成功。gcc -v 3. 下载CMake&am…

RTSP,Java实现简单的RTSP报文交换

这里写目录标题RTSP协议是什么报文实例&#xff1a;1. OPTIONS2. DESCRIBE4. SETUP5. PLAYJava实现简单的RTSP报文交换了解RTSP协议使用Java程序编写RTSP客户端 访问 RTSP服务端&#xff0c;实现拉流 RTSP协议是什么 RTSP是一种基于文本的协议&#xff0c;用CRLF(回车换行)作…

PT_概率论基本概念和事件运算性质

文章目录基本概念随机试验样本点SP(ω\omegaω)例样本空间SSΩ\OmegaΩ例随机事件/事件例基本事件随机事件和基本事件的关系出现/发生必然事件Ω\OmegaΩ不可能事件事件之间的关系事件的包含事件相等交事件/积事件互斥事件(互斥/不相容)∅\varnothing∅并事件(和事件)对立事件(…

CIAGAN: Conditional Identity Anonymization Generative Adversarial Networks

CIAGAN: Conditional Identity Anonymization Generative Adversarial Networks CIAGAN&#xff1a;条件身份匿名生成对抗网络 https://github.com/dvl-tum/ciagan ABSTRCT 计算机视觉技术在社会上的使用空前增加&#xff0c;与此同时&#xff0c;人们对数据隐私的关注也日益…

[附源码]Java计算机毕业设计SSM巴州监控中心人事管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

北京化工大学数据结构2022/10/13作业 题解

目录 问题 A: 字符串变换 问题 B: 字符串求反 问题 C: 字符串转化为整数&#xff08;附加代码模式&#xff09; 问题 D: 字符串匹配&#xff08;朴素算法&#xff09;-附加代码模式 问题 E: 求解最长首尾公共子串-附加代码模式 问题 F: 算法4-7&#xff1a;KMP算法中的模…

AR 配置并导出IOS开发环境配置

文章目录前言一、导入插件二、设置开发环境三、搭建基础框架四、代码五、导出六、测试总结前言 最近接了公司的一个AR项目&#xff0c;需要用MacBook&#xff0c;所以赶鸭子上架&#xff0c;现学…小本本记下来 我用的unity是2020.3.15f2c1, MacBook是 2020MacBook M1, ipad是…

Azkaban(三):进阶案例-java作业类型案例、条件工作流案例、定时执行案例

目录 Javaprocess作业类型案例 条件工作流案例 运行时参数案例 预定义宏案例 定时执行案例 Javaprocess作业类型案例 Javaprocess类型可以运行一个自定义主类方法&#xff0c;type类型为javaprocess。 1.创建maven工程&#xff0c;创建类名&#xff0c;创建AzkabanCase类…

ISP图像信号处理 | GAMES204-计算成像

图像信号处理 | GAMES204-计算成像Dead Pixel CorrectionBlack Level CompensationAnti-aliasingLens Shading CorrectionNoise Reduction3ASAuto-exposureAuto FocusAWBDemosaic&#xff1a;CFA InterpolationColor CorrectionEdge EnhancementFalse Color SuppressionBrightn…

运动用品品牌排行榜,双十一运动装备选购清单

运动需要我们坚定的决心与毅力&#xff0c;因为它也是一个枯燥而艰辛的过程&#xff0c;需要无数汗水的挥洒与不断重复的坚持。为了让自己能更坚持下去运动&#xff0c;我一般都会选择用外在运动装备来辅助锻炼&#xff0c;不仅仅能提高运动效率&#xff0c;还能让运动更加快乐…

移动端自动化任务-AutoJs Pro v9使用教程(一)

官网 - Auto.js Pro Github代码示例 教程与博客 (autojs.org) 开源版文档 Pro 版 API 旧文档 Pro 版 v9新文档 一、前言 本教程是本人学习 Auto.js Pro V9 的记录&#xff0c;算是个入门教程&#xff0c;通过本文可帮你快速了解 autojs 的大体用法和开发步骤。官方文档也有中文…

【qml】QQuickPaintedItem作为代理在ListView中使用

文章目录1.说明2.程序截图3.TextBalloon 类3.1 TextBalloon.h3.2 TextBalloon.cpp3.3 textballoons.qml3.4 main.cpp1.说明 QQuickPaintedItem类提供了一种在QML场景图中使用QPainter API的方法。 QQuickPaintedItem本身作为Item&#xff0c;也可以在ListView中作为代理使用。…

机器学习笔记 - sklearn决策树(kaggle 实战 Titanic 入门)

Kaggle - Titanic 前言 这是 Kaggle 上非常典型的一道入门题&#xff0c;可以用很多机器学习或者深度学习甚至是一些“奇淫技巧”的方法来解决。因为我是一个初学者&#xff0c;所以我希望在尽可能提高正确率的情况下&#xff0c;用更简单的方法。如果这也能帮助到你&#xf…

数据库作业一

MySQL数据库 MySQL官方提供了两个不同的版本&#xff1a; 1、社区版 &#xff08;MySQL Commimity Server&#xff09;免费&#xff0c;MySQL不提供任何技术支持&#xff08;本文操作选用社区版&#xff09; 2、商业版&#xff08;MySQL Enterprise Edition&#xff09;收费&a…

[Microsoft] 通过Microsoft Spotlight 中国站云技能挑战获取微软免费考试券

这是一篇关于微软Spotlight 推出学习活动的同时&#xff0c;如何获得免费考试券的方法&#xff0c;如果该文章在未来时间已经失效&#xff0c;那么建议你关注一下这个博客&#xff0c;有Azure China Cloud最新的消息会进行更新通知。 文章目录1. 所需准备注册账号2. 参加 Micro…

二十八、Hive集成HBase分析搜索引擎用户行为数据

我们已经知道,HBase数据库没有类SQL的查询方式,因此在实际的业务中操作和计算数据非常不方便。而Hive支持标准的SQL语法(HiveQL),若将Hive与HBase集成,则可以通过HiveQL直接对HBase的表进行读写操作,让HBase支持JOIN、GROUP等SQL查询语法,完成复杂的数据分析。甚至可以…

【电源设计】13开关电源仿真与应用

0.前言 本章主要是大概了解一下开关电源仿真与应用&#xff0c;开关电源仿真设计全过程&#xff1a;包括需求分析/控制/PWM。因为本人并不是专门做电源的&#xff0c;此部分内容仅作了解&#xff0c;并不专门去学习。 文章目录0.前言1.项目需求2.方案介绍2.1DCDC级&#xff08…

互联网重提内容为王?学Netflix(奈飞)做好内容营销

Netflix 成立于1997年&#xff0c;不久便一跃成为最受瞩目的流媒体服务网站。它为什么能在短短时间内获得如此巨大的成功呢&#xff1f;答案就在于它使用的超凡 内容营销策略 和方法 —— 数据驱动 、优化内容、以流量转化为目标。 内容为王众人皆知&#xff0c;内容营销是品牌…

【计算机毕业设计】java ssm高校计算机网络考试系统(源码+论文)

提供了一些今年最新计算机毕业设计源代码、文档及帮助指导&#xff0c;公众号&#xff1a;一点毕设&#xff0c;领取更多毕设资料。 随着计算机以及网络在教学领域的高速发展&#xff0c;为了加快数字化校园的进程&#xff0c;更好的实现现代化的教育改革&#xff0c;针对于当下…