3D旋转 相册

这段代码演示了一个使用HTML和CSS3创建的3D旋转相册效果,通过CSS3的transform属性实现图片的3D旋转,并利用JavaScript处理鼠标事件,实现拖拽旋转的交互功能。代码中的关键元素包括perspective、rotateY、translateZ以及过渡和动画效果。
摘要由CSDN通过智能技术生成

效果展示
在这里插入图片描述
代码逻辑

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="Keywords" content="">
    <meta name="Description" content="">
    <title>3D旋转 - 相册</title>
	<style type="text/css">
		*{margin:0;padding:0;}
		body{
			background:#222;
			perspective:800px;/*景深*/
		}
		#wrap{
			position:relative;
			width:120px;
			height:180px;
			margin:auto;
			transform-style:preserve-3d;/*设置3D环境*/
		}
		#wrap img{
			position:absolute;
			width:133px;
			height:200px;
			box-shadow:0 0 10px #000;
			/*倒影:朝向 偏移*/
			-webkit-box-reflect:below 5px -webkit-linear-gradient(top,rgba(0,0,0,0) 40%,rgba(0,0,0,.5) 100%);
			border-radius:5px;/*圆角*/
			/* transform:rotateY(0deg) translateZ(0px); */
			/*transition:1s 1s;动画执行的时间 动画延迟的时间*/
		}
		#wrap p{
			position:absolute;
			left:50%;
			top:112%;
			margin-left:-600px;
			margin-top:-600px;
			width:1200px;
			height:1200px;
			border-radius:50%;
			background:-webkit-radial-gradient(center center,600px 600px,rgba(122,122,122,0.2),rgba(0,0,0,0));
			transform:rotateX(90deg);
		}
	</style>
</head>
<body>
	<div id="wrap">
		<img src="images/1.jpg" alt="" />
		<img src="images/2.jpg" alt="" />
		<img src="images/3.jpg" alt="" />
		<img src="images/4.jpg" alt="" />
		<img src="images/5.jpg" alt="" />
		<img src="images/6.jpg" alt="" />
		<img src="images/7.jpg" alt="" />
		<img src="images/8.jpg" alt="" />
		<img src="images/9.jpg" alt="" />
		<img src="images/10.jpg" alt="" />
		<img src="images/11.jpg" alt="" />
		<p></p>
	</div>
	<script type="text/javascript">
		var oWrap = document.getElementById("wrap");
		var aImg = oWrap.getElementsByTagName("img");
		//让盒子自适应的垂直居中
		function mTop(){
			//获取浏览器窗口可视区域的高度
			var H = document.documentElement.clientHeight;
			oWrap.style.marginTop = H/2 - 180 + "px"
		}
		mTop();
		window.onresize = mTop;

		//图片初始动画
		var len = aImg.length;//获取图片的个数
		
		var Deg = 360/len;//每一张图片所占的角度
		for (var i=0;i<len;i++ )
		{
			aImg[i].style.transform = "rotateY("+i*Deg+"deg) translateZ(350px)";
			aImg[i].style.transition = "1s "+(len-1-i)*0.1+"s";
		}
		//鼠标事件(按下 移动 抬起) 拖拽旋转
		var lastX,lastY,nowX,nowY,minX,minY,roX=0,roY=0,timer;
		document.onmousedown = function(ev){
			clearInterval(timer);
			var ev = ev||window.event;
			//获取鼠标按下去的坐标位置
			lastX = ev.clientX;
			lastY = ev.clientY;
			this.onmousemove = function(ev){
				var ev = ev||window.event;
				//移动过程中鼠标的坐标位置
				nowX = ev.clientX;
				nowY = ev.clientY;
				//计算出鼠标坐标的差值
				minX = nowX - lastX;
				minY = nowY - lastY;
				//计算容器旋转的角度
				roY += minX*0.2;//roY = roY + minX*0.2
				roX -= minY*0.1;
				//console.log(roX,roY);
				//让整个图片容器跟随鼠标动
				oWrap.style.transform = "rotateX("+roX+"deg) rotateY("+roY+"deg)";
				lastX = nowX;
				lastY = nowY;
			}
			this.onmouseup = function(){
				this.onmousemove = null;
				this.onmouseup = null;
				timer = setInterval(function(){
					minX *=0.95;//让minX逐渐减小
					minY *=0.95;
					roY += minX*0.2;
					roX -= minY*0.1;
					oWrap.style.transform = "rotateX("+roX+"deg) rotateY("+roY+"deg)";
					//当minX达到足够小的值时 清楚定时器
					if (Math.abs(minX)<0.1 && Math.abs(minY)<0.1)
					{
						clearInterval(timer);
					}
				},1000/60);
			}
			return false;//阻止默认事件
		}
	</script>
</body>
</html>

轻语积累
关注 关注
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
web3D旋转相册
m0_69435261的博客
11-11 661
3D旋转相册
用html+CSS实现的3D旋转相册(表白代码)
06-03
《HTML+CSS构建3D旋转相册:一个浪漫的表白技术指南》 在网页设计的世界里,创新和个性化是吸引用户的重要...无论你是前端新手还是有经验的开发者,这个3D旋转相册都能为你提供宝贵的实践机会,进一步提升你的技能。
3D旋转相册
梦是太匆
08-04 150
代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0" /&
3D旋转相册效果实现】
marblue_y的博客
09-30 9516
https://s23.aconvert.com/convert/p3r68-cdx67/w2394-wi43o.gif HTML部分========================================= 1.首先在html中写上名为 perspective 的div盒子 2.再在其中加上放图片的容器div,ID名为 wrap 3.然后在HTML文件同级目录images下放10张规格大...
【前端领域】3D旋转超美相册(HTML+CSS
好好读书
02-12 5017
【前端领域】3D旋转超美相册(HTML+CSS3D旋转相册 本文是一篇简单的前端代码,主要内容仅包含 HTML,CSS 等内容 主要为 CSS 1、HTML代码 2、CSS样式 3、插件等 4、旋转特效 5、图片 6、鼠标放置效果 7、可添加背景音乐,背景图等
3d旋转相册
qq_53489791的博客
08-01 665
3d旋转相册 1.首先所有的图片的容器绝对定位,叠放在一起,然后一次设置rotateY依次增加45deg , 然后为每个图片的容器设置translateZ,向Z轴方向移动500px,所有图片会从对应的角度向外移动,像圆形一样展开。 2.创建动画,让rotateY旋转360deg。然后给盒子添加动画,时间为16s,设置linear和infinite,让动画匀速无限次播放。 3.给最后一张图片设置反向旋转,就可以使其看起来是静止的。 源代码: <style> @keyframes
3D 旋转相册
mwsblue的博客
08-25 858
最近事情不太多,想着练习一下3D动画(其实就是想做这个相册),各位想送女朋友礼物或者表白的小伙伴也可以动手做试试,或许有意想不到的效果也说不定,话不多说,进入正题。 效果图: 可以事先准备自己喜欢的图片,外层方块加内层方块共12张图片,代码量也不多,用到的也是些简单的3D样式。 1、transform-style: preserve-3d; //设置元素的子元素是位于 3D 空间中 2、通过rotate和translate实现正方体的六个面 3、给包裹正方体的父元素设置动画旋转 4、鼠标移
3D旋转相册1.0
qq_45879198的博客
08-28 1410
文章目录前言一、3D旋转相册演示二、3D旋转相册源代码三、所需要的文件 前言 利用html css 写的一个简单的3D旋转相册,使用了媒体查询,可以适用于手机平板电脑 提示:以下是本篇文章正文内容,下面案例可供参考 一、3D旋转相册演示 体验网址:3D旋转相册 二、3D旋转相册源代码 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <meta h
HTML5 3D旋转相册的实现示例
11-21
前一段时间,突然看到一个炫酷的3D旋转相册,这里记录一下,先看效果图: HTML5 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HTML5 3D旋转...
html,js,css+流星3D旋转相册
04-24
情人节送女朋友的流星3D旋转相册,独属理科人的浪漫。 需要注意:1.网页html请使用Microsoft edge或者QQ浏览器打开。 2.照片在img里替换,名字为从1到10依次编号,拓展名统一使用gif,故也可以显 示gif动图。照片...
3d旋转相册css3高级进阶
04-13
在本课程"3d旋转相册css3高级进阶"中,我们将深入探讨如何利用CSS3的强大功能创建一个令人印象深刻的3D旋转相册。这个项目非常适合那些已经具备一定编程经验,特别是对HTML和CSS有基本理解的开发者。通过学习这个...
JavaScript制作3D旋转相册
10-16
本文介绍的是使用JavaScript制作一个3D旋转相册,其中涉及的技术点主要包括CSS33D变换属性以及JavaScript对DOM元素的操作和交互响应。 ### 知识点1:CSS3 3D变换 在本文内容中,通过CSS3的`transform`属性,实现...
3DCAT实时云渲染赋能2024广东旅博会智慧文旅元宇宙体验馆上线!
RealTime_3DCAT的博客
10-12 436
在2024年广东旅博会期间,3DCAT将大型3D应用迁移至云端,充分借助公有云平台强大的算力资源,成功解除了用户本地终端的算力限制。作为旅博会连续第三年打造的“智慧文旅元宇宙体验馆”,本届旅博会“元宇宙”共有二大亮点,一是新增广东文旅数字化创新体验区,您可通过元宇宙线下体验空间,在旅博会现场沉浸式体验线上“智慧文旅元宇宙体验馆”。在此基础上,3DCAT还实现了大规模实时的弹性调度能力,确保每个用户的应用加载都能够得到相应的计算资源,避免了不必要的资源浪费;基于3DCAT打造的“云+虚拟”活动模式,
利用移动式三维扫描技术创建考古文物的彩色纹理网格【上海沪敖3D
最新发布
HuAo_3D的博客
10-18 388
三维扫描技术能够以非接触、无损害、全方位、高精度的方式准确有效地获取文物的真实信息,这对于实现文物保护,建立文物数字档案及资源共享具有很重要的意义。
利用 Direct3D 绘制几何体—6.常量缓冲区
weixin_51952244的博客
10-18 441
利用 Direct3D 绘制几何体—6.常量缓冲区
ANSYS Workbench纤维混凝土3D
weixin_45591526的博客
10-15 345
在CAD随机几何3D插件内设置模型参数后运行,即可在AutoCAD内建立三维纤维混凝土模型,插件支持任意多组纤维或骨料的尺寸设置,可满足不同级配的纤维混凝土模型。在ANSYS Workbench建立三维纤维混凝土模型可采用CAD随机几何3D插件建模后导入,模型包含球体粗骨料、圆柱体长纤维、水泥砂浆基体等不同组分。在CAD内将模型导出为IGES格式文件,并导入到ANSYS Workbench内。可对几何结构进行编辑,分图层批量赋值材料属性等。在分析系统内对纤维混凝土模型进行后续的模拟。
python3d旋转相册代码
10-05
在Python中创建一个3D旋转相册通常会涉及到一些图形库,比如PyOpenGL或Pygame。下面是一个简化的示例,展示如何使用`pyglet`库创建一个基本的3D旋转相册效果: ```python import pyglet from pyglet.window import ...
写文章

热门文章

  • 如何开启VT方法 17536
  • Android Studio 全局搜索快捷键 6957
  • java项目技术选型 6270
  • Android 隐藏导航栏 4628
  • Android MVVM开发框架 4248

分类专栏

  • 学习 35篇
  • 公众号 1篇
  • Android Studio 11篇
  • 设计模式 1篇
  • java 技术选型 1篇
  • Jetpack 1篇
  • kotlin学习 5篇
  • 专辑功能 1篇
  • java面试 3篇
  • java旅程 6篇
  • 资料下载 2篇
  • 小程序 5篇
  • python爬虫 1篇
  • 数据库 1篇
  • Android 36篇

最新评论

  • 自定义 Android toast 字体大小

    反魂蝶五分: Android 11 api禁用了

  • Android gradle 配置阿里镜像

    ITV女诗人: 有空来看看我朋友的作品, 码农宝App (同时提供小程序版本), 可以让你体验功能及学习代码的App, https://blog.csdn.net/lujianfeiccie2009/article/details/112645439

  • Android 强制设置为竖屏

    CSDN-Ada助手: 哇, 你的文章质量真不错,值得学习!不过这么高质量的文章, 还值得进一步提升, 以下的改进点你可以参考下: (1)提升标题与正文的相关性;(2)使用更多的站内链接;(3)增加除了各种控件外,文章正文的字数。

  • Android 拨打电话

    2301_79092061: 你可以制作出来嘛

  • Android 拨打电话

    轻语积累: 不难的

最新文章

  • Android gradle 配置阿里镜像
  • MqttAndroidClient 关闭日志 mq报错日志路径
  • 通过代码清除Android TTS缓存
2023年16篇
2022年31篇
2021年35篇
2020年7篇
2019年16篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家广东室内商场美陈制作呈贡设计玻璃钢雕塑沈阳室内玻璃钢雕塑厂家四川玻璃钢花盆市场报价云南动物玻璃钢雕塑批发全国玻璃钢雕塑厂家报价商丘附近玻璃钢仿铜雕塑厂家广场玻璃钢玩偶雕塑定制合肥玻璃钢人物雕塑设计玻璃钢花盆花箱推荐珠海玻璃钢雕塑座椅湖北公园玻璃钢雕塑生产厂家聊城动物玻璃钢雕塑生产厂家海南玻璃钢景观雕塑玻璃钢雕塑丙烯上色的技法商场美陈制作设计青羊玻璃钢卡通雕塑浙江大型商场创意商业美陈思路南宁商场美陈雕塑鹤壁公园玻璃钢彩绘雕塑厂家玻璃钢雕塑工艺公司西樵仿真玻璃钢人物雕塑白银卡通玻璃钢雕塑哪家好正阳玻璃钢雕塑价格深圳玻璃钢雕塑摆件价格浙江通道商场美陈厂家直销福建玻璃钢雕塑哪里买周口玻璃钢浮雕不锈钢公园雕塑乐山节日商场美陈商场儿童区做美陈香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化