炫酷HTML蜘蛛侠登录页面

全篇使用HTML、CSS、JavaScript,建议有过基础的进行阅读。 

一、预览图

二、HTML代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>蜘蛛侠登录界面</title><link rel="stylesheet" href="styles.css">
</head>
<body><div class="center-container"><div class="login-container"><div class="spiderman-logo"><img src="logo.png" alt="Spider-Man Logo"></div><h2>欢迎回家</h2><form class="login-form"><div class="input-group"><label for="username">用户名</label><input type="text" id="username" placeholder="输入你的用户名"></div><div class="input-group"><label for="password">密码</label><input type="password" id="password" placeholder="输入你的密码"></div><button type="submit">登录</button></form></div></div><canvas id="spider-web"></canvas><script src="script.js"></script>
</body>
</html>

三、CSS代码

* {margin: 0;padding: 0;box-sizing: border-box;
}body {font-family: Arial, sans-serif;background-color: #0A0A2A;display: flex;justify-content: center;align-items: center;height: 100vh;overflow: hidden;position: relative;color: white;
}.center-container {display: flex;justify-content: center;align-items: center;z-index: 2;position: relative;
}.login-container {background: linear-gradient(145deg, #c8102e, #0a0a2a);padding: 40px;border-radius: 15px;box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);text-align: center;width: 300px;z-index: 2;
}.spiderman-logo img {width: 50px;height: 60px;margin-bottom: 5px;
}/* Form styles */
.login-form {display: flex;flex-direction: column;
}.input-group {margin-bottom: 20px;
}.input-group label {margin-bottom: 8px;font-size: 14px;float: left;
}.input-group input {width: 100%;padding: 10px;border: none;border-radius: 5px;background-color: #ffffff;color: black;font-size: 16px;
}button {padding: 10px 20px;border: none;background-color: #ff4c4c;color: white;font-size: 18px;border-radius: 5px;cursor: pointer;transition: background-color 0.3s ease;
}button:hover {background-color: #ff1c1c;
}#spider-web {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 1;width: 100vw;height: 100vh;
}

四、JavaScript代码

const canvas = document.getElementById('spider-web');
const ctx = canvas.getContext('2d');canvas.width = window.innerWidth;
canvas.height = window.innerHeight;function drawWeb() {const centerX = canvas.width / 2;const centerY = canvas.height / 2;const radiusStep = 30;const radialStep = 10;const rings = 10;const lines = 12;for (let i = 1; i <= rings; i++) {ctx.beginPath();ctx.arc(centerX, centerY, radiusStep * i, 0, Math.PI * 2);ctx.strokeStyle = 'white';ctx.lineWidth = 1;ctx.stroke();}for (let i = 0; i < lines; i++) {const angle = (i / lines) * Math.PI * 2;const x = centerX + Math.cos(angle) * radiusStep * rings;const y = centerY + Math.sin(angle) * radiusStep * rings;ctx.beginPath();ctx.moveTo(centerX, centerY);ctx.lineTo(x, y);ctx.strokeStyle = 'white';ctx.lineWidth = 1;ctx.stroke();}for (let i = 1; i < rings; i++) {for (let j = 0; j < lines; j++) {const angle1 = (j / lines) * Math.PI * 2;const angle2 = ((j + 1) / lines) * Math.PI * 2;const x1 = centerX + Math.cos(angle1) * radiusStep * i;const y1 = centerY + Math.sin(angle1) * radiusStep * i;const x2 = centerX + Math.cos(angle2) * radiusStep * i;const y2 = centerY + Math.sin(angle2) * radiusStep * i;ctx.beginPath();ctx.moveTo(x1, y1);ctx.lineTo(x2, y2);ctx.strokeStyle = 'white';ctx.lineWidth = 1;ctx.stroke();}}
}drawWeb();

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

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

相关文章

将 YOLOv10 模型从 PyTorch 转换为 ONNX

将 YOLOv10 模型从 PyTorch 转换为 ONNX 1. 环境准备1.1 克隆 YOLOv5 仓库1.2 安装依赖库 2. 转换模型2.1 使用 YOLOv5 提供的命令进行转换2.2 转换过程2.3 转换结果 3. 验证转换后的模型3.1 预测3.2 验证 4. 总结 在深度学习模型的部署过程中&#xff0c;将模型从一种格式转换…

Windows和Mac命令窗快速打开文件夹

Windows explorer . 和 macOS open . 命令详解 1. Windows explorer . explorer 是 Windows 上的文件资源管理器&#xff0c;用于通过命令行打开文件夹或文件。 常用命令格式&#xff1a; explorer [选项] [目标路径]. 表示当前目录&#xff0c;explorer . 打开当前工作目录…

前端面试常见手写题

实现一个new操作符 //实现一个new操作符 function myNew(fn,...args){if(typeof fn ! function) {throw (fn is not a function)}//将对象的原型设置为fn的prototypelet resObject.create(fn.prototype)//使用 apply 执行构造函数 并传入参数 arguments 获取函数的返回值let r…

C语言的结构体类型

在我们使用C语言进行编写代码时&#xff0c;常常会使用已经给定的类型来创建变量&#xff0c;比如int型&#xff0c;char型&#xff0c;double型等&#xff0c;而当我们想创建一些较为复杂的东西时&#xff0c;单单用一个类型变量是没办法做到的&#xff0c;比如我们想创建一个…

DPDK基础入门(十):虚拟化

I/O虚拟化 全虚拟化&#xff1a;宿主机截获客户机对I/O设备的访问请求&#xff0c;然后通过软件模拟真实的硬件。这种方式对客户机而言非常透明&#xff0c;无需考虑底层硬件的情况&#xff0c;不需要修改操作系统。 半虚拟化&#xff1a;通过前端驱动/后端驱动模拟实现I/O虚拟…

嵌入式鸿蒙系统开发语言与开发方法分析

大家好,今天主要给大家分享一下,HarmonyOS系统的主力开发语言ArkTS语言开发方法,它是基于TypeScript(简称TS)语言扩展而来。 第一:ArkTS语言基本特性 目的:声明式UI,让开发者以更简洁,更自然的方式开发高性能应用。 声明式 UI基本特性: 基本UI描述:ArkTS定义了各种装饰…

使用Ubuntu耳机输出正弦波信号

最近有一个项目想使用喇叭发出一个标准的正弦波测试信号&#xff0c;故记录下操作过程 sudo apt install libasound2-dev 否则有可能会报错&#xff1a; alsaaudio.c:28:10: fatal error: alsa/asoundlib.h: No such file or directory 安装pyalsaaudio&#xff1a; pip …

合肥鲸天科技的外卖会员卡系统有人做过吗?赚钱吗?

我们先来了解一下这个合肥鲸天科技&#xff0c;通过我在网上找到的资料和企业查询&#xff0c;这家公司还是很有实力的&#xff0c;合肥鲸天科技有限公司也是欢迎有合作的人到公司来进行一个考察和合作其他一些项目的。 外卖会员卡简介绍&#xff1a; 这个外卖会员卡&#xf…

Linux | 探索 Linux 信号机制:信号的产生和自定义捕捉

信号是 Linux 操作系统中非常重要的进程控制机制&#xff0c;用来异步通知进程发生某种事件。理解信号的产生、阻塞、递达、捕捉等概念&#xff0c;可以帮助开发者更好地编写健壮的应用程序&#xff0c;避免由于未处理的信号导致程序异常退出。本文将带你从基础概念开始&#x…

CACTI 0.8.7 迁移并升级到 1.2.7记录

升级前后环境 升级前: CactiEZ 中文版 V10 升级后: Ubuntu 2204 Cacti 1.2.7 升级原因:风险漏洞太多,升不尽,补不完. 升级流程 Created with Raphal 2.3.0 开始 DST:安装Ububtu/Mariadb/apache/php SRC:备份 DB/RRA 数据导入 结束 Cacti 依赖包 注意:UBUNTU下有些包,它非另外…

Apache Cordova开发教程-入门基础

1.Apache Cordova 简介 Apache Cordova介绍_core apache cordova api.-CSDN博客 2.Apache Cordova CLI环境搭建&#xff0c;编译&#xff0c;启动 Apache Cordova开发环境搭建&#xff08;二&#xff09;VS Code_vscode cordova框架-CSDN博客 VSCode 开发Cordova应用调试整理…

自然语言处理实战项目

自然语言处理实战项目 自然语言处理&#xff08;NLP, Natural Language Processing&#xff09;是人工智能的重要分支之一&#xff0c;致力于让计算机理解、生成并与人类进行语言交互。随着深度学习、神经网络和大数据的发展&#xff0c;NLP技术在近年来取得了飞跃性的进展&am…

Redis Key的过期策略

Redis 的过期策略主要是指管理和删除那些设定了过期时间的键&#xff0c;以确保内存的有效使用和数据的及时清理。 具体来说&#xff0c;Redis 有三种主要的过期策略&#xff1a;定期删除&#xff08;Scheduled Deletion&#xff09;、惰性删除&#xff08;Lazy Deletion&#…

C#命令行参数解析库System.CommandLine介绍

命令行参数 平常在日常的开发过程中&#xff0c;会经常用到命令行工具。如cmd下的各种命令。 以下为sc命令执行后的截图&#xff0c;可以看到&#xff0c;由于没有输入任何附带参数&#xff0c;所以程序并未执行任何操作&#xff0c;只是输出了描述和用法。 系统在创建一个新…

【BFS专题】— 解决最短路问题

1、迷宫中离入口最近的出口 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 利用BFS层序遍历&#xff0c;新建一个变量统计步数代码&#xff1a; class Solution {int dx[] {0, 0, -1, 1};int dy[] {1, -1, 0, 0};public int nearestExit(char[][] maze, int[] en…

URP 线性空间 ui资源制作规范

前言&#xff1a; 关于颜色空间的介绍&#xff0c;可参阅 unity 文档 Color space URP实现了基于物理的渲染&#xff0c;为了保证光照计算的准确&#xff0c;需要使用线性空间&#xff1b; 使用线性空间会带来一个问题&#xff0c;ui资源在unity中进行透明度混合时&#xff…

Centos7 Hadoop 单机版安装教程(图文)

本章教程,主要记录如何在Centos7中安装Hadoop单机版。 一、软件安装包和基础环境 CentOS7.x,jdk8,hadoop 通过网盘分享的文件:Hadoop 链接: https://pan.baidu.com/s/1_qGI9QeXMAJNb3TydHhQGA?pwd=xnz4 提取码: xnz4 当然你也可以自己去官网下载。 java8:https://www.ora…

Git 命令详解与项目迁移指南

在现代软件开发中&#xff0c;Git 是一个不可或缺的版本控制系统&#xff0c;它帮助开发者管理代码的变更历史。本文将详细介绍两个常用的 Git 命令&#xff0c;并探讨如何将项目从一个仓库迁移到另一个新仓库&#xff0c;同时保留所有的提交历史。 1. Git 命令详解 1.1 git …

Redis:发布(pub)与订阅(sub)实战

前言 Redis发布订阅&#xff08;Pub/Sub&#xff09;是Redis提供的一种消息传递机制&#xff0c;它使用“发布者-订阅者”&#xff08;publisher-subscriber&#xff09;模式来处理消息传递。在这种模式下&#xff0c;发布者将消息发布到一组订阅者中&#xff0c;而无需关心谁…

java的内存分配和回收机制

Java 与 C之间有一堵由内存动态分配和垃圾收集技术所围成的高墙&#xff0c;墙外面的人想进去&#xff0c;墙里面的人却想出来。 概述 垃圾收集&#xff08;GC&#xff09;需要完成的三件事情&#xff1a; 哪些内存需要回收&#xff1f;什么时候回收&#xff1f;如何回收&am…