前言:
在现代互联网时代,网站的前端设计越来越重要,而动态的云朵生成正是一种非常有趣的前端设计方式。通过使用前端技术,我们可以轻松地生成各种形态的云朵,为网站增添一份别样的美感和趣味性。在这篇文章中,我们将会介绍如何使用前端技术实现动态的云朵生成。无论你是前端开发者,还是对前端设计感兴趣的初学者,这篇文章都将会是你学习前端技术的不错选择。让我们开始吧!
首先,你们可能认为这里的云是这样的:
这样的:
这样的:
又或许是这样的:
这样的:
这样的:
但其实它是这样的:
具体代码:
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等,对于前端开发者和初学者来说都具有很好的参考价值。在实践中不断尝试和调整,你会发现动态云朵生成对网站的前端设计提供了一种非常有趣的新思路。
如果各位喜欢的话,希望可以给俺一个三连支持啊啊啊,非常感谢!! 最后想对各位说,愿各位在白云苍狗的天际,风顺航海,终有所至!