前端开发 之 15个页面加载特效中【附完整源码】

前端开发 之 15个页面加载特效中【附完整源码】

文章目录

  • 前端开发 之 15个页面加载特效中【附完整源码】
      • 八:圆环百分比加载特效
          • 1.效果展示
          • 2.`HTML`完整代码
      • 九:毒药罐加载特效
          • 1.效果展示
          • 2.`HTML`完整代码
      • 十:无限圆环加载特效
          • 1.效果展示
          • 2.`HTML`完整代码
      • 十一:圆点加载特效
          • 1.效果展示
          • 2.`HTML`完整代码

八:圆环百分比加载特效

1.效果展示

在这里插入图片描述

2.HTML完整代码
<!DOCTYPE html> 
<html lang="en"> 
<head>
    <meta charset="UTF-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>圆环百分比加载特效</title>
    <style>
        body, html {
            margin: 0; /* 去除默认的边距 */
            padding: 0; /* 去除默认的内边距 */
            width: 100%; /* 设置宽度为100% */
            height: 100%; /* 设置高度为100% */
            display: flex; /* 使用Flexbox布局 */
            justify-content: center; /* 水平居中 */
            align-items: center; /* 垂直居中 */
            background: radial-gradient(circle, #1e3c72, transparent); /* 设置背景为径向渐变 */
            font-family: Arial, sans-serif; /* 设置字体 */
            color: white; /* 设置文字颜色为白色 */
            overflow: hidden; /* 隐藏溢出内容 */
        }

        .loader {
            position: relative; /* 设置定位方式为相对定位 */
            width: 200px; /* 设置宽度 */
            height: 200px; /* 设置高度 */
            display: flex; /* 使用Flexbox布局 */
            justify-content: center; /* 水平居中 */
            align-items: center; /* 垂直居中 */
        }

        .circle {
            width: 100%; /* 设置宽度为100% */
            height: 100%; /* 设置高度为100% */
            border-radius: 50%; /* 设置边框圆角为50%,形成圆形 */
            border: 15px solid transparent; /* 设置边框宽度、样式和透明颜色 */
            border-top-color: #3498db; /* 设置顶部边框颜色 */
            border-right-color: #2ecc71; /* 设置右侧边框颜色 */
            border-bottom-color: #e74c3c; /* 设置底部边框颜色 */
            border-left-color: #f1c40f; /* 设置左侧边框颜色 */
            animation: spinGradient 3s linear infinite; /* 应用动画 */
            box-shadow: 0 0 20px rgba(255, 255, 255, 0.5), 0 0 40px rgba(255, 255, 255, 0.5), 0 0 60px rgba(255, 255, 255, 0.5); /* 设置阴影效果 */
        }

        @keyframes spinGradient {
            0% { transform: rotate(0deg); } /* 初始状态,旋转0度 */
            100% { transform: rotate(360deg); } /* 结束状态,旋转360度 */
        }

        .progress {
            position: absolute; /* 设置定位方式为绝对定位 */
            top: 50%; /* 设置顶部距离 */
            left: 50%; /* 设置左侧距离 */
            width: 170px; /* 设置宽度 */
            height: 170px; /* 设置高度 */
            border-radius: 50%; /* 设置边框圆角为50%,形成圆形 */
            background: radial-gradient(circle closest-side, rgba(255, 255, 255, 0.1), transparent); /* 设置背景为径向渐变 */
            transform: translate(-50%, -50%); /* 设置位移,使元素居中 */
            clip-path: circle(0% at 50% 50%); /* 设置裁剪路径,初始为0%的圆形 */
            transition: clip-path 0.1s ease-in-out; /* 设置过渡效果 */
        }

        .percentage {
            position: absolute; /* 设置定位方式为绝对定位 */
            bottom: -40px; /* 设置底部距离 */
            left: 50%; /* 设置左侧距离 */
            transform: translateX(-50%); /* 设置水平位移,使元素居中 */
            font-size: 24px; /* 设置字体大小 */
            font-weight: bold; /* 设置字体加粗 */
            text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); /* 设置文字阴影 */
        }
    </style>
</head>
<body>
    <div class="loader">
        <div class="circle"></div> <!-- 圆环 -->
        <div class="progress"></div> <!-- 进度条 -->
        <div class="percentage">0%</div> <!-- 百分比文本 -->
    </div>
    <script>
        // 当文档内容加载完成后执行
        document.addEventListener("DOMContentLoaded", function() {
            const progress = document.querySelector(".progress"); // 获取进度条元素
            const percentage = document.querySelector(".percentage"); // 获取百分比文本元素
            let loadProgress = 0; // 初始化加载进度为0

            // 模拟加载过程
            const simulateLoading = setInterval(() => {
                loadProgress += 1; // 每次增加加载进度1
                percentage.innerText = loadProgress + "%"; // 更新百分比文本
                const clipPathValue = `circle(${loadProgress}% at 50% 50%)`; 
                progress.style.clipPath = clipPathValue; // 更新进度条的裁剪路径
                // 当加载进度达到100%时,停止模拟加载,并在0.5秒后跳转到指定页面
                if (loadProgress >= 100) {
                    clearInterval(simulateLoading); // 停止定时器
                    setTimeout(() => {
                        window.location.href = "your-page.html"; // 跳转到指定页面
                    }, 500);
                }
            }, 100); // 每100毫秒执行一次
        });
    </script>
</body>
</html>

九:毒药罐加载特效

1.效果展示

在这里插入图片描述

2.HTML完整代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8">
    <title>毒药罐加载特效</title>
    <style>
        html {
            height: 100%;
            /* 设置HTML元素的高度为100% */
            margin: 0;
            /* 移除HTML元素的外边距 */
            display: flex;
            /* 设置HTML元素为弹性盒布局 */
            justify-content: center;
            /* 水平居中子元素 */
            align-items: center;
            /* 垂直居中子元素 */
            background-image: linear-gradient(90deg, #5a3cc2, rgba(192, 55, 231, 0.34), rgba(213, 30, 152, 0.73));
            /* 设置背景为线性渐变颜色 */
        }

        .TankShaking_bottle {
            animation: TankShaking_animate__s7STs 2s linear infinite;
            /* 应用动画,持续2秒,线性无限循环 */
            background-color: hsla(120, 60%, 20%, 1);
            /* 设置背景颜色为深绿色 */
            border-radius: 50%;
            /* 设置边框圆角为50%,使元素呈现圆形 */
            height: 200px;
            /* 设置元素高度 */
            position: relative;
            /* 设置元素定位方式为相对定位 */
            transform-origin: bottom center;
            /* 设置变形原点为底部中心 */
            width: 200px;
            /* 设置元素宽度 */
            z-index: 2;
            /* 设置层叠顺序 */
        }

        .TankShaking_bottle:before {
            content: "";
            /* 伪元素必须设置content属性 */
            position: absolute;
            /* 设置定位方式为绝对定位 */
            top: -10px;
            /* 设置顶部偏移 */
            left: 50%;
            /* 设置左边偏移 */
            transform: translateX(-50%);
            /* 水平居中 */
            width: 120px;
            /* 设置宽度 */
            height: 40px;
            /* 设置高度 */
            background: linear-gradient(to right, #3ab8ce, #ffffff, #2b7a93);
            /* 设置背景为线性渐变颜色 */
            border-radius: 50%;
            /* 设置边框圆角为50%,使元素呈现圆形 */
            box-shadow: 0 6.6666666667px 10px #000;
            /* 设置盒阴影 */
        }

        .TankShaking_bottle .PoisonLabel {
            position: absolute;
            /* 设置定位方式为绝对定位 */
            top: -30px;
            /* 设置顶部偏移 */
            left: 50%;
            /* 设置左边偏移 */
            transform: translateX(-50%);
            /* 水平居中 */
            width: 100px;
            /* 设置宽度 */
            height: 20px;
            /* 设置高度 */
            background-color: black;
            /* 设置背景颜色为黑色 */
            color: white;
            /* 设置文字颜色为白色 */
            text-align: center;
            /* 设置文字居中 */
            line-height: 20px;
            /* 设置行高 */
            border-radius: 5px;
            /* 设置边框圆角 */
            font-family: Arial, sans-serif;
            /* 设置字体 */
            font-size: 12px;
            /* 设置字体大小 */
        }

        .TankShaking_bottle .TankShaking_water {
            animation: TankShaking_animate2__M8tPD 2s linear infinite;
            /* 应用动画,持续2秒,线性无限循环 */
            background-color: #32cd32;
            /* 设置背景颜色为有毒的绿色 */
            border-bottom-left-radius: 100px;
            /* 设置左下角边框圆角 */
            border-bottom-right-radius: 100px;
            /* 设置右下角边框圆角 */
            bottom: 10px;
            /* 设置底部偏移 */
            left: 10px;
            /* 设置左边偏移 */
            position: absolute;
            /* 设置定位方式为绝对定位 */
            right: 10px;
            /* 设置右边偏移 */
            top: 50%;
            /* 设置顶部偏移 */
            transform-origin: top center;
            /* 设置变形原点为顶部中心 */
        }

        .TankShaking_bottle .TankShaking_water:before {
            content: "";
            /* 伪元素必须设置content属性 */
            position: absolute;
            /* 设置定位方式为绝对定位 */
            top: -10px;
            /* 设置顶部偏移 */
            left: 0;
            /* 设置左边偏移 */
            width: 100%;
            /* 设置宽度为100% */
            height: 20px;
            /* 设置高度 */
            background-color: #1e90ff;
            /* 设置背景颜色 */
            border-radius: 50%;
            /* 设置边框圆角为50%,使元素呈现圆形 */
        }

        .TankShaking_bottleBottom {
            background-color: hsla(120, 60%, 20%, 0.5);
            /* 设置背景颜色为半透明深绿色 */
            border-radius: 50%;
            /* 设置边框圆角为50%,使元素呈现圆形 */
            height: 30px;
            /* 设置高度 */
            width: 200px;
            /* 设置宽度 */
            position: relative;
            /* 设置定位方式为相对定位 */
            margin-top: -10px;
            /* 设置上边距为负值,实现重叠效果 */
            animation: shadowGradient 3s infinite;
            /* 应用动态阴影渐变动画,持续3秒,无限循环 */
        }

        @keyframes shadowGradient {
            0% { box-shadow: 0 10px 20px rgba(50, 205, 50, 0.5); }
            /* 起始状态设置盒阴影 */
            33% { box-shadow: 0 10px 20px rgba(34, 170, 194, 0.7); }
            /* 33%时改变盒阴影颜色 */
            66% { box-shadow: 0 10px 20px rgba(25, 60, 150, 0.9); }
            /* 66%时再次改变盒阴影颜色 */
            100% { box-shadow: 0 10px 20px rgba(164, 50, 205, 0.5); }
            /* 结束时回到起始盒阴影颜色 */
        }

        .Smoke {
            position: absolute;
            /* 设置定位方式为绝对定位 */
            top: -50px;
            /* 设置顶部偏移 */
            left: 50%;
            /* 设置左边偏移 */
            transform: translateX(-50%);
            /* 水平居中 */
            width: 20px;
            /* 设置宽度 */
            height: 50px;
            /* 设置高度 */
            background: radial-gradient(circle, rgba(50, 205, 50, 0.6) 0%, rgba(3, 21, 3, 0) 100%);
            /* 设置背景为径向渐变颜色 */
            opacity: 0;
            /* 设置透明度 */
            animation: smokeAnimation 6s infinite, smokeColorChange 6s infinite;
            /* 应用两个动画,持续6秒,无限循环 */
        }

   /* 定义烟雾动画,描述烟雾从产生到消失的过程 */
        @keyframes smokeAnimation {
            0% {
                opacity: 0; /* 初始透明度为0,不可见 */
                transform: translateX(-50%) translateY(0) scale(0.5); /* 初始位置调整,并缩小 */
            }
            30% {
                opacity: 0.7; /* 透明度增加,变得可见 */
                transform: translateX(-50%) translateY(-30px) scale(1.2); /* 向上移动并稍微放大 */
            }
            60% {
                opacity: 0.3; /* 透明度降低,开始变淡 */
                transform: translateX(-50%) translateY(-60px) scale(1.5); /* 继续向上移动并更大 */
            }
            100% {
                opacity: 0; /* 透明度为0,完全不可见 */
                transform: translateX(-50%) translateY(-90px) scale(0.5); /* 移动到最终位置并缩小 */
            }
        }

        /* 定义烟雾颜色变化动画 */
        @keyframes smokeColorChange {
            0%, 100% {
                background: radial-gradient(circle, rgba(50, 205, 50, 0.1) 0%, rgba(3, 21, 3, 0) 100%); /* 初始和结束时为绿色渐变 */
            }
            25% {
                background: radial-gradient(circle, rgba(255, 165, 0, 0.11) 0%, rgba(3, 21, 3, 0) 100%); /* 25%时为橙色渐变 */
            }
            50% {
                background: radial-gradient(circle, rgba(138, 43, 226, 0.12) 0%, rgba(3, 21, 3, 0) 100%); /* 50%时为紫色渐变 */
            }
            75% {
                background: radial-gradient(circle, rgba(255, 255, 255, 0.18) 0%, rgba(3, 21, 3, 0) 100%); /* 75%时为白色渐变 */
            }
        }

        /* 定义水罐摇晃的旋转动画 */
        @keyframes TankShaking_animate__s7STs {
            0% { transform: rotate(0) } /* 初始位置,不旋转 */
            25% { transform: rotate(15deg) } /* 25%时顺时针旋转15度 */
            50% { transform: rotate(0) } /* 50%时回到初始位置 */
            75% { transform: rotate(-15deg) } /* 75%时逆时针旋转15度 */
            to { transform: rotate(0) } /* 动画结束时回到初始位置 */
        }

        /* 定义水罐摇晃时的滤镜和旋转动画 */
        @keyframes TankShaking_animate2__M8tPD {
            0% {
                filter: drop-shadow(0 0 50px #32cd32) hue-rotate(0deg); /* 初始时添加绿色阴影,色相不旋转 */
                transform: rotate(0) /* 不旋转 */
            }
            25% { transform: rotate(-15deg) } /* 25%时逆时针旋转15度 */
            50% { transform: rotate(0) } /* 50%时回到初始位置 */
            75% { transform: rotate(15deg) } /* 75%时顺时针旋转15度 */
            to {
                filter: drop-shadow(0 0 50px #32cd32) hue-rotate(1turn); /* 动画结束时,阴影色相旋转一圈 */
                transform: rotate(0) /* 回到初始位置 */
            }
        }

        /* 定义水罐摇晃时的水平移动动画 */
        @keyframes TankShaking_move__yUHoY {
            0% { transform: translateX(-50%) } /* 初始位置,水平居中 */
            25% { transform: translateX(calc(-50% + 20px)) } /* 25%时向右移动20px */
            50% { transform: translateX(-50%) } /* 50%时回到初始位置 */
            75% { transform: translateX(calc(-50% - 20px)) } /* 75%时向左移动20px */
            to { transform: translateX(-50%) } /* 动画结束时回到初始位置 */
        }
    </style>
</head>
<body>
    <!-- 水罐摇晃效果的容器 -->
    <div class="TankShaking_container">
        <!-- 水罐瓶子部分 -->
        <div class="TankShaking_bottle">
            <!-- 水罐中的水部分 -->
            <div class="TankShaking_water"></div>
            <!-- 添加多个烟雾效果,每个烟雾效果有不同的动画延迟,实现连续出现的效果 -->
            <div class="Smoke"></div>
            <div class="Smoke" style="animation-delay: 1s;"></div>
            <div class="Smoke" style="animation-delay: 2s;"></div>
        </div>
      <!-- 水罐瓶底部分 -->
      <div class="TankShaking_bottleBottom"></div>
    </div>
</body>
</html>

十:无限圆环加载特效

1.效果展示

在这里插入图片描述

2.HTML完整代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8">
    <title>无限圆环加载特效</title>
    <style>
        body, html {
            margin: 0;
            /* 设置body和html的外边距为0 */
            padding: 0;
            /* 设置body和html的内边距为0 */
            width: 100%;
            /* 设置宽度为100% */
            height: 100%;
            /* 设置高度为100% */
            display: flex;
            /* 使用Flexbox布局 */
            justify-content: center;
            /* 水平居中 */
            align-items: center;
            /* 垂直居中 */
            background: linear-gradient(45deg, #ff6b6b, #f06595, #cc5de8, #556270, #4ecdc4);
            /* 设置背景为线性渐变,角度为45度,颜色从#ff6b6b渐变到#4ecdc4 */
            background-size: 300% 300%;
            /* 设置背景图片的大小为原尺寸的3倍 */
            animation: gradientBG 15s ease infinite;
            /* 应用动画gradientBG,持续15秒,缓动效果为ease,无限循环 */
            overflow: hidden;
            /* 隐藏超出容器的内容 */
        }

        @keyframes gradientBG {
            0% { background-position: 0% 50%; }
            /* 动画开始时背景位置 */
            50% { background-position: 100% 50%; }
            /* 动画进行到一半时背景位置 */
            100% { background-position: 0% 50%; }
            /* 动画结束时背景位置回到初始状态 */
        }

        .loader {
            position: relative;
            /* 相对定位 */
            width: 200px;
            /* 设置宽度为200px */
            height: 200px;
            /* 设置高度为200px */
            display: flex;
            /* 使用Flexbox布局 */
            justify-content: center;
            /* 水平居中 */
            align-items: center;
            /* 垂直居中 */
        }

        .loader div {
            box-sizing: border-box;
            /* 设置盒模型为border-box */
            display: block;
            /* 设置元素为块级元素 */
            position: absolute;
            /* 绝对定位 */
            width: 50px;
            /* 设置宽度为50px */
            height: 50px;
            /* 设置高度为50px */
            background: rgba(255, 255, 255, 0.2);
            /* 设置背景颜色为半透明的白色 */
            border: 5px solid rgba(255, 255, 255, 0.9);
            /* 设置边框为5px,颜色为接近不透明的白色 */
            border-radius: 50%;
            /* 设置边框圆角为50%,形成圆形 */
            animation: loaderSpin 2s ease-in-out infinite alternate;
            /* 应用loaderSpin动画,持续2秒,缓动效果为ease-in-out,无限循环,交替进行 */
        }

        .loader div:nth-child(1) {
            animation-delay: 0s;
            /* 第一个div动画无延迟 */
        }

        .loader div:nth-child(2) {
            animation-delay: 0.5s;
            /* 第二个div动画延迟0.5秒 */
        }

        .loader div:nth-child(3) {
            animation-delay: 1s;
            /* 第三个div动画延迟1秒 */
        }

        .loader div:nth-child(4) {
            animation-delay: 1.5s;
            /* 第四个div动画延迟1.5秒 */
        }

        @keyframes loaderSpin {
            /* 定义loaderSpin动画 */
            0% {
                transform: scale(0.5) rotate(0deg);
                /* 动画开始时缩小到0.5倍并旋转0度 */
                opacity: 0.5;
                /* 透明度为0.5 */
            }
            100% {
                transform: scale(1.5) rotate(360deg);
                /* 动画结束时放大到1.5倍并旋转360度 */
                opacity: 1;
                /* 透明度为1 */
            }
        }

        .glow {
            position: absolute;
            /* 绝对定位 */
            width: 300px;
            /* 设置宽度为300px */
            height: 300px;
            /* 设置高度为300px */
            border-radius: 50%;
            /* 设置边框圆角为50%,形成圆形 */
            background: radial-gradient(circle, rgba(255,255,255,0.1), transparent);
            /* 设置背景为径向渐变,从半透明的白色渐变到透明 */
            filter: blur(15px);
            /* 应用模糊滤镜,模糊半径为15px */
            animation: glowPulse 3s infinite;
            /* 应用glowPulse动画,持续3秒,无限循环 */
        }

        @keyframes glowPulse {
            /* 定义glowPulse动画 */
            0%, 100% {
                opacity: 0.6;
                /* 动画开始和结束时透明度为0.6 */
            }
            50% {
                opacity: 1;
                /* 动画进行到一半时透明度为1 */
            }
        }
    </style>
</head>
<body>
    <div class="glow"></div>
    <!-- 创建一个带有glow类的div,用于显示背景的发光效果 -->
    <div class="loader">
        <!-- 创建一个带有loader类的div,作为加载动画的容器 -->
        <div></div>
        <!-- 创建四个div,作为加载动画的小圆环 -->
        <div></div>
        <div></div>
        <div></div>
    </div>

    <script>
        // 模拟加载完成后跳转到主页
        setTimeout(() => {
            // 使用setTimeout函数设置一个定时器
            // 加载完成后的操作,这里可以替换为实际的页面跳转
            // window.location.href = '你的主页URL';
            console.log('加载完成!');
            // 在控制台输出“加载完成!”
        }, 5000); // 设置定时器的时间为5000毫秒(5秒)
    </script>
</body>
</html>

十一:圆点加载特效

1.效果展示

在这里插入图片描述

2.HTML完整代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>圆点加载</title>
    <style>
      body, html {
          height: 100%;
          /* 设置body和html元素的高度为100% */
          margin: 0;
          /* 去除默认的边距 */
          display: flex;
          /* 使用弹性盒布局 */
          justify-content: center;
          /* 使子元素在水平方向上居中 */
          align-items: center;
          /* 使子元素在垂直方向上居中 */
          background: #282c34;
          /* 设置背景颜色为深灰色 */
      }

      .loader {
          display: flex;
          /* 为加载器使用弹性盒布局 */
          justify-content: center;
          /* 使子元素在主轴上居中 */
          align-items: center;
          /* 使子元素在交叉轴上居中 */
          position: relative;
          /* 设置定位方式为相对定位,作为子元素绝对定位的参考 */
          width: 100px;
          /* 设置加载器的宽度 */
          height: 100px;
          /* 设置加载器的高度 */
      }

      .circle {
          position: absolute;
          /* 设置圆点的定位方式为绝对定位 */
          width: 20px;
          /* 设置圆点的宽度 */
          height: 20px;
          /* 设置圆点的高度 */
          background-color: #61dafb;
          /* 设置圆点的背景颜色为天蓝色 */
          border-radius: 50%;
          /* 设置圆角半径为50%,使元素成为圆形 */
          animation: bounce 1s infinite ease-in-out;
          /* 应用动画:名称为bounce,持续1秒,无限循环,动画效果为先加速再减速 */
      }

      .circle:nth-child(1) {
          animation-delay: 0s;
          /* 第一个圆点动画无延迟 */
          left: 0;
          /* 定位到父元素的左边 */
          top: 50%;
          /* 定位到父元素的垂直中心 */
          transform: translateY(-50%);
          /* 向上移动自身高度的50%,实现垂直居中 */
      }

      .circle:nth-child(2) {
          animation-delay: -0.75s;
          /* 第二个圆点动画延迟-0.75秒,即提前开始 */
          left: 50%;
          /* 定位到父元素的水平中心 */
          top: 0;
          /* 定位到父元素的顶部 */
          transform: translateX(-50%);
          /* 向左移动自身宽度的50%,实现水平居中 */
      }

      .circle:nth-child(3) {
          animation-delay: -0.5s;
          /* 第三个圆点动画延迟-0.5秒 */
          right: 0;
          /* 定位到父元素的右边 */
          top: 50%;
          /* 定位到父元素的垂直中心 */
          transform: translateY(-50%);
          /* 向上移动自身高度的50%,实现垂直居中 */
      }

      .circle:nth-child(4) {
          animation-delay: -0.25s;
          /* 第四个圆点动画延迟-0.25秒 */
          left: 50%;
          /* 定位到父元素的水平中心 */
          bottom: 0;
          /* 定位到父元素的底部 */
          transform: translateX(-50%);
          /* 向左移动自身宽度的50%,实现水平居中 */
      }

      @keyframes bounce {
          /* 定义动画名称为bounce */
          0%, 80%, 100% {
              transform: scale(0.5);
              /* 在动画的开始、80%和结束时,将元素缩放到原来的一半 */
          }
          40% {
              transform: scale(1);
              /* 在动画的40%时,元素恢复到原大小 */
          }
      }
    </style>
</head>
<body>
    <div class="loader">
        <!-- 加载器的容器 -->
        <div class="circle"></div>
        <!-- 第一个圆点 -->
        <div class="circle"></div>
        <!-- 第二个圆点 -->
        <div class="circle"></div>
        <!-- 第三个圆点 -->
        <div class="circle"></div>
        <!-- 第四个圆点 -->
    </div>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/928604.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

单张照片生成3D互动场景:李飞飞团队AI 3D技术引领未来

近日,由斯坦福大学教授李飞飞领导的团队推出了一项革命性的AI 3D重建技术,该技术能够从多张未知姿态的照片中自动生成高质量的3D互动场景。这项技术不仅标志着计算机视觉领域的一大进步,也为元宇宙虚拟空间、沉浸式看房、XR(扩展现实)+文旅等应用带来了新的可能性。 技术…

洛谷P2670扫雷游戏(Java)

三.P2670 [NOIP2015 普及组] 扫雷游戏 题目背景 NOIP2015 普及组 T2 题目描述 扫雷游戏是一款十分经典的单机小游戏。在 n 行 m列的雷区中有一些格子含有地雷&#xff08;称之为地雷格&#xff09;&#xff0c;其他格子不含地雷&#xff08;称之为非地雷格&#xff09;。玩…

【机器学习】机器学习的基本分类-监督学习-决策树-CART(Classification and Regression Tree)

CART&#xff08;Classification and Regression Tree&#xff09; CART&#xff08;分类与回归树&#xff09;是一种用于分类和回归任务的决策树算法&#xff0c;提出者为 Breiman 等人。它的核心思想是通过二分法递归地将数据集划分为子集&#xff0c;从而构建一棵树。CART …

商汤完成组织架构调整,改革完成的商汤未来何在?

首先&#xff0c;从核心业务的角度来看&#xff0c;商汤科技通过新架构明确了以AI云、通用视觉模型等为核心业务的战略方向。这一举措有助于商汤科技集中资源&#xff0c;加强在核心业务领域的研发和市场拓展&#xff0c;提高市场竞争力。同时&#xff0c;坚定生成式AI为代表的…

python学opencv|读取视频(二)制作gif

【1】引言 前述已经完成了图像和视频的读取学习&#xff0c;本次课学习制作gif格式动图。 【2】教程 实际上想制作gif格式动图是一个顺理成章的操作&#xff0c;完成了图像和视频的处理&#xff0c;那就自然而然会对gif的处理也产生兴趣。 不过在opencv官网、matplotlib官网…

【Pytorch】torch.reshape与torch.Tensor.reshape区别

问题引入&#xff1a; 在Pytorch文档中&#xff0c;有torch.reshape与torch.Tensor.reshape两个reshape操作&#xff0c;他们的区别是什么呢&#xff1f; 我们先来看一下官方文档的定义&#xff1a; torch.reshape&#xff1a; torch.Tensor.reshape: 解释&#xff1a; 在p…

ArcGIS对地区进行筛选提取及投影转换

首先我们需要对坐标系和投影这些概念做进一步的解释。 1、基本概念&#xff1a; 想要理解坐标系和投影的概念&#xff0c;首先我们需要先理解什么是坐标。顾名思义&#xff0c;坐标就是指我们所在的位置&#xff0c;比如我在离旗杆东北部50m处&#xff0c;其实就是离旗杆东边…

qt QRadialGradient详解

1、概述 QRadialGradient是Qt框架中QGradient的一个子类&#xff0c;它用于创建径向渐变效果。径向渐变是从一个中心点向外扩散的颜色渐变&#xff0c;通常用于模拟光源或创建类似于高光和阴影的效果。QRadialGradient允许你定义渐变的中心点、焦距&#xff08;控制渐变扩散的…

Docker--Docker Image(镜像)

什么是Docker Image&#xff1f; Docker镜像&#xff08;Docker Image&#xff09;是Docker容器技术的核心组件之一&#xff0c;它包含了运行应用程序所需的所有依赖、库、代码、运行时环境以及配置文件等。 简单来说&#xff0c;Docker镜像是一个轻量级、可执行的软件包&…

《C++ Primer Plus》学习笔记|第1章 预备知识 (24-12-2更新)

文章目录 1.2.4 1.4 程序创建1.4.2 编译和链接 1.2.4 泛型编程 它允许程序员在编写代码时不指定具体的数据类型&#xff0c;而是使用一种通用的模板来处理多种不同的数据类型。以提高代码的复用性 C模板提供了完成这种任务的机制。 1.4 程序创建 使用文本编辑器编写程序&…

string类函数的手动实现

在上一篇文章中&#xff0c;我们讲解了一些string类的函数&#xff0c;但是对于我们要熟练掌握c是远远不够的&#xff0c;今天&#xff0c;我将手动实现一下这些函数~ 注意&#xff1a;本篇文章中会大量应用复用&#xff0c;这是一种很巧妙的方法 和以往一样&#xff0c;还是…

架构06-分布式共识

零、文章目录 架构06-分布式共识 1、分布式共识 &#xff08;1&#xff09;基本概念 **分布式共识&#xff1a;**在分布式系统中&#xff0c;多个节点之间达成一致的过程。**复杂性来源&#xff1a;**网络的不可靠性和请求的并发性。**应用场景&#xff1a;**如何确保重要数…

USB 声卡全解析:提升音频体验的得力助手

在当今数字化的时代&#xff0c;音频领域的追求愈发多元。无论是热衷聆听高品质音乐的爱好者&#xff0c;还是在专业音频工作中精雕细琢的人士&#xff0c;亦或是在游戏世界里渴望极致音效沉浸的玩家&#xff0c;都始终在寻觅能让音频体验更上一层楼的妙法。而 USB 声卡&#x…

系统--线程互斥

1、相关背景知识 临界资源多线程、多执行流共享的资源,就叫做临界资源临界区每个线程内部,访问临界资源的代码互斥在任何时刻,保证有且只有一个执行流进入临界区,访问临界资源,对临界资源起到保护作用原子性不会被任何调度机制打断的操作,该操作只有两态,要么完成,要么…

【短视频矩阵系统==saas技术开发】

在数字媒体领域&#xff0c;短视频的崛起已不可忽视。对于商业实体而言&#xff0c;掌握如何通过短视频平台有效吸引潜在客户并提高转化率&#xff0c;已成为一项关键课题。本文旨在深入剖析短视频矩阵系统的构成与作用机制&#xff0c;以期为企业提供一套系统化的策略&#xf…

Python语法基础(八)

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” 异常处理 这一个部分&#xff0c;我们来讲一下异常处理这部分。 异常特点 当程序执行的过程中&#xff0c;我们遇到了异常&#xff0c;而且异常未被处理&#xff0c;那么程序…

burp2

声明&#xff01; 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下&#xff0c;如涉及侵权马上删除文章&#xff0c;笔记只是方便各位师傅的学习和探讨&#xff0c;文章所提到的网站以及内容&#xff0c;只做学习交流&#xff0c;其他均与本人以及泷羽sec团队无关&a…

linux 获取公网流量 tcpdump + python + C++

前言 需求为&#xff0c;统计linux上得上下行公网流量&#xff0c;常规得命令如iftop 、sar、ifstat、nload等只能获取流量得大小&#xff0c;不能区分公私网&#xff0c;所以需要通过抓取网络包并排除私网段才能拿到公网流量。下面提供了一些有效得解决思路&#xff0c;提供了…

React 路由与组件通信:如何实现路由参数、查询参数、state和上下文的使用

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

爬虫第四篇:Xpath 路径表达式全解析:从网页基础到爬取百度贴吧图片实战

简介&#xff1a;本文围绕 Xpath 路径表达式展开讲解&#xff0c;先是介绍了网页相关基础如 html、css、vue 以及前后端分离的概念与示例&#xff0c;包括各部分的结构、作用及简单代码展示&#xff0c;随后详细阐述了 xml 的节点关系、选取节点、谓语等理论知识&#xff0c;最…