HTML5七夕情人节表白网页❤ 属于我们的浪漫星空 ❤ HTML+CSS+JavaScript

这是程序员表白系列中的100款网站表白之一,旨在让任何人都能使用并创建自己的表白网站给心爱的人看。 此波共有100个表白网站,可以任意修改和使用,源码已上传,演示网址如下。

🧡文章末尾-已经附上源码下载地址

🧡作者主页-更多源码

🧡七夕情人节专栏文章

作品介绍

1.网页作品简介 :基于 HTML+CSS+JavaScript 制作七夕情人节表白网页, 生日祝福, 七夕告白, 求婚, 浪漫爱情3D相册,炫酷代码 ,已经兼容手机端和电脑端, 快来制作一款高端的表白网页送(他/她)生日祝福网页,制作修改简单, 需替换图片和文字即可.可自行更换背景音乐。

2.网页作品编辑:任意HTML编辑软件(如:DW、HBuilder、NotePAD 、Vscode 、Sublime 、Webstorm、 Notepad++ )均可修改网页。

文章目录

  • HTML5七夕情人节表白网页❤ 属于我们的浪漫星空 ❤ HTML+CSS+JavaScript
  • 作品介绍
  • 一、作品展示
  • 二、文件目录
  • 三、代码实现
  • 四、学习资料
  • 五、源码下载
  • 六、更多源码

一、作品展示

二、文件目录

三、代码实现

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3/1999/xhtml">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>魔幻粒子表白网页</title>

    <link rel="stylesheet" href="static/css/normalize.css">
    <link rel="stylesheet" href="static/css/style.css" media="screen" type="text/css" />
</head>

<body>
    <canvas class="canvas"></canvas>
    <div class="help" style="display:none;">?</div>
    <div class="ui" style="display:none;">
        <input class="ui-input" type="text" />
        <span class="ui-return"></span>
    </div>
    <div class="overlay">
        <div class="tabs">
            <div class="tabs-labels"><span class="tabs-label">Commands</span><span class="tabs-label">Info</span><span class="tabs-label">Share</span></div>
            <div class="tabs-panels">
                <ul class="tabs-panel commands">

                    </li>
                </ul>
            </div>
        </div>
    </div>

    <script type="text/javascript">
        var S = {
            init: function() {
                var action = window.location.href,
                    i = action.indexOf('?a=');
                S.Drawing.init('.canvas');
                document.body.classList.add('body--ready');
                if (i !== -1) {
                    S.UI.simulate(decodeURI(action).substring(i + 3));
                } else {
                    S.UI.simulate('#circle|亲爱的|老婆大人|你即将成为|全世界|最幸福|的妻子。:|#countdown 5|#show', 3000);
                }
                S.Drawing.loop(function() {
                    S.Shape.render();
                });
            }
        }

        function show() {
            window.location.href = "tiaozhuan/index.html";
        };
        S.Drawing = (function() {
            var canvas, context, renderFn
{
            this.p = new S.Point({
                x: x,
                y: y,
                z: 5,
                a: 1,
                h: 0
            });
            this.e = 0.07;
            this.s = true;
            this.c = new S.Color(255, 255, 255, this.p.a);
            this.t = this.clone();
            this.q = [];
        };
        S.Dot.prototype = {
            clone: function() {
                return new S.Point({
                    x: this.x,
                    y: this.y,
                    z: this.z,
                    a: this.a,
                    h: this.h
                });
            },
            _draw: function() {
                this.c.a = this.p.a;
                S.Drawing.drawCircle(this.p, this.c);
            },

                        fx = x < fx ? x : fx;
                        fy = y < fy ? y : fy;
                    }
                    x += gap;
                    if (x >= shapeCanvas.width) {
                        x = 0;
                        y += gap;
                        p += gap * 4 * shapeCanvas.width;
                    }
                }
                return {
                    dots: dots,
                    w: w + fx,
                    h: h + fy
                };
            }

            function setFontSize(s) {
                shapeContext.font = 'bold ' + s + 'px ' + fontFamily;
            }

            function isNumber(n) {
                return !isNaN(parseFloat(n)) && isFinite(n);
            }

            function init() {
                fit();
                window.addEventListener('resize', fit);
            }
            init();
            return {
                imageFile: function(url, callback) {
                    var image = new Image();
                    var a = S.Drawing.getArea();
                    image.onload = function() {
                        shapeContext.clearRect(0, 0, shapeCanvas.width, shapeCanvas.height);
                        shapeContext.drawImage(this, 0, 0, a.h * 0.6, a.h * 0.6);
                        callback(processCanvas());
                    };
                    image.onerror = function() {
                        callback(S.ShapeBuilder.letter('What?'));
                    }
                    image.src = url;
                },
                circle: function(d) {
                    var r = Math.max(0, d) / 2;
                    shapeContext.clearRect(0, 0, shapeCanvas.width, shapeCanvas.height);
                    shapeContext.beginPath();
                    shapeContext.arc(r * gap, r * gap, r * gap, 0, 2 * Math.PI, false);
                    shapeContext.fill();
                    shapeContext.closePath();
                    return processCanvas();
                },
                letter: function(l) {
                    var s = 0;
                    setFontSize(fontSize);
                    s = Math.min(fontSize, (shapeCanvas.width / shapeContext.measureText(l).width) * 0.8 * fontSize, (shapeCanvas.height / fontSize) * (isNumber(l) ? 1 : 0.45) * fontSize);

                        } else {
                            dots[d].move(new S.Point({
                                z: Math.random() * 5 + 5,
                                h: fast ? 18 : 30
                            }));
                        }
                        dots[d].s = true;
                        dots[d].move(new S.Point({
                            x: n.dots[i].x + cx,
                            y: n.dots[i].y + cy,
                            a: 1,
                            z: 5,
                            h: 0
                        }));
                        n.dots = n.dots.slice(0, i).concat(n.dots.slice(i + 1));
                        d++;
                    }
                    for (var i = d; i < dots.length; i++) {
                        if (dots[i].s) {
                            dots[i].move(new S.Point({
                                z: Math.random() * 20 + 10,
                                a: Math.random(),
                                h: 20
                            }));
                            dots[i].s = false;
                            dots[i].e = 0.04;
                            dots[i].move(new S.Point({
                                x: Math.random() * a.w,
                                y: Math.random() * a.h,
                                a: 0.3,
                                z: Math.random() * 4,
                                h: 0
                            }));
                        }
                    }
                },
                render: function() {
                    for (var d = 0; d < dots.length; d++) {
                        dots[d].render();
                    }
                }
            }
        }());
        S.init();
    </script>
    <div style="display:none">
        <div class="no-mobile">
            <div id="left_layer" style="position:fixed; top:150px; left:0px;">
                <script type="text/javascript" src="static/js/au-oou.js"></script>
            </div>
            <style>
                .no-mobile {
                    display: none
                }

                @media(min-width:960px) {
                    .no-mobile {
                        display: inline
                    }
                }
            </style>
        </div>
        <div class="no-mobile1">
            <div id="left_layer1" style="position:fixed; bottom:0px; right:0px;">
                <script type="text/javascript" src="static/js/a.js"></script>
            </div>
            <style>
                .no-mobile1 {
                    display: none
                }

                @media(min-width:960px) {
                    .no-mobile1 {
                        display: inline
                    }
                }
            </style>
        </div>
        <div class="no-pc">
            <script type="text/javascript" src="static/js/nv-l.js"></script>
            <style>
                .no-pc {
                    display: inline
                }

                @media(min-width:960px) {
                    .no-pc {
                        display: none
                    }
                }
            </style>
        </div>

        <div class="no-pc">
            <script type="text/javascript" src="static/js/nv-l.js"></script>
            <style>
                .no-pc {
                    display: inline;
                }

                @media (min-width: 960px) {
                    .no-pc {
                        display: none;
                    }
                }
            </style>
        </div>
    </div>
</body>

</html>



四、学习资料

web前端 零基础-入门到高级 (视频+源码+开发软件+学习资料+面试题) 一整套 (教程)
适合入门到高级的童鞋们入手~送1000套HTML+CSS+JavaScript模板网站


五、源码下载

【百度网盘-完整源码下载地址↓】

链接:https://pan.baidu/s/1UdFzRE6mEKC5D1xALTMbYw
提取码:8888


六、更多源码

❤100款表白网页演示地址

❤100款表白网页在线视频演示

更多推荐

HTML5七夕520情人节表白网页❤ 属于我们的浪漫星空 ❤ HTML+CSS+JavaScript