还在为酷炫css动画背景头疼吗?1分钟解决

简介: 还在为酷炫css动画背景头疼吗?1分钟解决

效果




完整代码


HTML部分

<div id="tsparticles"></div>
        <section>
            <div class="content">
                <h1>Let's Travel The World Together!</h1>
                <p>
                    Our tours are designed to transport you to the heart of the world's
                    most captivating destinations, creating memories that will last a
                    lifetime. You can uncover the hidden gems, iconic landmarks, and
                    unique cultural treasures that make each destination special.
                </p>
                <button>Explore Tours</button>
            </div>
        </section>

CSS部分

*,
        *::before,
        *::after {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: "Nunito", sans-serif;
        }
        body {
            background-image: radial-gradient(circle at 20% 100%,
                    rgba(184, 184, 184, 0.1) 0%,
                    rgba(184, 184, 184, 0.1) 33%,
                    rgba(96, 96, 96, 0.1) 33%,
                    rgba(96, 96, 96, 0.1) 66%,
                    rgba(7, 7, 7, 0.1) 66%,
                    rgba(7, 7, 7, 0.1) 99%),
                linear-gradient(40deg, #040a22, #162561, #202e64, #6f7aa6);
            background-repeat: no-repeat;
            background-size: cover;
        }
        section {
            display: grid;
            grid-template-columns: 50% 45%;
            place-items: center;
            gap: 60px;
            min-height: 100vh;
            padding: 20px 60px;
        }
        /* CONTENT */
        .content {
            max-width: 2400px;
        }
        .content h1 {
            font-family: "Comfortaa", sans-serif;
            font-size: clamp(2rem, 4vw, 3.5rem);
            font-weight: 700;
            line-height: 1.2;
            letter-spacing: 1px;
            margin-bottom: 36px;
            color: #fff;
        }
        .content p {
            font-size: clamp(1rem, 4vw, 1.1rem);
            font-weight: 300;
            line-height: 1.5;
            margin-bottom: 30px;
            color: #fff;
        }
        .content button {
            background: #eaeaea;
            color: #202134;
            font-size: clamp(0.9rem, 4vw, 1rem);
            font-weight: 600;
            border: 0;
            outline: 0;
            padding: 8px 14px;
            border-radius: 7px;
            transform: scale(1);
            transition: all 0.4s ease-in;
            cursor: pointer;
        }
        .content button:is(:hover, :focus) {
            transform: scale(0.98);
            background-color: #6f7aa6;
            color: #eaeaea;
        }
        @media (max-width: 1050px) {
            .swiper {
                width: 350px;
                height: 450px;
            }
        }
        @media (max-width: 930px) {
            section {
                grid-template-columns: 100%;
                grid-template-rows: 55% 40%;
                grid-template-areas:
                    "slider"
                    "content";
                place-items: center;
                gap: 64px;
                padding: 60px;
            }
            .swiper {
                grid-area: slider;
            }
            .content {
                grid-area: content;
                text-align: center;
            }
            .content h1 {
                margin-bottom: 20px;
            }
        }
        @media (max-width: 470px) {
            section {
                padding: 40px 40px 60px;
            }
            .swiper {
                width: 300px;
                height: 400px;
            }
        }

Js

<script src="https://cdn.jsdelivr.net/npm/tsparticles@1.26.0/dist/tsparticles.min.js"></script>
    <script>
        tsParticles.load("tsparticles", {
            fpsLimit: 60,
            backgroundMode: {
                enable: true,
                zIndex: -1,
            },
            particles: {
                number: {
                    value: 30,
                    density: {
                        enable: true,
                        area: 800,
                    },
                },
                color: {
                    value: [
                        "#3998D0",
                        "#2EB6AF",
                        "#A9BD33",
                        "#FEC73B",
                        "#F89930",
                        "#F45623",
                        "#D62E32",
                    ],
                },
                destroy: {
                    mode: "split",
                    split: {
                        count: 1,
                        factor: {
                            value: 5,
                            random: {
                                enable: true,
                                minimumValue: 4,
                            },
                        },
                        rate: {
                            value: 10,
                            random: {
                                enable: true,
                                minimumValue: 5,
                            },
                        },
                        particles: {
                            collisions: {
                                enable: false,
                            },
                            destroy: {
                                mode: "none",
                            },
                            life: {
                                count: 1,
                                duration: {
                                    value: 1,
                                },
                            },
                        },
                    },
                },
                shape: {
                    type: "circle",
                    stroke: {
                        width: 0,
                        color: "#000000",
                    },
                    polygon: {
                        sides: 5,
                    },
                },
                opacity: {
                    value: 1,
                    random: false,
                    animation: {
                        enable: false,
                        speed: 1,
                        minimumValue: 0.1,
                        sync: false,
                    },
                },
                size: {
                    value: 8,
                    random: {
                        enable: true,
                        minimumValue: 4,
                    },
                    animation: {
                        enable: false,
                        speed: 40,
                        minimumValue: 0.1,
                        sync: false,
                    },
                },
                collisions: {
                    enable: true,
                    mode: "destroy",
                },
                move: {
                    enable: true,
                    speed: 7,
                    direction: "none",
                    random: false,
                    straight: false,
                    out_mode: "out",
                    attract: {
                        enable: false,
                        rotateX: 600,
                        rotateY: 1200,
                    },
                },
            },
            detectRetina: true,
        });
    </script>
相关文章
|
3月前
|
自然语言处理 前端开发 JavaScript
用 通义灵码 一键生成“水波纹按钮”,连 CSS 动画都不用自己写了!
通义灵码是一款智能编程辅助工具,它可以根据自然语言指令自动生成高质量的代码。例如,只需输入“生成一个按钮,点击时带水波纹动画,模拟 Material Ripple 效果”,它就能生成具备完整交互逻辑、CSS 动画和良好性能的按钮组件。不仅如此,它还支持拓展功能,如长按触发提示、添加图标等,并能自动优化样式适配不同场景。通过通义灵码,开发者可以大幅提升效率,专注于创意实现,而不必纠结于繁琐的代码细节。
|
8月前
|
前端开发 JavaScript
CSS 过渡和动画
CSS过渡和动画是用于为网页元素添加动态效果的两种重要技术
427 143
|
14天前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
Animation属性 css3为Animation动画提供的几个属性如下: 属性名 属性值 animation-name 指定动画名称,该属性指定一个已有的关键帧定义。 animation-duration 指定动画持续时间。 animation-timing-funtion 指定动画变化速度。 animation-delay 指定动画延迟多长时间才开始执行。 animation-iteration-count 指定动画的循环执行次数。 animation:这是一个复合属性。
45 1
|
机器学习/深度学习 前端开发 JavaScript
CSS动画知识点
CSS动画知识点
|
9月前
css3 svg制作404页面动画效果HTML源码
css3 svg制作404页面动画效果HTML源码
161 34
|
11月前
|
移动开发 前端开发 JavaScript
除了 CSS3,还有哪些技术可以实现动画效果?
除了 CSS3,还有哪些技术可以实现动画效果?
329 63
|
11月前
|
JavaScript 前端开发
CSS3 动画和 JavaScript 动画的性能比较
具体的性能表现还会受到许多因素的影响,如动画的复杂程度、浏览器的性能、设备的硬件条件等。在实际应用中,需要根据具体情况选择合适的动画技术。
|
11月前
|
Web App开发 前端开发 JavaScript
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
531 58
|
9月前
jQuery+CSS3实现404背景游戏动画源码
jQuery+CSS3实现404背景游戏动画源码
135 22
|
12月前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
293 58

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
  • 7
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改