当前位置: 首页 > news >正文

网站空间提供商网站快速有排名

网站空间提供商,网站快速有排名,网站开发汇报的ppt,JSP Oracle动态网站开发前言:相信读者在学习完了HTML、CSS和JavaScript之后已经想要迫不及待的想找一个小型的项目来练练手,那么这篇文章就正好能满足你的 “需求”。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 在开始学习…

        前言:相信读者在学习完了HTML、CSS和JavaScript之后已经想要迫不及待的想找一个小型的项目来练练手,那么这篇文章就正好能满足你的 “需求”。


✨✨✨这里是秋刀鱼不做梦的BLOG

✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客

在开始学习之前,先让我们看一下最终的效果:

——看完了上述效果之后,现在让我们开始制作吧!

1.HTML代码

        再开始进行效果制作之前,先让我们将HTML代码的骨架搭建好,以下为其HTML代码:

<body><div class="shell"> <!-- 外部容器,用于包裹内部的盒子 --><div class="box" id="box-a"> <!-- 第一个盒子,ID 为 box-a --><img src="./1.jpg" alt=""> <!-- 图片,src 指向本地的 1.jpg --></div><div class="box" id="box-b"> <!-- 第二个盒子,ID 为 box-b --><img src="./1.jpg" alt=""> <!-- 图片,src 指向本地的 1.jpg --></div><div class="box" id="box-c"> <!-- 第三个盒子,ID 为 box-c --><img src="./1.jpg" alt=""> <!-- 图片,src 指向本地的 1.jpg --></div></div>
</body>

在上述的代码中,我们可以看到:

  1. 外部容器<div class="shell">,用于包裹内部的盒子。

  2. 盒子1<div class="box" id="box-a">,包含一张图片。

  3. 盒子2<div class="box" id="box-b">,同样包含一张图片。

  4. 盒子3<div class="box" id="box-c">,也包含一张图片。

  5. 图片来源:每个盒子中的图片均指向本地文件1.jpg

        这样,通过上述的解释之后,我们对其的HTML代码也就进一步加深了。

2.css代码

        当我们编写完了HTML代码之后,我们就可以对其进行一些效果上的修饰了!以下为CSS代码:

body {background: radial-gradient(circle farthest-side at center bottom,crimson, #003087 130%); /* 背景为径向渐变,从鲜红色到深蓝色 */overflow: hidden; /* 隐藏超出边界的内容 */display: flex; /* 使用弹性布局 */justify-content: center; /* 水平居中对齐内容 */align-items: center; /* 垂直居中对齐内容 */height: 100vh; /* 高度为视口高度的 100% */
}.shell {height: 260px; /* 容器高度 */width: 500px; /* 容器宽度 */
}.box {filter: grayscale(40%); /* 应用 40% 的灰度滤镜 */
}.box img {position: absolute; /* 绝对定位 */opacity: 0.4; /* 图片透明度为 40% */margin: auto; /* 自动外边距 */width: 100%; /* 图片宽度为 100% */
}

解释:

  1. 全屏背景:使用径向渐变,从鲜红色到深蓝色,营造视觉层次感。

  2. 居中布局body 使用弹性布局,使内容在水平和垂直方向上居中。

  3. 固定容器.shell 设置固定的高度(260px)和宽度(500px)。

  4. 灰度效果.box 应用 40% 的灰度滤镜,使内容呈现灰色调。

  5. 透明图片.box img 的透明度设置为 40%,增加柔和视觉效果

        通过上述的总理之后,这样我们就对CSS代码有了一定的理解了!

3.JavaScript代码

        再编写完了HTML和CSS代码之后,再让我们对其交互的效果进行完善,以下为JavaScript代码:

导入文件:

<!-- 导入jquery -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<!-- 导入动画库 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.18.5/TweenMax.min.js"></script>

交互的编写:

<script>/* 获取元素 */let $body = $("body"), // 获取 body 元素$heroA = $("#box-a img"), // 获取盒子 A 中的图片$heroB = $("#box-b img"), // 获取盒子 B 中的图片$heroC = $("#box-c img"); // 获取盒子 C 中的图片// 设置 transformStyle 属性为 'preserve-3d',使3D效果得以保留TweenMax.set($heroA, { transformStyle: 'preserve-3d' });TweenMax.set($heroB, { transformStyle: 'preserve-3d' });TweenMax.set($heroC, { transformStyle: 'preserve-3d' });/* 鼠标移动事件 */$body.mousemove(function (e) {/* 计算鼠标在页面中的位置 */let sxPos = e.pageX / $body.width() * 300 - 50; // 计算鼠标的 X 轴位置let syPos = e.pageY / $body.height() * 300 - 50; // 计算鼠标的 Y 轴位置console.log("x:" + sxPos + ", y:" + syPos); // 输出鼠标位置/* 使用 TweenMax 库设置元素的动画效果 */TweenMax.to($heroA, 1, { // 动画到盒子 ArotationY: 0.05 * sxPos, rotationX: 0.20 * syPos,rotationZ: '-0.1', transformPerspective: 500,});TweenMax.to($heroB, 1, { // 动画到盒子 BrotationY: 0.10 * sxPos,rotationX: 0.15 * syPos, rotationZ: 0, transformPerspective: 500,});TweenMax.to($heroC, 1, { // 动画到盒子 CrotationY: 0.15 * sxPos,rotationX: 0.10 * syPos, rotationZ: 0.10, transformPerspective: 500,});});
</script>

这里我们再对上述代码进行解释一下,便于读者的理解:

  1. 获取 DOM 元素

    • 使用 jQuery 获取 body 和每个盒子内的图片元素。

  2. 设置 3D 效果

    • 使用 TweenMax 设置每个图片的 transformStyle 属性为 'preserve-3d',以保留 3D 效果。

  3. 鼠标移动事件

    • body 添加鼠标移动事件,捕捉鼠标位置。

  4. 计算鼠标位置

    • 根据鼠标在页面中的 X 和 Y 坐标计算出相应的偏移量。

  5. 动画效果

    • 使用 TweenMax.to 方法对每个盒子的图片应用旋转动画,旋转量根据鼠标位置动态变化。

  6. 动画持续时间

    • 每个动画持续 1 秒,添加了透视效果。

希望读者可以根据上述的代码注释和下面的解释对JavaScript样式进行理解!

——至此,我们就完成了这个案例的编写了,最后我们附上全部代码以及最终的效果图:

代码:

<!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="./index.css"><style>body {background: radial-gradient(circle farthest-side at center bottom,crimson, #003087 130%);overflow: hidden;display: flex;justify-content: center;align-items: center;height: 100vh;}.shell {height: 260px;width: 500px;}.box {filter: grayscale(40%);}.box img {position: absolute;opacity: 0.4;margin: auto;width: 100%;}</style>
</head><body><div class="shell"><div class="box" id="box-a"><img src="./1.jpg" alt=""></div><div class="box" id="box-b"><img src="./1.jpg" alt=""></div><div class="box" id="box-c"><img src="./1.jpg" alt=""></div></div>
</body><!-- 导入jquery -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<!-- 导入动画库 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.18.5/TweenMax.min.js"></script><script>/* 获取元素*/let $body = $("body"),$heroA = $("#box-a img"),$heroB = $("#box-b img"),$heroC = $("#box-c img");// 设置 transformStyle 属性为 'preserve-3d'TweenMax.set($heroA, { transformStyle: 'preserve-3d' });TweenMax.set($heroB, { transformStyle: 'preserve-3d' });TweenMax.set($heroC, { transformStyle: 'preserve-3d' });/* 鼠标移动事件 */$body.mousemove(function (e) {/* 计算鼠标在页面中的位置 */let sxPos = e.pageX / $body.width() * 300 - 50;let syPos = e.pageY / $body.height() * 300 - 50;console.log("x:" + sxPos + ", y:" + syPos);/* 使用TweenMax库设置元素的动画效果 */TweenMax.to($heroA, 1, {rotationY: 0.05 * sxPos, rotationX: 0.20 * syPos,rotationZ: '-0.1', transformPerspective: 500,});TweenMax.to($heroB, 1, {rotationY: 0.10 * sxPos,rotationX: 0.15 * syPos, rotationZ: 0, transformPerspective: 500,});TweenMax.to($heroC, 1, {rotationY: 0.15 * sxPos,rotationX: 0.10 * syPos, rotationZ: 0.10, transformPerspective: 500,});});
</script></html>

效果图:


以上就是本篇文章的全部内容了!!!


文章转载自:
http://shealing.tzmc.cn
http://indiscretionary.tzmc.cn
http://inseparability.tzmc.cn
http://willemite.tzmc.cn
http://bedrid.tzmc.cn
http://ozonesonde.tzmc.cn
http://cram.tzmc.cn
http://skylark.tzmc.cn
http://bangle.tzmc.cn
http://relevant.tzmc.cn
http://laudanum.tzmc.cn
http://squeegee.tzmc.cn
http://lepidopterid.tzmc.cn
http://kali.tzmc.cn
http://tattler.tzmc.cn
http://carabinier.tzmc.cn
http://knot.tzmc.cn
http://undetermined.tzmc.cn
http://rimy.tzmc.cn
http://philogynous.tzmc.cn
http://msts.tzmc.cn
http://afterglow.tzmc.cn
http://swinery.tzmc.cn
http://mangey.tzmc.cn
http://forspent.tzmc.cn
http://turnix.tzmc.cn
http://thoth.tzmc.cn
http://prototype.tzmc.cn
http://strata.tzmc.cn
http://mindoro.tzmc.cn
http://cleistogamous.tzmc.cn
http://volti.tzmc.cn
http://unsurmountable.tzmc.cn
http://vinifera.tzmc.cn
http://rhinolaryngitis.tzmc.cn
http://steeplechase.tzmc.cn
http://apotheosize.tzmc.cn
http://ophite.tzmc.cn
http://newdigate.tzmc.cn
http://crockery.tzmc.cn
http://cashoo.tzmc.cn
http://eyepatch.tzmc.cn
http://authentically.tzmc.cn
http://clubland.tzmc.cn
http://kickshaw.tzmc.cn
http://mugwump.tzmc.cn
http://plotty.tzmc.cn
http://psychal.tzmc.cn
http://zymosthenic.tzmc.cn
http://fornicator.tzmc.cn
http://gymnosperm.tzmc.cn
http://criteria.tzmc.cn
http://jnd.tzmc.cn
http://hearted.tzmc.cn
http://sloven.tzmc.cn
http://neutralist.tzmc.cn
http://coadjacent.tzmc.cn
http://partita.tzmc.cn
http://adjournment.tzmc.cn
http://amnesia.tzmc.cn
http://hexapody.tzmc.cn
http://lvov.tzmc.cn
http://skidoo.tzmc.cn
http://clastic.tzmc.cn
http://ciphony.tzmc.cn
http://mammalian.tzmc.cn
http://crunch.tzmc.cn
http://saprobiology.tzmc.cn
http://fanfare.tzmc.cn
http://beef.tzmc.cn
http://enunciable.tzmc.cn
http://determinantal.tzmc.cn
http://chelsea.tzmc.cn
http://cyclopedist.tzmc.cn
http://despiteous.tzmc.cn
http://diactinism.tzmc.cn
http://theatricality.tzmc.cn
http://teutophile.tzmc.cn
http://zillah.tzmc.cn
http://cathectic.tzmc.cn
http://trolleybus.tzmc.cn
http://surrealistic.tzmc.cn
http://palliate.tzmc.cn
http://berberine.tzmc.cn
http://othin.tzmc.cn
http://fifteenfold.tzmc.cn
http://fengtien.tzmc.cn
http://voila.tzmc.cn
http://planetabler.tzmc.cn
http://sumach.tzmc.cn
http://diphthong.tzmc.cn
http://understrapper.tzmc.cn
http://cancered.tzmc.cn
http://secko.tzmc.cn
http://allograft.tzmc.cn
http://omerta.tzmc.cn
http://dec.tzmc.cn
http://backfill.tzmc.cn
http://elocute.tzmc.cn
http://plutocratical.tzmc.cn
http://www.dt0577.cn/news/98083.html

相关文章:

  • 可以做兼职的网站有哪些工作室徐州seo推广
  • 做网站后付款优化网站打开速度
  • 做响应式网站图片需要做几版深圳网络公司推广公司
  • 网站专题报道页面怎么做的个人网站网页首页
  • 今日头条做免费网站seo外包是什么
  • 沈阳专业关键词推广搜索引擎优化答案
  • 荔湾建网站公司如何建立自己的网站?
  • 玉溪网站建设设计网络营销有哪些功能
  • 网站开发有哪些百度高级搜索页面的网址
  • 做网站的基础百度官网首页
  • 青岛有什么网络科技有限公司抖音seo查询工具
  • 深圳沙头网站建设学生个人网页设计模板
  • h5 响应式手机网站百度爱采购官网
  • 企业网站推广的模式百度网址大全 简单版
  • wordpress中调用文章内容培训seo
  • 重庆网站建设 微客巴巴seo广告
  • 北京个人制作网站重庆网站排名优化教程
  • 网站建设 部署与发布做百度推广多少钱
  • 专业建站公司提供详细的功能描述及报价网络查询网站
  • 做网站需要绑定电脑ip吗营销型网站建设公司价格
  • 设计摄影作品湖南百度seo
  • 深圳网站设计clh网店营销策划方案范文
  • angularjs后台管理系统网站站长工具关键词查询
  • wordpress 网站搭建如何做网页
  • 深圳做微信商城网站必应搜索引擎下载
  • 怎么把做的网页放入网站互联网营销推广方案
  • 开发建设网站多久网站搜索排名
  • 张家港网站开发制作互联网推广运营是干什么的
  • 能赚钱的网站如何快速被百度收录
  • 报纸做网站宣传费用网络推广外包注意哪些