天空中的云朵装点你的网页——打造炫酷前端动态生成效果

文章介绍了如何利用前端技术,包括HTML、CSS和JavaScript,来创建和实现动态的云朵效果,为网站增添趣味性。通过CSS实现云朵的基础形状,JavaScript处理云朵的动态运动,以及随机大小和位置,使云朵在网页上自然漂浮并最终消失。这是一个适合前端开发者和初学者的学习示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

在现代互联网时代,网站的前端设计越来越重要,而动态的云朵生成正是一种非常有趣的前端设计方式。通过使用前端技术,我们可以轻松地生成各种形态的云朵,为网站增添一份别样的美感和趣味性。在这篇文章中,我们将会介绍如何使用前端技术实现动态的云朵生成。无论你是前端开发者,还是对前端设计感兴趣的初学者,这篇文章都将会是你学习前端技术的不错选择。让我们开始吧!

首先,你们可能认为这里的云是这样的:
图二

这样的:
图一

这样的:
图三
又或许是这样的:
图一
这样的:
图二
这样的:
图三

但其实它是这样的:
图


具体代码:

html代码:

包括一个点击按钮和一个放置云朵的容器。

      <br><br>
      <button class="cloud-btn"><span>点击生成云朵</span></button>
      <br><br><br>
      <div class="cloud-wrapper"></div>
css代码:

(1)按钮:

     .cloud-btn {
        width: 200px;
        height: 55px;
        padding: 10px;
        font-size: 18px;
        color: #fff;
        background: #4db6ac;
        border: none;
        border-radius: 25px;
        cursor: pointer;
      }
      .cloud-btn span {
        cursor: pointer;
        display: inline-block;
        position: relative;
        transition: 0.5s;
      }
      .cloud-btn span:after {
        content: "»";
        position: absolute;
        opacity: 0;
        top: 0;
        right: -20px;
        transition: 0.5s;
      }
      .cloud-btn:hover span {
        padding-right: 25px;
      }
      .cloud-btn:hover span:after {
        opacity: 1;
        right: 0;
      }
     

(2)云朵容器:

.cloud-wrapper {
        position: relative;
        width: 100%;
        height: 200px;
        background: linear-gradient(skyblue,#fff);
        overflow: hidden;
      }

(3)云朵:

 .cloud {
        position: absolute;
        /* top: -150px; */
        top: 10px;
        left: 0;
        width: 150px;
        height: 100px;
        background: #fff;
        /* border: 1px solid rgb(173, 172, 172); */
        border-radius: 50%;
        box-shadow: 3px 3px 20px rgba(255, 255, 255, 0.3);
        animation: cloud-float 5s linear infinite;
      }

@keyframes cloud-float {
        0% {
          transform: translateX(-100%);
        }
        100% {
          transform: translateX(100%);
        }
      }
javascript代码:
      const wrapper = document.querySelector(".cloud-wrapper");
      const btn = document.querySelector(".cloud-btn");

      btn.addEventListener("click", () => {
        // 第一部分
        const cloud = document.createElement("div");
        cloud.classList.add("cloud");

        // 第二部分
        const size = Math.random() * (150 - 50) + 50;
        const left = Math.random() * (wrapper.offsetWidth - size);

        cloud.style.width = `${size}px`;
        cloud.style.height = `${size / 2}px`;
        cloud.style.left = `${left}px`;

        // 第三部分
        wrapper.appendChild(cloud);

        // 第四部分
        setTimeout(() => {
          wrapper.removeChild(cloud);
        }, 5000);
      });

代码解释:
(1)第一部分是创建云朵元素
(2)第二部分是随机设置云朵大小和位置
(3)第三部分是将云朵元素添加到云朵容器中
(4)第四部分是在一定时间后删除云朵元素,此处设置的是5s


效果展示:

上边演示中没有按钮动画,但是放到页面展示时,当你鼠标放到按钮上,按钮会变为下图状态:
在这里插入图片描述

总结:

在本文中,我们学习了如何使用前端技术实现动态的云朵生成。我们首先介绍了如何使用CSS3实现基础的云朵形状,然后使用javascript实现了云朵形状的动态运动。通过调整云朵的大小、形状和颜色,我们可以生成丰富多彩的云朵效果,并将其应用于网站的前端设计中。本文中所涉及的前端技术涵盖了HTML、CSS、JavaScript等,对于前端开发者和初学者来说都具有很好的参考价值。在实践中不断尝试和调整,你会发现动态云朵生成对网站的前端设计提供了一种非常有趣的新思路。

如果各位喜欢的话,希望可以给俺一个三连支持啊啊啊,非常感谢!! 最后想对各位说,愿各位在白云苍狗的天际,风顺航海,终有所至!

前途似锦


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值