马上520了,看到一篇博客,适合520做表白礼物,无商用,纯分享,有需要的可以自行复制使用,换下图片就可以了,图片重命名为 1.jpg 2.jpg 3.jpg  以此规律命名 。

<!DOCTYPE html>
<html lang="en" ondragstart="return false"><head><meta charset="UTF-8" /><meta name="Keywords" content="" /><meta name="Description" content="" /><title>图册</title><!-- 如果我有天醒来 --><!-- 层叠样式表 --><style type="text/css">/* 去掉默认效果 */* {margin: 0;padding: 0;}body {background: #222;overflow: hidden;/* 取消选中 */user-select: none;}@keyframes rotate {100% {transform: rotateY(360deg);}}.perspective {/*子元素透视 场景深度*/perspective: 600px;}.wrap {/* 3d */width: 135px;height: 240px;margin: 100px auto;position: relative;/* border: 1px solid red; */transform: rotateX(-20deg) rotateY(0deg);transform-style: preserve-3d;}.wrap img {display: block;/* 绝对定位 */position: absolute;width: 100%;height: 100%;transform: rotateY(0deg) translateZ(0px);background: transparent;box-shadow: 0 0 4px #fff;border-radius: 5px;/* webkit */}/* 照片底座 */.wrap p {width: 1200px;height: 1200px;background: -webkit-radial-gradient(center center, 600px 600px, rgba(122, 122, 122, 0.5), rgba(0, 0, 0, 0));position: absolute;border-radius: 50%;left: 50%;top: 100%;margin-left: -600px;margin-top: -600px;/* 沿着x轴按倒 */transform: rotateX(90deg);}</style></head><body><!-- 盒子容器 --><div class="perspective"><div class="wrap" id="imgwrap"><!-- 引入图片值页面 --><img class="f1" src="img/12.jpeg" /><img class="f1" src="img/13.jpeg" /><img class="f1" src="img/14.jpeg" /><img class="f1" src="img/15.jpeg" /><img class="f1" src="img/16.jpeg" /><img class="f1" src="img/1.jpeg" /><img class="f1" src="img/2.jpeg" /><img class="f1" src="img/3.jpeg" /><img class="f1" src="img/4.jpeg" /><img class="f1" src="img/5.jpeg" /><img class="f1" src="img/6.jpeg" /><img class="f1" src="img/7.jpeg" /><img class="f1" src="img/5.jpeg" /><img class="f1" src="img/6.jpeg" /><img class="f1" src="img/7.jpeg" /><img class="f1" src="img/8.jpeg" /><img class="f1" src="img/9.jpeg" /><img class="f1" src="img/10.jpeg" /><img class="f1" src="img/11.jpeg" /><img class="f1" src="img/17.jpeg" /><img class="f1" src="img/18.jpeg" /><img class="f1" src="img/19.jpeg" /><img class="f1" src="img/20.jpeg" /><img class="f1" src="img/21.jpeg" /><img class="f1" src="img/22.jpeg" /><img class="f1" src="img/23.jpeg" /><img class="f1" src="img/24.jpeg" /><img class="f1" src="img/25.jpeg" /><img class="f1" src="img/26.jpeg" /><img class="f1" src="img/27.jpeg" /><img class="f1" src="img/28.jpeg" /><img class="f1" src="img/29.jpeg" /><img class="f1" src="img/30.jpeg" /><!-- 引入图片值页面 --><img class="f2" src="img/1.jpeg" /><img class="f2" src="img/2.jpeg" /><img class="f2" src="img/3.jpeg" /><img class="f2" src="img/4.jpeg" /><img class="f2" src="img/5.jpeg" /><img class="f2" src="img/9.jpeg" /><img class="f2" src="img/10.jpeg" /><img class="f2" src="img/11.jpeg" /><img class="f2" src="img/12.jpeg" /><img class="f2" src="img/25.jpeg" /><img class="f2" src="img/26.jpeg" /><img class="f2" src="img/27.jpeg" /><img class="f2" src="img/28.jpeg" /><img class="f2" src="img/29.jpeg" /><img class="f2" src="img/30.jpeg" /><img class="f2" src="img/13.jpeg" /><img class="f2" src="img/14.jpeg" /><img class="f2" src="img/15.jpeg" /><img class="f2" src="img/16.jpeg" /><img class="f2" src="img/17.jpeg" /><img class="f2" src="img/18.jpeg" /><img class="f2" src="img/19.jpeg" /><img class="f2" src="img/20.jpeg" /><img class="f2" src="img/21.jpeg" /><img class="f2" src="img/22.jpeg" /><img class="f2" src="img/23.jpeg" /><img class="f2" src="img/24.jpeg" /><img class="f2" src="img/6.jpeg" /><img class="f2" src="img/7.jpeg" /><img class="f2" src="img/5.jpeg" /><img class="f2" src="img/6.jpeg" /><img class="f2" src="img/7.jpeg" /><img class="f2" src="img/8.jpeg" /><!-- 引入图片值页面 --><img class="f3" src="img/1.jpeg" /><img class="f3" src="img/2.jpeg" /><img class="f3" src="img/11.jpeg" /><img class="f3" src="img/12.jpeg" /><img class="f3" src="img/25.jpeg" /><img class="f3" src="img/26.jpeg" /><img class="f3" src="img/27.jpeg" /><img class="f3" src="img/3.jpeg" /><img class="f3" src="img/4.jpeg" /><img class="f3" src="img/5.jpeg" /><img class="f3" src="img/16.jpeg" /><img class="f3" src="img/17.jpeg" /><img class="f3" src="img/18.jpeg" /><img class="f3" src="img/10.jpeg" /><img class="f3" src="img/28.jpeg" /><img class="f3" src="img/29.jpeg" /><img class="f3" src="img/30.jpeg" /><img class="f3" src="img/13.jpeg" /><img class="f3" src="img/19.jpeg" /><img class="f3" src="img/20.jpeg" /><img class="f3" src="img/21.jpeg" /><img class="f3" src="img/22.jpeg" /><img class="f3" src="img/23.jpeg" /><img class="f3" src="img/24.jpeg" /><img class="f3" src="img/9.jpeg" /><img class="f3" src="img/14.jpeg" /><img class="f3" src="img/15.jpeg" /><img class="f3" src="img/6.jpeg" /><img class="f3" src="img/7.jpeg" /><img class="f3" src="img/5.jpeg" /><img class="f3" src="img/6.jpeg" /><img class="f3" src="img/7.jpeg" /><img class="f3" src="img/8.jpeg" /><p></p></div></div><!--  src="JS/photo.js" --><script type="text/javascript">var oImg = document.getElementsByClassName("f1");var oImg2 = document.getElementsByClassName("f2");var oImg3 = document.getElementsByClassName("f3");var len = oImg.length;console.log(len);var deg = 360 / len;var oWrap = document.getElementById("imgwrap");// var oWrap=document.querySelector('.wrap');//页面加载完毕在执行的代码window.onload = function () {Array.prototype.forEach.call(oImg, function (ele, index, self) {// 旋转并沿Z轴平移ele.style.transform = "rotateY(" + deg * index + "deg) translateZ(645.75px)";//过渡时间1sele.style.transition = "1s " + (len - index) * 0.1 + "s";});Array.prototype.forEach.call(oImg2, function (ele, index, self) {// 旋转并沿Z轴平移ele.style.transform = "rotateY(" + deg * index + "deg) translateZ(645.75px) translateY(240px)";//过渡时间1sele.style.transition = "1s " + (len - index) * 0.1 + "s";});Array.prototype.forEach.call(oImg3, function (ele, index, self) {// 旋转并沿Z轴平移ele.style.transform = "rotateY(" + deg * index + "deg) translateZ(645.75px) translateY(480px)";//过渡时间1sele.style.transition = "1s " + (len - index) * 0.1 + "s";});// Array.prototype.forEach.call(oImg, function (ele, index, self) {//       // 旋转并沿Z轴平移//       ele.style.transform = "rotateY(" + deg * index + "deg) translateZ(350px)";//       //过渡时间1s//       ele.style.transition = "1s " + (len - index) * 0.1 + "s";// });};//翻动3D相册var newX,newY,lastX,lastY,minusX,minusY,rotX = -20,rotY = 0;document.onmousedown = function (e) {// 点击设置初值lastX = e.clientX;lastY = e.clientY;this.onmousemove = function (e) {newX = e.clientX;newY = e.clientY;minusX = newX - lastX;minusY = newY - lastY;rotX -= minusY * 0.2;rotY += minusX * 0.1;oWrap.style.transform = "rotateX(" + rotX + "deg) rotateY(" + rotY + "deg)";lastX = newX;lastY = newY;};this.onmouseup = function (e) {//鼠标松开this.onmousemove = null; //清除鼠标移动};};</script></body>
</html>

HTML旋转相册(520表白神器)相关推荐

  1. html表白代码照片墙代码,前端特效之520表白神器-旋转照片墙

    520马上到了,教大家一手表白神器,单身的程序员们感觉学起来,很简单. 制作步骤: 1. 新建代码目录,新建文件index.html,将以下代码拷贝到文件中 2. 新建文件夹image,找12张图片放 ...

  2. python写520_用Python做一个520表白神器,值得收藏

    本文最后给出了打包好的软件,无需安装Python环境和各种依赖,直接下载软件,解压后,双击exe文件即可使用. 先来看一下具体的效果. 运行程序. 用Python做一个520表白神器,值得收藏 点击「 ...

  3. python制作表白神器_用Python做一个520表白神器,值得收藏

    本文最后给出了打包好的软件,无需安装Python环境和各种依赖,直接下载软件,解压后,双击exe文件即可使用. 先来看一下具体的效果. 运行程序. 点击「选择图片」 选择JPG/JPGE/PNG三种中 ...

  4. python 情书_用Python做一个520表白神器,值得收藏(示例代码)

    本文最后给出了打包好的软件,无需安装Python环境和各种依赖,直接下载软件,解压后,双击exe文件即可使用. 先来看一下具体的效果. 运行程序. 点击「选择图片」 选择JPG/JPGE/PNG三种中 ...

  5. Python|520表白神器

    1前言 众所周知,5月20日为"520"情人节,这一天也是即将到来,大家都希望与自己的男神女神过一个浪漫的情人节.但是还有很多像小编这样的单身狗,不知道如何向自己的男神女神表达心意 ...

  6. 520表白神器-教你用微信每天给TA说晚安

    又是一年虐狗日,有男票或女票的,礼物准备好没? 今天大家准备了一份520专属告白文案,可以用在恋情继续的告白上.也可以用在脱单告白上哦! 拿去吧,不用谢,谁让你是我的小可爱呢! 此程序结合数据抓取 + ...

  7. 用python做一个表白神器_30秒教会你用Python制作520表白神器

    import turtleimport time# writing txtturtle.hideturtle()turtle.penup()turtle.goto(80, 50)# turtle.pe ...

  8. Java-Swing实现520表白神器

    我们首先看一下实现的效果: 这是打包后的exe文件执行的效果,但是在编辑器中运行的效果和exe文件运行的效果还是有点出入的. 比如打包以后窗口生成的位置有所变化,字体有些许模糊了,视觉上来看按钮变大了 ...

  9. 好用的python表白神器_Python|520表白神器

    import pygame from pygame import * pygame.init() fps = 60 fpsClock = pygame.time.Clock() icon = pyga ...

最新文章

  1. html台风路径,常用气象网站功能简介
  2. 配置aconda_centos 安装aconda
  3. 用C语言创建多个用户,实现支持多用户在线的FTP程序(C/S)
  4. Spring Cloud中查看服务网关(Zuul)中的所有路由节点
  5. verilog赋多位值_Verilog入门学习笔记——第一弹
  6. SQL Server 2012安装错误案例:Error while enabling Windows feature: NetFx3, Error Code: -2146498298...
  7. MOSS自带链接样式影响页面全局样式的解决办法
  8. AllenNLP框架学习笔记(数据篇之二)
  9. 基于Qt开发的中国象棋 (1) 双人对战
  10. 电子电路设计——multisum中快捷设置555定时器
  11. todo有android版本吗,高效todo手机app下载
  12. 岚图卖不动,到底谁的锅?
  13. 第6章 应用逻辑顺序
  14. 安装sql server 2000:以前的某个程序安装已在安装计算机上创建挂起的文件
  15. PB 打印机打印横纵向设置
  16. 筑牢企业数字化转型的“底盘”,浪潮云ERP呈现出怎样的全景图?
  17. 第四次网页前端培训(CSS)
  18. c语言count函数的作用,count通达信什么意思,count是啥意思
  19. gdal、proj、geos、sqlite等在VS2015下编译和配置
  20. java基于Springboot+vue的农产品销售商城网站 elementui

热门文章

  1. 腾讯T2大牛亲自讲解!mysql服务安装命令
  2. 【树图科技头条】2022年8月23日 星期二
  3. ModelSim入门FPGA仿真基础教程之一:软件介绍
  4. skywalking了解及搭建使用
  5. 数据库:园林试题软件内容(城市绿地养护服务规范)
  6. 快速入门人工智能的方法及精要
  7. 软件好,才是真的好:区块链的1976—2017
  8. warning: LF will be replaced by CRLF in ** 的原因及解决办法
  9. 我敢打赌,大多数人不知道DataGrip有这么厉害,只是都不会用而已
  10. Ethercat 学习总结一:协议总结