0


HTML5七夕情人节表白网页制作【粉色樱花雨3D相册】HTML+CSS+JavaScript

这是程序员表白系列中的100款网站表白之一,旨在让任何人都能使用并创建自己的表白网站给心爱的人看。 此波共有100个表白网站,可以任意修改和使用,很多人会希望向心爱的男孩女孩告白,生性腼腆的人即使那个TA站在眼前都不敢向前表白。说不出口的话就用短视频告诉TA吧~制作一个表白网页告诉TA你的心意,演示如下。

文章目录

一、网页介绍

1 网页简介:基于

HTML+CSS+JavaScript 制作七夕情人节表白网页、生日祝福、七夕告白、 求婚、浪漫爱情3D相册、炫酷代码

,快来制作一款高端的表白网页送(他/她)浪漫的告白,制作修改简单,可自行更换背景音乐,文字和图片即可使用

2.网页编辑:任意HTML编辑软件(如:Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad++ 等任意html编辑软件进行运行及修改编辑等操作)。


一、网页效果

在这里插入图片描述

在这里插入图片描述

二、代码展示

1.HTML代码

代码如下(示例):以下仅展示部分代码供参考~

<!DOCTYPEhtml><html><head><metacharset="utf-8"/><title></title><scriptsrc="js/jquery.min.js"></script><linktype="text/css"href="./css/style.css"rel="stylesheet"/><style>html,
      body{width: 100%;height: 100%;margin: 0;padding: 0;overflow: hidden;}.container{width: 100%;height: 100%;margin: 0;padding: 0;background-color: #000000;}</style></head><body><audioautoplay="autopaly"><sourcesrc="renxi.mp3"type="audio/mp3"/></audio><divid="jsi-cherry-container"class="container"><divclass="box"><ulclass="minbox"><li></li><li></li><li></li><li></li><li></li><li></li></ul><olclass="maxbox"><li></li><li></li><li></li><li></li><li></li><li></li></ol></div></div><script>varRENDERER={INIT_CHERRY_BLOSSOM_COUNT:30,MAX_ADDING_INTERVAL:10,init:function(){this.setParameters();this.reconstructMethods();this.createCherries();this.render();if(
            navigator.userAgent.match(/(phone|pod|iPhone|iPod|ios|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)){var box = document.querySelectorAll('.box')[0];
            console.log(box,'移动端');
            box.style.marginTop ='65%';}},setParameters:function(){this.$container =$('#jsi-cherry-container');this.width =this.$container.width();this.height =this.$container.height();this.context =$('<canvas />').attr({width:this.width,height:this.height }).appendTo(this.$container).get(0).getContext('2d');this.cherries =[];this.maxAddingInterval = Math.round((this.MAX_ADDING_INTERVAL*1000)/this.width
          );this.addingInterval =this.maxAddingInterval;},reconstructMethods:function(){this.render =this.render.bind(this);},createCherries:function(){for(var i =0,
              length = Math.round((this.INIT_CHERRY_BLOSSOM_COUNT*this.width)/1000);
            i < length;
            i++){this.cherries.push(newCHERRY_BLOSSOM(this,true));}},render:function(){requestAnimationFrame(this.render);this.context.clearRect(0,0,this.width,this.height);this.cherries.sort(function(cherry1, cherry2){return cherry1.z - cherry2.z;});for(var i =this.cherries.length -1; i >=0; i--){if(!this.cherries[i].render(this.context)){this.cherries.splice(i,1);}}if(--this.addingInterval ==0){this.addingInterval =this.maxAddingInterval;this.cherries.push(newCHERRY_BLOSSOM(this,false));}}};varCHERRY_BLOSSOM=function(renderer, isRandom){this.renderer = renderer;this.init(isRandom);};CHERRY_BLOSSOM.prototype ={FOCUS_POSITION:300,FAR_LIMIT:600,MAX_RIPPLE_COUNT:100,RIPPLE_RADIUS:100,SURFACE_RATE:0.5,SINK_OFFSET:20,init:function(isRandom){this.x =this.getRandomValue(-this.renderer.width,this.renderer.width
          );this.y = isRandom
            ?this.getRandomValue(0,this.renderer.height):this.renderer.height *1.5;this.z =this.getRandomValue(0,this.FAR_LIMIT);this.vx =this.getRandomValue(-2,2);this.vy =-2;this.theta =this.getRandomValue(0, Math.PI*2);this.phi =this.getRandomValue(0, Math.PI*2);this.psi =0;this.dpsi =this.getRandomValue(Math.PI/600, Math.PI/300);this.opacity =0;this.endTheta =false;this.endPhi =false;this.rippleCount =0;var axis =this.getAxis(),
            theta =this.theta +(Math.ceil(-(this.y +this.renderer.height *this.SURFACE_RATE)/this.vy
              )*
                Math.PI)/500;
          theta %= Math.PI*2;this.offsetY =40*(theta <= Math.PI/2|| theta >=(Math.PI*3)/2?-1:1);this.thresholdY =this.renderer.height /2+this.renderer.height *this.SURFACE_RATE* axis.rate;this.entityColor =this.renderer.context.createRadialGradient(0,40,0,0,40,80);this.entityColor.addColorStop(0,'hsl(330, 70%, '+50*(0.3+ axis.rate)+'%)');this.entityColor.addColorStop(0.05,'hsl(330, 40%,'+55*(0.3+ axis.rate)+'%)');this.entityColor.addColorStop(1,'hsl(330, 20%, '+70*(0.3+ axis.rate)+'%)');this.shadowColor =this.renderer.context.createRadialGradient(0,40,0,0,40,80);this.shadowColor.addColorStop(0,'hsl(330, 40%, '+30*(0.3+ axis.rate)+'%)');this.shadowColor.addColorStop(0.05,'hsl(330, 40%,'+30*(0.3+ axis.rate)+'%)');this.shadowColor.addColorStop(1,'hsl(330, 20%, '+40*(0.3+ axis.rate)+'%)');},getRandomValue:function(min, max){return min +(max - min)* Math.random();},getAxis:function(){var rate =this.FOCUS_POSITION/(this.z +this.FOCUS_POSITION),
            x =this.renderer.width /2+this.x * rate,
            y =this.renderer.height /2-this.y * rate;return{rate: rate,x: x,y: y };},renderCherry:function(context, axis){
          context.beginPath();
          context.moveTo(0,40);
          context.bezierCurveTo(-60,20,-10,-60,0,-20);
          context.bezierCurveTo(10,-60,60,20,0,40);
          context.fill();for(var i =-4; i <4; i++){
            context.beginPath();
            context.moveTo(0,40);
            context.quadraticCurveTo(i *12,10, i *4,-24+ Math.abs(i)*2);
            context.stroke();}},render:function(context){var axis =this.getAxis();if(
            axis.y ==this.thresholdY &&this.rippleCount <this.MAX_RIPPLE_COUNT){
            context.save();
            context.lineWidth =2;
            context.strokeStyle ='hsla(0, 0%, 100%, '+(this.MAX_RIPPLE_COUNT-this.rippleCount)/this.MAX_RIPPLE_COUNT+')';
            context.translate(
              axis.x +this.offsetY * axis.rate *(this.theta <= Math.PI?-1:1),
              axis.y
            );
            context.scale(1,0.3);
            context.beginPath();
            context.arc(0,0,(this.rippleCount /this.MAX_RIPPLE_COUNT)*this.RIPPLE_RADIUS*
                axis.rate,0,
              Math.PI*2,false);
            context.stroke();
            context.restore();this.rippleCount++;}if(axis.y <this.thresholdY ||!this.endTheta ||!this.endPhi){if(this.y <=0){this.opacity = Math.min(this.opacity +0.01,1);}
            context.save();
            context.globalAlpha =this.opacity;
            context.fillStyle =this.shadowColor;
            context.strokeStyle ='hsl(330, 30%,'+40*(0.3+ axis.rate)+'%)';
            context.translate(
              axis.x,
              Math.max(axis.y,this.thresholdY +this.thresholdY - axis.y));
            context.rotate(Math.PI-this.theta);
            context.scale(axis.rate *-Math.sin(this.phi), axis.rate);
            context.translate(0,this.offsetY);this.renderCherry(context, axis);
            context.restore();}
          context.save();
          context.fillStyle =this.entityColor;
          context.strokeStyle ='hsl(330, 40%,'+70*(0.3+ axis.rate)+'%)';
          context.translate(
            axis.x,
            axis.y + Math.abs(this.SINK_OFFSET* Math.sin(this.psi)* axis.rate));
          context.rotate(this.theta);
          context.scale(axis.rate * Math.sin(this.phi), axis.rate);
          context.translate(0,this.offsetY);this.renderCherry(context, axis);
          context.restore();if(this.y <=-this.renderer.height /4){if(!this.endTheta){for(var theta = Math.PI/2, end =(Math.PI*3)/2;
                theta <= end;
                theta += Math.PI){if(this.theta < theta &&this.theta + Math.PI/200> theta){this.theta = theta;this.endTheta =true;break;}}}if(!this.endPhi){for(var phi = Math.PI/8, end =(Math.PI*7)/8;
                phi <= end;
                phi +=(Math.PI*3)/4){if(this.phi < phi &&this.phi + Math.PI/200> phi){this.phi = Math.PI/8;this.endPhi =true;break;}}}}return(this.z >-this.FOCUS_POSITION&&this.z <this.FAR_LIMIT&&this.x <this.renderer.width *1.5);}};$(function(){RENDERER.init();});</script></body></html>

2.CSS代码

@charset"utf-8";*{margin: 0;padding: 0;}body{max-width: 100%;min-width: 100%;height: 100%;background-size: cover;background-repeat: no-repeat;background-attachment: fixed;background-size: 100% 100%;position: absolute;margin-left: auto;margin-right: auto;}li{list-style: none;}.box{width: 200px;height: 200px;background-size: cover;background-repeat: no-repeat;background-attachment: fixed;background-size: 100% 100%;position: absolute;margin-left: 42%;margin-top: 22%;-webkit-transform-style: preserve-3d;-webkit-transform:rotateX(13deg);-webkit-animation: move 5s linear infinite;}.minbox{width: 100px;height: 100px;position: absolute;left: 50px;top: 30px;-webkit-transform-style: preserve-3d;}.minbox li{width: 100px;height: 100px;position: absolute;left: 0;top: 0;}.minbox li:nth-child(1){background:url(../img/01.png) no-repeat 0 0;-webkit-transform:translateZ(50px);}.minbox li:nth-child(2){background:url(../img/02.png) no-repeat 0 0;-webkit-transform:rotateX(180deg)translateZ(50px);}5){-webkit-transform:rotateY(-90deg)translateZ(300px);width: 400px;height: 400px;opacity: 0.8;left: -100px;top: -100px;}.box:hover ol li:nth-child(6){-webkit-transform:rotateY(90deg)translateZ(300px);width: 400px;height: 400px;opacity: 0.8;left: -100px;top: -100px;}@keyframes move{0%{-webkit-transform:rotateX(13deg)rotateY(0deg);}100%{-webkit-transform:rotateX(13deg)rotateY(360deg);}}

三、精彩专栏推荐:

看到这里了就 【点赞,好评,收藏】 三连 支持下吧,你的支持是我创作的动力。

HTML5七夕情人节表白实战案例《100套》

标签: javascript html html5

本文转载自: https://blog.csdn.net/bigwhiteshark/article/details/125910816
版权归原作者 IT-司马青衫 所有, 如有侵权,请联系我们删除。

“HTML5七夕情人节表白网页制作【粉色樱花雨3D相册】HTML+CSS+JavaScript”的评论:

还没有评论