给你的青春做个毕业册,用技术定格最美好的回忆

这篇具有很好参考价值的文章主要介绍了给你的青春做个毕业册,用技术定格最美好的回忆。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🎈 毕业纪念册

  • 山水有来路,早晚复相逢,毕业总是充满了离别和感恩。
  • 不要因离别而伤感,告别才能再见。无论暂别或就别,朋友终会再相见。
  • 青春总是充满了不舍和留念,那我们就将生活记录成册,待再次相逢,让我们看照片再忆青春吧。
  • 当然技术人的毕业有技术人纪念的方式,让我们手写一个毕业纪念册,去纪念那些可爱的人。
  • 即使他们不能长留在我们脑海中,那就让他们永远定格在内存里。
  • 源码下载地址:精品源码 / 炫酷特效 / 毕业纪念册

给你的青春做个毕业册,用技术定格最美好的回忆

🎈 创建画布

  • 我们在做这种 3D 的相册时候
  • 首先我们需要考虑到使用 3D 功能,另外,既然 3D 就一定有景深
  • 搭建3D效果必须的两个属性:一个变换风格变 3D,一个场景景深
<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>毕业纪念册</title>
	<style type='text/css'>
		/* 景深 */
		#perspective {
			perspective: 800px;
		}

		#wrap {
			width: 120px;
			height: 180px;
			margin: 0 auto;
			position: relative;

			/*搭建3D效果必须的两个属性:一个变换风格变3d,一个场景景深800px*/
			transform-style: preserve-3d;
			transform: rotateX(-10deg) rotateY(0deg);
		}
	</style>
</head>

<body>
	<div id="perspective">
		<div id='wrap'>
			<img src="img/1.jpg" />
			<img src="img/2.jpg" />
			<img src="img/3.jpg" />
			<img src="img/4.jpg" />
			<img src="img/5.jpg" />
			<img src="img/6.jpg" />
			<img src="img/7.jpg" />
			<img src="img/8.jpg" />
			<img src="img/9.jpg" />
			<img src="img/10.jpg" />
			<img src="img/11.jpg" />
			<p></p>
		</div>
	</div>
</body>

</html>

🎈 图片围圈

  • 我们可以看到这 11 张图片围成了一个大圆圈
  • 其实只要将每个图片设置不同的摆放角度即可实现围成圆圈的效果
var oWrap = document.getElementById('wrap');
var oImg = oWrap.getElementsByTagName('img');
var oImgLength = oImg.length;
var Deg = 360 / oImgLength;

// 设置每张图片的角度
for (var i = 0; i < oImgLength; i++) {
	oImg[i].style.transform = 'rotateY(' + i * Deg + 'deg) translateZ(350px)';
	oImg[i].style.transition = 'transform 1s ' + (oImgLength - 1 - i) * 0.1 + 's';
}

🎈 图片添加倒影

  • 为了给图片更加突出的效果,我们给图片都添加上倒影效果
  • 我们可以通过 -webkit-box-reflect 样式给图片添加倒影效果,可以设置倒影的朝向、偏移、遮盖、线性渐变等属性
#wrap img {
	width: 100%;
	height: 100%;
	position: absolute;
	border-radius: 1px;

	transform: rotateY(0deg) translateZ(0px);
	/*倒影:朝向 偏移 遮盖*/
	/*线性渐变(从哪里开始,开始时候的颜色,结束时候的颜色)*/
	-webkit-box-reflect: below 5px -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.5) 100%);
}

🎈 居中展示

  • 我们需要使得相册在浏览器的正中间展示
  • 不然相册的观感会很不理想,使用鼠标操作时很容易被跑出屏幕之外
  • 根据当前屏幕的可显示高度,自定义给相册设置上边距
mTop();

window.onresize = mTop;

function mTop() {
	var wH = document.documentElement.clientHeight;
	oWrap.style.marginTop = wH / 2 - 180 + 'px';
}

🎈 鼠标事件

  • 我们在使用这个相册时候,可以想到有三个事件:鼠标点击时鼠标移动时鼠标松开时
  • 其实也只有这三个事件,只要写好这三个事件的逻辑,这个毕业纪念册其实也就完成了
  • 在鼠标点击时候,我们需要记录鼠标最开始的位置,当鼠标移动结束松开时,要记录鼠标结束时候的位置
  • 其实逻辑就是,将这两个鼠标坐标进行求差,然后中间给一些过度的动画,当这个差值减小到某个值时,就清除动画的定时器,即可实现流畅的动画滚动效果
// 鼠标按下时
document.onmousedown = function (ev) {
	ev = ev || window.event;

	//鼠标按下的时候,给前一点坐标赋值,为了避免第一次相减的时候出错
	lastX = ev.clientX;
	lastY = ev.clientY;

	// 鼠标移动时
	this.onmousemove = function (ev) {
		ev = ev || window.event;

		clearInterval(timer);

		nowX = ev.clientX; // clientX 鼠标距离页面左边的距离
		nowY = ev.clientY; // clientY ………………………………顶部………………

		//当前坐标和前一点坐标差值
		minusX = nowX - lastX;
		minusY = nowY - lastY;

		//更新wrap的旋转角度,拖拽越快-> minus变化大 -> roY变化大 -> 旋转快
		roY += minusX * 0.2; // roY = roY + minusX*0.2;
		roX -= minusY * 0.1;

		oWrap.style.transform = 'rotateX(' + roX + 'deg) rotateY(' + roY + 'deg)';

		//前一点的坐标
		lastX = nowX;
		lastY = nowY;

	}
	// 鼠标松开时
	this.onmouseup = function () {
		this.onmousemove = null;
		timer = setInterval(function () {
			minusX *= 0.95;
			minusY *= 0.95;
			roY += minusX * 0.2; // roY = roY + minusX*0.2;
			roX -= minusY * 0.1;
			oWrap.style.transform = 'rotateX(' + roX + 'deg) rotateY(' + roY + 'deg)';
		
			// 差值减少到某个值,清除动画
			if (Math.abs(minusX) < 0.1 && Math.abs(minusY) < 0.1) {
				clearInterval(timer);
			}
			console.log(minusX);
		}, 13);
	}
	return false;
}

🎈 毕业赠语

  • 虽然,在这个阳光热辣的季节里,大家就要别离,为了更好的宴会,更多的热闹。
  • 毕业纪念册可以聊表思念之情,但是博主还是觉得好的关系都是靠现实生活中维系的,线下 多联系 才是真理
  • 最后祝愿大家,毕业快乐,衣襟带花,岁月风平。愿你成为自己的太阳,活成自己曾经渴望的模样。

给你的青春做个毕业册,用技术定格最美好的回忆

活动地址:毕业季·进击的技术er文章来源地址https://www.toymoban.com/news/detail-458592.html

到了这里,关于给你的青春做个毕业册,用技术定格最美好的回忆的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jest:给你的 React 项目加上单元测试

    大家好,我是前端西瓜哥。 Jest 是一款轻量的 JavaScript 测试框架,它的卖点是简单好用,由 facebook 出品。本文就简单讲讲如何使用 Jest 对 React 组件进行测试。 单元测试 (Unit Testing),指的是对程序中的模块(最小单位)进行检查和验证。比如一个函数、一个类、一个组件,

    2024年02月09日
    浏览(36)
  • 给你的项目启动提提速:Lazy Initialization

    前言   在一个名为种花家的小镇上,生活着一群热爱编程的人。他们致力于构建出高效、可维护的软件系统,而 Spring Boot 框架成为了他们的不二之选。这个小镇上的人们每天都在用 Spring Boot 框架创造着令人瞩目的应用程序。   然而,随着时间的推移,他们的应用程序变

    2024年02月03日
    浏览(36)
  • 怎么给你的vitepress添加图片放大预览效果

    基于markdown-it 可设置自定义属性的插件 效果预览地址传送 Step. 1: 安装依赖 Step. 2: 引入插件 Step. 3: 配置 vitepress config.js文件 Step. 4: 引入图片灯箱js和css文件 配置 .vitepress/config.js 文件 加入 head 配置 Step. 5: 渲染效果

    2024年02月14日
    浏览(31)
  • 只用3步,给你的日语视频加上中日双语字幕

    很多日语电影或者日剧,都没有带字幕。对于想马上看到视频,但是又不懂日语的朋友来说,就只能等字幕组做好字幕发出来才能看了。 这里教大家用33字幕这个软件,去给影片快速生成中日双语字幕,让你在第一时间就能欣赏影片内容。 废话不多说,下面让我们开始吧。

    2024年02月04日
    浏览(27)
  • 探索Web API SpeechSynthesis:给你的网页增添声音

    Web API SpeechSynthesis是一项强大的浏览器功能,它允许开发者将文本转换为语音,并通过浏览器播放出来。本文将深入探讨SpeechSynthesis的控制接口,包括其功能、用法和一个完整的JavaScript示例。 参考资料:SpeechSynthesis - Web API 接口参考 | MDN (mozilla.org) 文本语音互换 | 一个覆盖广

    2024年02月19日
    浏览(33)
  • 电脑怎么设置开机密码?简单几步给你的电脑“上锁”

    在我们日常生活中,最常见的就是开机密码了,而电脑作为我们使用频率最高也是最复杂的设备,其安全性也是非常重要的, 那么电脑怎么设置开机密码?那么今天我们就来说一说开机密码的设置方法! 为了更安全,赶快来给你的电脑“上锁”吧! 操作环境: 演示机型:

    2024年02月15日
    浏览(43)
  • 【rust/egui】(八)使用panels给你的应用划分功能区块

    rust新手,egui没啥找到啥教程,这里自己记录下学习过程 环境:windows11 22H2 rust版本:rustc 1.71.1 egui版本:0.22.0 eframe版本:0.22.0 上一篇:这里 panel 是ui上的一块区域,比如我们打开CSDN的markdown编辑器,它大致上可以划分成四(五)块 (当然实际实现上这四块区域可能不是并列的

    2024年02月09日
    浏览(34)
  • 给你的 Discord 接入一个既能联网又能画画的 ChatGPT

    如果有这样一款 Discord 机器人,它既能 访问互联网 ,又能 绘画 ,还能给 YouTube 视频提供 摘要 。最重要的是,它是 完全免费 的,不需要提供 OpenAI 的 API Key, 我就问你香不香? 现在就有这样一款机器人,你用还是不用? 上链接: https://github.com/mishalhossin/Discord-AI-Chatbot 这个

    2024年02月09日
    浏览(33)
  • 《安全物联网系统设计》:我强烈建议你给你的物联网系统加一把安全锁

    《安全物联网系统设计》:我强烈建议你给你的物联网系统加一把安全锁 物联网安全成为全球范围内亟待解决的重要问题,尽管物联网安全提了那么多年,但身边我们不乏出现各式各样的物联网安全事件。本文将从一个全新的视角,重新了解一下如何设计物联网系统的安全,

    2024年02月08日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包