HTML+CSS之过度,变形,动画(14个案例+代码+效果图)

news2024/10/6 3:41:18

目录

过渡 (Transitions)

transition-property:

案例:鼠标悬浮方逐渐放大

1.代码

2.效果

transition-duration:

案例:鼠标悬停逐渐慢慢放大

1.代码

2.效果

transition-timing-function:

案例:放大速度为ease-out

1.代码

2.效果

transition-delay:

案例:延迟一秒放大

1.代码

2.效果

变换 (Transforms)

平移 (translate):

案例:移动到指定位置

1.代码

2.效果

缩放 (scale):

案例:使用scale放大图片

1.代码

2.效果

倾斜 (skew):

案例:图片倾斜45

1.代码

2.效果

旋转 (rotate):

案例:图片旋转45

1.代码

2.效果

围绕X轴旋转 (rotateX()):

案例:图片围绕x轴旋转45

1.代码

2.效果

围绕Y轴旋转 (rotateY()):

案例:图片围绕Y轴旋转45

1.代码

2.效果

围绕Z轴旋转 (rotateZ()):

案例:图片围绕Z轴旋转45

1.代码

2.效果

围绕X轴平移 (translateX(x)):

案例:图片围绕X轴平移

1.代码

2.效果

围绕Y轴平移 (translateY(y)):

案例:图片围绕Y轴平移

1.代码

2.效果

关键帧动画 (@keyframes 和 Animations)

@keyframes 规则:

animation-name:

animation-duration:

animation-timing-function:

animation-delay:

animation-iteration-count:

animation-direction:

案例:制作一个闪烁放大的效果动画

1.代码

2.效果


过渡 (Transitions)

过渡是CSS中用来平滑地从一种样式变到另一种样式的动画效果。它们通常在用户交互(如鼠标悬停)时触发。

  1. transition-property

    • 指定哪些CSS属性应该具有过渡效果。
    • 值可以是具体的属性名(例如widthcolor)、多个属性用逗号分隔,或者使用all来表示所有属性。
    • 示例:transition-property: width, heigh

案例:鼠标悬浮方逐渐放大

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>鼠标悬浮方逐渐放大</title>

    <style>
        .myDivStyle{
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
        }
        .myDivStyle:hover{
            
            width: 400px;
            height: 400px;
            /**
             * 渐变 放大
             */
            transition-property: width,height;
        }
    </style>
</head>
<body>
    <div class="myDivStyle" ></div>
    
</body>
</html>

2.效果

原始效果

鼠标悬停状态

  1. transition-duration

    • 定义过渡完成所需的时间。
    • 可以设置为秒(s)或毫秒(ms)。
    • 示例:transition-duration: 0.5s;

案例:鼠标悬停逐渐慢慢放大

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>鼠标悬浮方逐渐放大</title>

    <style>
        .myDivStyle{
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
        }
        .myDivStyle:hover{
            
            width: 400px;
            height: 400px;
            /**
             * 渐变 放大
             */
            transition-property: width,height;
            transition-duration: 8s;
        }
    </style>
</head>
<body>
    <div class="myDivStyle" ></div>
    
</body>
</html>

2.效果

原始状态

逐渐放大状态

  1. transition-timing-function

    • 控制过渡的速度曲线。
    • 常见值包括ease(默认),linearease-inease-outease-in-out,以及自定义的贝塞尔曲线cubic-bezier(n,n,n,n)
    • 示例:transition-timing-function: ease-in-out;

案例:放大速度为ease-out

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>放大速度为ease-out</title>

    <style>
        .myDivStyle{
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
        }
        .myDivStyle:hover{
            
            width: 400px;
            height: 400px;
            /**
             * 渐变 放大
             */
            transition-property: width,height;
            /**
              * 持续时间
              */
            transition-duration: 8s;
            /**
            *线性动画
            */
            transition-timing-function: ease-out;
        }
    </style>
</head>
<body>
    <div class="myDivStyle" ></div>
    
</body>
</html>

2.效果

原始状态

放大状态

  1. transition-delay

    • 设置过渡开始前的延迟时间。
    • 可以是正数(延迟开始)或负数(提前开始)。
    • 示例:transition-delay: 0.2s;

案例:延迟一秒放大

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>放大速度为ease-out</title>

    <style>
        .myDivStyle{
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
        }
        .myDivStyle:hover{
            
            width: 400px;
            height: 400px;
            /**
             * 渐变 放大
             */
            transition-property: width,height;
            /**
              * 持续时间
              */
            transition-duration: 8s;
            /**
            *线性动画
            */
            transition-timing-function: ease-out;
            /**
            * 延迟1s
            */
            transition-delay: 1s;
           
        }
    </style>
</head>
<body>
    <div class="myDivStyle" ></div>
    
</body>
</html>

2.效果

原始状态

鼠标悬浮延迟1s后会慢慢放大 

变换 (Transforms)

变换允许你改变元素的形状、大小和位置。

  1. 平移 (translate)

    • transform: translate(x, y); 在X轴和Y轴上移动元素。
    • 示例:transform: translate(50px, 100px);

案例:移动到指定位置

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>平移到指定位置</title>
    <style>
        .myDivStyle{
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }
        .myDivStyle:hover{
            
            transform: translate(300px,300px);
            transition-property: transform;
            transition-duration: 8s;
            
        }
    </style>

</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

原始状态

平移状态

最终平移

  1. 缩放 (scale)

    • transform: scale(x, [y]); 放大或缩小元素。
    • 如果只提供一个参数,则X轴和Y轴将被相同地放大/缩小。
    • 示例:transform: scale(1.5, 0.8);

案例:使用scale放大图片

1.代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>使用scale放大图片</title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: scale(5);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

原始状态

5倍放大

  1. 倾斜 (skew)

    • transform: skew(x-angle, [y-angle]); 让元素沿X轴和/或Y轴倾斜。
    • 示例:transform: skew(20deg, 10deg);

案例:图片倾斜45

1.代码

2.效果

原始状态

倾斜

  1. 旋转 (rotate)

    • transform: rotate(a); 绕Z轴旋转元素a度。
    • 示例:transform: rotate(45deg);

案例:图片旋转45

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片旋转45</title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: rotate(45deg);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

原始状态

旋转状态

  1. 围绕X轴旋转 (rotateX())

    • transform: rotateX(angle); 绕X轴旋转。
    • 示例:transform: rotateX(30deg);

案例:图片围绕x轴旋转45

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片围绕x轴旋转45
    </title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: rotateX(45deg);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

鼠标悬浮后的状态

  1. 围绕Y轴旋转 (rotateY())

    • transform: rotateY(angle); 绕Y轴旋转。
    • 示例:transform: rotateY(30deg);

案例:图片围绕Y轴旋转45

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片围绕y轴旋转45
    </title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: rotateY(45deg);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

 围绕y轴后的结果

  1. 围绕Z轴旋转 (rotateZ())

    • transform: rotateZ(angle); 绕Z轴旋转,与rotate()相同。
    • 示例:transform: rotateZ(30deg);

案例:图片围绕Z轴旋转45

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片围绕z轴旋转45
    </title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: rotateZ(45deg);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

围绕z轴旋转45的结果

  1. 围绕X轴平移 (translateX(x))

    • transform: translateX(x); 仅沿X轴平移。
    • 示例:transform: translateX(50px);

案例:图片围绕X轴平移

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片围绕X轴平移45
    </title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: translateX(200px);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

平移之后的效果

  1. 围绕Y轴平移 (translateY(y))

    • transform: translateY(y); 仅沿Y轴平移。
    • 示例:transform: translateY(100px);

案例:图片围绕Y轴平移

1.代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图片围绕X轴平移200px
    </title>
    <style>
        .myDivStyle {
            background: url("aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
        }

        .myDivStyle:hover {
            transform: translateY(200px);
            transition-property: transform;
            transition-duration: 8s;
        }

        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
    </style>
</head>
<body>
    <div class="myDivStyle"></div>
</body>
</html>

2.效果

关键帧动画 (@keyframes 和 Animations)

关键帧动画允许你创建复杂的动画序列。

  1. @keyframes 规则

    • 定义动画的关键帧,即动画过程中特定点的样式规则。
  2. animation-name

    • 引用由@keyframes定义的动画名称。
    • 示例:animation-name: fadeIn;
  3. animation-duration

    • 设置动画完成一个周期所需的时间长度。
    • 示例:animation-duration: 2s;
  4. animation-timing-function

    • 类似于过渡中的transition-timing-function,定义了动画的速度曲线。
    • 示例:animation-timing-function: ease;
  5. animation-delay

    • 设置动画开始前的等待时间。
    • 示例:animation-delay: 1s;
  6. animation-iteration-count

    • 确定动画应该播放多少次。
    • 可以是一个具体的次数(如2),或者无限循环(infinite)。
    • 示例:animation-iteration-count: infinite;
  7. animation-direction

    • 控制动画是否反向运行。
    • 可能的值包括normal(默认,每次迭代从头到尾正常播放)、reverse(反向播放)、alternate(第一次正向,第二次反向,如此交替)及alternate-reverse(首次反向,随后交替)。
    • 示例:animation-direction: alternate;

案例:制作一个闪烁放大的效果动画

1.代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>制作一个闪烁放大的效果动画</title>
    <style>
        .myDivStyle {
            background: url("./aImg.png");
            width: 200px;
            height: 200px;
            background-size: cover;
            border: 2px solid rgb(18, 197, 197);
            display: flex;
            justify-content: center;
            align-items: center;

            /**
            *动画名字
            */
            animation: myDivAnimation;
            /**
            * 动画持续时间
            */
            animation-duration: 2s;
            /**
            * 动画播放次数(无限播放)
            */
            animation-iteration-count: infinite;
            /**
            * 动画播放方式 ease-in-out
            */
            animation-timing-function: ease-in-out;
            /**
            * 动画延迟时间
            */
            animation-delay: 0.1s;
        }

        /**
        * 动画
        */
        @keyframes myDivAnimation{
            0%{
                transform: scale(1);
                opacity: 1;

            }
            50%{
                transform: scale(2);
                opacity: 0.2;
            }
            100%{
                transform: scale(1);
                opacity: 1;
            }
        }
    </style>
</head>

<body style="display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;">


    <div class="myDivStyle"></div>

</body>

</html>

2.效果

这个效果是放大缩小在放大会闪烁一下

附录

        素材下载

 aMouse.png等2个文件官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【无人机设计与技术】基于EKF的四旋翼无人机姿态估计matlab仿真

摘要&#xff1a; 本文设计了一种基于扩展卡尔曼滤波&#xff08;EKF&#xff09;的四旋翼无人机姿态估计方法。利用EKF算法处理四旋翼无人机姿态的动态模型&#xff0c;通过该滤波算法实现对姿态的实时估计和校正。该方法通过对无人机的运动学和动力学模型的分析&#xff0c;…

新编英语语法教程

新编英语语法教程 1. 新编英语语法教程 (第 6 版) 学生用书1.1. 目录1.2. 电子课件 References A New English Grammar Coursebook 新编英语语法教程 (第 6 版) 学生用书新编英语语法教程 (第 6 版) 教师用书 1. 新编英语语法教程 (第 6 版) 学生用书 https://erp.sflep.cn/…

Python从入门到高手5.1节-Python简单数据类型

目录 5.1.1 理解数据类型 5.1.2 Python中的数据类型 5.1.3 Python简单数据类型 5.1.4 特殊的空类型 5.1.5 Python变量的类型 5.1.6 广州又开始变热 5.1.1 理解数据类型 数据类型是根据数据本身的性质和特征来对数据进行分类&#xff0c;例如奇数与偶数就是一种数据类型。…

软件测试:postman详解

一、Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的&#xff0c;用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具不仅可以调试简单的css、html、脚本等简单的网…

自动驾驶系列—全面解析自动驾驶线控制动技术:智能驾驶的关键执行器

&#x1f31f;&#x1f31f; 欢迎来到我的技术小筑&#xff0c;一个专为技术探索者打造的交流空间。在这里&#xff0c;我们不仅分享代码的智慧&#xff0c;还探讨技术的深度与广度。无论您是资深开发者还是技术新手&#xff0c;这里都有一片属于您的天空。让我们在知识的海洋中…

小阿轩yx-案例:jenkins部署Maven和NodeJS项目

小阿轩yx-案例&#xff1a;jenkins部署Maven和NodeJS项目 前言 在 Java 项目开发中&#xff0c;项目的编译、测试、打包等是比较繁琐的&#xff0c;属于重复劳动的工作&#xff0c;浪费人力和时间成本。以往开发项目时&#xff0c;程序员往往需要花较多的精力在引用 jar 包搭…

8月AI绘画方向APP用户量及人均时长排行榜

全球用户量Top10&#xff08;APP&#xff09; 排名 产品名 分类 8月MAU 上月对比 1 Remini 人工智能修图 29.14M -0.88% 2 FaceApp AI 人脸编辑器 26.46M 0.14% 3 Hypic Photo Editor & AI Art 17.37M 5.74% 4 AI Mirror AI Art Photo Editor 16.81…

【第三版 系统集成项目管理工程师】第16章 监理基础知识

持续更新。。。。。。。。。。。。。。。 【第三版】第十六章 监理基础知识 16.1 监理的意义和作用1.监理的地位和作用(非重点)-P5692.监理的重要性与迫切性-P5703.监理技术参考模型-P570 16.2 监理相关概念1.信息系统工程监理-P5722.信息系统工程监理单位-P5723.业主单位-P57…

LeNet学习

Lenet是一个 7 层的神经网络&#xff0c;包含 3 个卷积层&#xff0c;2 个池化层&#xff0c;1 个全连接层。其中所有卷积层的所有卷积核都为 5x5&#xff0c;步长 strid1&#xff0c;池化方法都为全局 pooling&#xff0c;激活函数为 Sigmoid&#xff0c;网络结构如下&#xf…

25重庆长安深蓝控制器开发面试经验 深蓝最常见面试问题总结

【面试经历】 秋招气氛组选手的第一场面试,9.17网申,9.24电话约面,9.26线上面试。问得很细,全长约1个小时 1. 自我介绍、项目介绍 2.项目细节,遇到了哪些困难;有没有PCB设计经验DC-DC芯片选型,电源噪声的原因、怎么消除、 3.画BUCK和BOOST拓扑图,讲原理 4.了解MCU的主…

ffmpeg面向对象——拉流协议匹配机制探索

目录 1.URLProtocol类2.协议匹配的基础接口3. URLContext类4. 综合调用流程图5.rtsp拉流协议匹配流程图及对象图5.1 rtsp拉流协议调用流程图5.2 rtsp拉流协议对象图 6.本地文件调用流程图及对象图6.1 本地文件调用流程图6.2 本地文件对象图 7.内存数据调用流程图及对象图7.1 内…

李宏毅深度学习-梯度下降和Batch Normalization批量归一化

Gradient Descent梯度下降 ▽ -> 梯度gradient -> vector向量 -> 下图中的红色箭头&#xff08;loss等高线的法线方向&#xff09; Tip1: Tuning your learning rates Adaptive Learning Rates自适应lr 通常lr会越来越小 Adaptive Learning Rates中每个参数都给它不…

基于依赖注入技术的.net core WebApi框架创建实例

依赖注入&#xff08;Dependency Injection, DI&#xff09;是一种软件设计模式&#xff0c;用于实现控制反转&#xff08;Inversion of Control, IoC&#xff09;。在ASP.NET Core中&#xff0c;依赖注入是内置的核心功能之一。它允许你将应用程序的组件解耦和配置&#xff0c…

【JAVA开源】基于Vue和SpringBoot的服装生产管理系统

本文项目编号 T 066 &#xff0c;文末自助获取源码 \color{red}{T066&#xff0c;文末自助获取源码} T066&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

【LVGL进阶日记】① 开源LVGL在MCU上的移植

关注+星标公众号,不错过精彩内容 作者 | 量子君 微信公众号 | 极客工作室 【LVGL进阶日记】专栏目录 第一章 开源LVGL在MCU上的移植 文章目录 前言一、LVGL介绍1.1 LVGL的主要特性如下:1.2 LVGL对MCU的要求如下:二、移植LittlevGL到MCU2.1 LVGL源码下载和文件组织2.2 LVGL配…

【AI人工智能】文心智能体,你的情诗小助理,哄女朋友必备, 低代码工作流易上手,干货满满,不容错过哦

&#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精通 &#x1f601; 2. 毕业设计专栏&#xff0c;毕业季咱们不慌忙&#xff0c;几百款毕业设计等你选。 ❤️ 3. Python爬虫专栏…

数字图像处理项目——基于Unet网络实现MRI图像的双肺区域分割(论文/代码)

完整的论文代码见文章末尾 以下为核心内容 摘要 在医学图像处理领域&#xff0c;肺部图像的分割是一个重要的研究方向&#xff0c;特别是针对肺部疾病的检测与诊断。传统的X射线和CT&#xff08;计算机断层扫描&#xff09;是常用的肺部成像技术&#xff0c;但MRI&#xff08…

I/O多路转接

目录 一、select 1.1、select概念 1.2、select 函数原型 1.3、理解 select 执行过程 1.4、select就绪条件 1.4.1、读就绪 1.4.2、写就绪 1.4.3、异常就绪&#xff08;了解&#xff09; 1.5、select 基本工作流程 1.6、select服务器 1.6.1、Sock.hpp 1.6.2、selectS…

python实战四:输入一个年份,判断是否是闰年

问题&#xff1a; 从键盘获取一个四位的整数年份&#xff0c;判断其是否是闰年。闰年的判断条件为︰能被4整除但不能被100整除&#xff0c;或者能被400整除。 需求方法&#xff1a; 使用 input() 函数从键盘获取输入。输入的年份是一个字符串。检查输入是否为四位数&#xf…

Elasticsearch学习笔记(四) Elasticsearch集群安全配置一

继续我们的实验。先谈一下我对Elasticsearch粗浅的一些认识&#xff0c;首先Elasticsearch是一个非常宏大的技术栈&#xff0c;发展到今天围绕着Elasticsearch已经产生了更多的组件、套件。因此在看官方文档或者别人的一些教程的时候经常会遇到ELK,elastic stack等。elastic st…