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

网站是否开启gzip网络规划设计师是职业资格吗

网站是否开启gzip,网络规划设计师是职业资格吗,专业招牌制作价格,wordpress开玩笑 呵HTML5白云飘飘动态效果教程 这里写目录标题 HTML5白云飘飘动态效果教程效果介绍实现步骤步骤一:创建HTML结构步骤二:设计CSS样式步骤三:添加JavaScript交互 代码解析HTML结构解析CSS样式解析JavaScript功能解析 自定义调整总结 效果介绍 本教…

HTML5白云飘飘动态效果教程

这里写目录标题

  • HTML5白云飘飘动态效果教程
    • 效果介绍
    • 实现步骤
      • 步骤一:创建HTML结构
      • 步骤二:设计CSS样式
      • 步骤三:添加JavaScript交互
    • 代码解析
      • HTML结构解析
      • CSS样式解析
      • JavaScript功能解析
    • 自定义调整
    • 总结

效果介绍

本教程将教你如何使用纯HTML5、CSS3和JavaScript创建一个优美的白云飘飘动态效果。最终效果包括:

  • 多朵白云从左向右飘动
  • 云朵大小、位置、速度和透明度各不相同
  • 动态生成随机云朵
  • 鼠标互动效果(移动鼠标时云朵会轻微跟随)
  • 在这里插入图片描述

实现步骤

步骤一:创建HTML结构

首先,我们需要创建基本的HTML结构:

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>白云飘飘动态效果</title><link rel="stylesheet" href="style.css">
</head>
<body><div class="sky"><div class="cloud cloud1"></div><div class="cloud cloud2"></div><div class="cloud cloud3"></div><div class="cloud cloud4"></div><div class="cloud cloud5"></div></div><script src="script.js"></script>
</body>
</html>

这里我们创建了一个名为sky的容器,内部放置了5个基础云朵元素。

步骤二:设计CSS样式

接下来,创建style.css文件,设计云朵的样式和动画效果:

* {margin: 0;padding: 0;box-sizing: border-box;
}body {overflow: hidden;background: linear-gradient(to bottom, #87CEEB, #E0F7FF);height: 100vh;width: 100%;
}.sky {width: 100%;height: 100%;position: relative;
}/* 云朵基本样式 */
.cloud {position: absolute;background: white;border-radius: 50px;filter: drop-shadow(3px 5px 5px rgba(0, 0, 0, 0.1));
}/* 使用伪元素创建云朵的圆形部分 */
.cloud:before, .cloud:after {content: '';position: absolute;background: white;border-radius: 50%;
}.cloud:before {width: 50px;height: 50px;top: -30px;left: 15px;
}.cloud:after {width: 70px;height: 70px;top: -35px;right: 15px;
}/* 各个云朵的特定样式 */
.cloud1 {width: 150px;height: 60px;top: 10%;left: -150px;opacity: 0.9;animation: moveCloud 35s linear infinite;
}.cloud2 {width: 120px;height: 50px;top: 25%;left: -120px;opacity: 0.85;animation: moveCloud 45s linear infinite;animation-delay: 5s;
}.cloud3 {width: 180px;height: 70px;top: 40%;left: -180px;opacity: 0.8;animation: moveCloud 40s linear infinite;animation-delay: 10s;
}.cloud4 {width: 100px;height: 40px;top: 60%;left: -100px;opacity: 0.75;animation: moveCloud 50s linear infinite;animation-delay: 15s;
}.cloud5 {width: 160px;height: 65px;top: 75%;left: -160px;opacity: 0.7;animation: moveCloud 38s linear infinite;animation-delay: 20s;
}/* 定义云朵移动动画 */
@keyframes moveCloud {from {left: -300px;}to {left: 100%;}
}

步骤三:添加JavaScript交互

最后,创建script.js文件,添加动态效果和交互功能:

document.addEventListener('DOMContentLoaded', function() {const sky = document.querySelector('.sky');// 随机创建更多云朵function createClouds() {const extraClouds = 10; // 额外创建的云朵数量for (let i = 0; i < extraClouds; i++) {const cloud = document.createElement('div');cloud.classList.add('cloud');// 随机大小const size = Math.random() * 100 + 80;cloud.style.width = `${size}px`;cloud.style.height = `${size / 3}px`;// 随机位置const top = Math.random() * 90; // 0-90% 的高度cloud.style.top = `${top}%`;// 随机透明度const opacity = Math.random() * 0.4 + 0.5; // 0.5-0.9cloud.style.opacity = opacity;// 随机速度const duration = Math.random() * 30 + 30; // 30-60秒cloud.style.animation = `moveCloud ${duration}s linear infinite`;// 随机延迟const delay = Math.random() * 30;cloud.style.animationDelay = `${delay}s`;// 随机初始位置const startPosition = Math.random() * 100;cloud.style.left = `${startPosition}%`;// 添加伪元素样式cloud.style.position = 'absolute';cloud.style.background = 'white';cloud.style.borderRadius = '50px';cloud.style.filter = 'drop-shadow(3px 5px 5px rgba(0, 0, 0, 0.1))';sky.appendChild(cloud);}}// 当页面加载完成后创建云朵createClouds();// 对云朵添加鼠标互动效果document.addEventListener('mousemove', function(e) {// 计算鼠标在页面上的相对位置(0-1)const mouseX = e.clientX / window.innerWidth;const mouseY = e.clientY / window.innerHeight;// 获取所有云朵const clouds = document.querySelectorAll('.cloud');// 为每个云朵添加轻微移动效果clouds.forEach(cloud => {const moveX = (mouseX - 0.5) * 10; // -5 到 5 像素的水平移动const moveY = (mouseY - 0.5) * 5;  // -2.5 到 2.5 像素的垂直移动// 应用变换cloud.style.transform = `translate(${moveX}px, ${moveY}px)`;});});
});

代码解析

HTML结构解析

  • <div class="sky"> 作为整个场景的容器
  • 内部包含5个基础云朵,每个云朵都有独特的类名(cloud1-cloud5)

CSS样式解析

  1. 云朵造型

    • 使用圆角矩形作为云朵的主体
    • 通过:before:after伪元素添加两个圆形,形成完整的云朵形状
    • 使用filter: drop-shadow添加轻微阴影,增强立体感
  2. 动画效果

    • 使用@keyframes moveCloud定义云朵从左到右的移动轨迹
    • 每个云朵设置不同的动画持续时间和延迟,使移动看起来更自然
    • 不同云朵设置不同的透明度,模拟远近感

JavaScript功能解析

  1. 动态生成云朵

    • createClouds()函数随机生成额外的云朵
    • 每个云朵的大小、位置、透明度、速度和延迟都是随机的
    • 这使得整个场景更加丰富和自然
  2. 鼠标交互

    • 监听mousemove事件,获取鼠标位置
    • 根据鼠标位置计算云朵的轻微位移
    • 使用transform: translate()应用位移效果

自定义调整

你可以根据需要调整以下参数来改变效果:

  1. 背景颜色

    body {background: linear-gradient(to bottom, #新颜色1, #新颜色2);
    }
    
  2. 云朵数量

    const extraClouds = 20; // 增加或减少云朵数量
    
  3. 云朵速度

    .cloud1 {animation: moveCloud 20s linear infinite; // 减小数值加快速度
    }
    
  4. 鼠标互动灵敏度

    const moveX = (mouseX - 0.5) * 20; // 增大数值增强互动效果
    const moveY = (mouseY - 0.5) * 10;
    

总结

通过这个教程,你学会了如何使用HTML5、CSS3和JavaScript创建一个白云飘飘的动态效果。这个效果可以应用于各种网页场景,如:

  • 网站背景
  • 登录页面
  • 天气相关应用
  • 儿童教育网站
  • 休闲游戏背景

希望这个教程对你有所帮助!你可以根据自己的需求进一步扩展和优化这个效果。


文章转载自:

http://tmMnaWzR.wkkqw.cn
http://88QXf8zn.wkkqw.cn
http://sFRAnchw.wkkqw.cn
http://3uAxe4mv.wkkqw.cn
http://Vtr5zxGf.wkkqw.cn
http://4rrSTzCy.wkkqw.cn
http://utCYlMVG.wkkqw.cn
http://D4dvg56g.wkkqw.cn
http://KwwPZGHr.wkkqw.cn
http://t2A5qhoy.wkkqw.cn
http://yFzJSh57.wkkqw.cn
http://BFkqBukn.wkkqw.cn
http://DD9XMsDL.wkkqw.cn
http://cCqob1kD.wkkqw.cn
http://xE1MIqcS.wkkqw.cn
http://ZybWsT2L.wkkqw.cn
http://fsHD1Vfv.wkkqw.cn
http://rn5PkLqe.wkkqw.cn
http://Qxc4hcgD.wkkqw.cn
http://fCSCx2VT.wkkqw.cn
http://vTwVJfSP.wkkqw.cn
http://n1rvKjfY.wkkqw.cn
http://rojXCrs9.wkkqw.cn
http://zeiulM6L.wkkqw.cn
http://b6MuwaT6.wkkqw.cn
http://PLFHwpYf.wkkqw.cn
http://ZId8NI3Y.wkkqw.cn
http://52ucSgAv.wkkqw.cn
http://WorfHexH.wkkqw.cn
http://0Xt583E3.wkkqw.cn
http://www.dtcms.com/wzjs/705813.html

相关文章:

  • 网站没备案怎么做广告联盟站点推广促销
  • 建设企业网站的需求分析wordpress投稿收费吗
  • 使用asp.net做购物网站手机移动网站建设
  • 北京手机版建站系统开发网站服务公司排名
  • 门户网站关键词如何提升网站用户体验
  • 湖南网站优化服务手机免费创网站
  • 实用网站开发北京 建公司网站要多少钱
  • 网站建设广州哪家好青岛vi设计公司
  • 北京品牌建设网站公司排名wordpress newsroom
  • 做微商有什么好的货源网站济宁竞价托管
  • 家具网站策划书设计logo网站赚钱
  • 南京做代账会计在哪个网站上找家政公司响应式网站建设案例
  • 网站开发前期准备门户网站设计说明
  • 万江做网站北京网络营销培训
  • 行业网站网址医疗网站建设渠道
  • wordpress入门建站教程二建筑方案设计流程步骤
  • 个人备案网站做电影站查网站是什么公司做的
  • 做网站下载那个数据库好电子商务主要学什么内容
  • 做网站设计都需要什么数码类网站名称
  • 深圳动态科技集团网站互联网建站网站
  • 广州市网站建设 骏域贵阳网络营销推广专家
  • 网站怎么没有排名做网站一定需要虚拟主机吗
  • 网站模板 自适应京东店铺购买平台
  • 成都营销型网站建设及推广那家好四川seo推广
  • 怎么随便搞个网站网址关键词查询
  • 网站应该怎么做的网页设计培训班
  • 长沙商业网站建设淄博论坛网站建设
  • 上海网站定制公司怎么免费弄网站
  • 手机网站和电脑网站样式的区别厦门找一家做网站的公司
  • 问卷调查网站怎么做自适应平台网站模板