【JAVA】CSS3:3D、过渡、动画、布局、伸缩盒

1 3D变换

1.1 3D空间与景深

/* 开启3D空间,父元素必须开启 */transform-style: preserve-3d;/* 设置景深(你与z=0平面的距离 */perspective:50px;

1.2 透视点位置

透视点位置:观察者位置

   /* 100px越大,越感觉自己边向右走并看,102px越大越感觉自己在蹲下过程中看 *//* 设置透视点位置 */perspective-origin: 100px 102px;

1.3 3D位移

在2D位移基础上,可以让元素沿z轴移动

/* 数值越大,感觉盒子变的越大,视距变小 *//* 可以写负值,但不可以写百分号 */transform: translateZ(150px);/* x,y,z轴三个值缺一不可 */transform: translateZ(0px,0px,150px);

1.4 3D旋转

  /* 从与zoy垂直的方向去看绕x轴顺时针旋转 */transform:rotateX('45deg');/* 从与zox垂直的方向去看绕y轴顺时针旋转 */transform:rotateY('45deg');

1.5 3D缩放

 /* 如果perspective:100px;,那么景深变为100/4=25px */transform: scaleZ(4);/* 经常用缩放调整宽和高 */transform: scale3d(1.5,1.5,1)

1.6 多重变换

/* rotateY会破坏坐标系放后面,看scaleZ(1)要旋转 */transform: translateZ(100px) scaleZ(1) rotateY('45deg');

1.7 背部

/* 默认x:center */transform: rotateY('45deg');/* 旋转到背部不可见 */backface-visibility: hidden;

2 过渡

<head><style>.box1{width: 200px;height: 200px;background-color: aqua;/* 设置所有属性都过渡 *//* transition-property:all; *//* 只要属性为数字都可以 *//* 设置所有属性过渡时间都1s *//* transition-duration: 1s; *//* 分别设置时间 */transition-property:height,width,background-color;transition-duration: 1s ,1s, 1s;}.box1:hover{height: 400px;width: 300px;background-color: blue;}</style>
</head>
<body><div class="box1"></div>
</body>

cubic-bezier(.17,.67,.83,.67) ✿ cubic-bezier.com

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 1000px;height: 1800px;background-color: aqua;border: 1px black solid;}.outer:hover .box{width: 1000px;}.box{height: 200px;width: 100px;transition-property:all;transition-duration: 5s;/* 过渡延迟 *//* transition-delay: 1s; */}
/*transition不要在hover加,不然鼠标离开效果瞬间消失*/.box1{background-color: rgb(161, 239, 6);/* 平滑变换(慢,快,慢) */transition-timing-function: ease;}.box2{background-color: blue;/* 线性变换,匀速 */transition-timing-function:linear;}.box3{background-color: coral;/* 先慢再快 */transition-timing-function: ease-in;}.box4{background-color: darkorchid;/* 先快后慢 */transition-timing-function: ease-out;}.box5{background-color: lightpink;/* 平滑变换(慢,快,慢) ,比ease开始更慢一点*/transition-timing-function: ease-in-out;}.box6{background-color: rgb(14, 207, 251);/* 瞬间到终点*/transition-timing-function: step-start;}.box7{background-color: rgb(238, 10, 204);/* 等transition-duration: 5s;5s过去,瞬间到终点*/transition-timing-function: step-end;}.box8{background-color: rgb(11, 234, 97);/* 分为20份,每一份瞬间到终点*/transition-timing-function:step(20);}.box9{background-color: rgb(202, 235, 17);/* 贝塞尔曲线*/transition-timing-function:cubic-bezier(.17,.67,.83,.67);}</style>
</head>
<body><div class="outer"><div class="box box1"></div><div class="box box2"></div><div class="box box3"></div><div class="box box4"></div><div class="box box5"></div><div class="box box6"></div><div class="box box7"></div><div class="box box8"></div><div class="box box9"></div></div></body>
</html> 

贝塞尔曲线: cubic-bezier(.17,.67,.83,.67) ✿ cubic-bezier.com

 复合属性

/* 1s表示duration */transition:1s linear all;/* 1s表示duration,2s表示delay */transition:1s 2s all linear;

 过渡小案例

效果:鼠标悬浮,图片旋转,字体出现,背景模糊

鼠标悬浮前:

 鼠标悬浮后:

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 517px;height: 730px;border: 1px black solid;position: relative;overflow: hidden;}.letter{width: 517px;height: 730px;background-color: black;color: white;position: absolute;top: 0;left: 0;text-align: center;line-height: 730px;font-size: 100px;opacity: 0;transition: 1s linear; }.outer:hover .letter{opacity: 0.5;}.outer:hover img{transform: scale(1.5) rotate(30deg);}img{transition: 1s all linear;}</style>
</head>
<body><div class="outer"><img src="./image/landscape.png"><div class="letter">嘉年华</div></div></body>
</html> 

 3 动画

帧:一个视频包含多个画面,每一个画面叫一个帧

关键帧:告诉编程器几个关键帧,其他帧编程器会补全

3.1 基本使用

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 1000px;height: 400px;border: 1px black solid;}/* 定义一个动画(几组关键帧) */@keyframes goright1{from{}to{transform: translate(800px);background-color: rgb(9, 245, 80);}}@keyframes goright2{0%{}/* 走到50%的路程 */50%{background-color: dodgerblue;}100%{transform: translate(800px) rotate(360deg);border-radius: 50%;background-color: rgb(237, 245, 9);}}.inner1,.inner2{height: 200px;width: 200px;animation-duration: 3s; animation-delay: 1s;}.inner1{background-color: rgb(152, 244, 14);/* 应用动画元素 */animation-name: goright1;}.inner2{background-color: rgb(14, 41, 244);/* 应用动画元素 */animation-name: goright2;}</style>
</head>
<body><div class="outer"><div class="inner1"></div><div class="inner2"></div></div></body>
</html> 

效果部分演示:

QQ录屏11111

        /* 与过渡变换属性值相同,比如ease,ease-in-out */animation-timing-function: linear;/* 动画播放次数 */animation-iteration-count:3;/* alternate 右->左->右;alternate-reverse: 左->右->左  */animation-direction: alternate;/* 不发生动画停在哪里 *//* forwards停在终点,backwards停在原点 */animation-fill-mode: forwards;/* 动画播放状态 *//* 停止播放,悬浮时动画暂停最好不要用复合属性写,单独写 */animation-play-state:paused;

3.2 复合属性

一个数字是duration,两个数字是 duration, delay
animation: name duration timing-function delay iteration-count direction fill-mode;

3.3 动画案例

3.3.1 图片

3.3.2 代码

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 130px;height: 130px;background-image: url('./image/bike.png');margin: 0 auto;margin-top: 150px;/* steps(31)必须是31,而不是其他数值,相当于到第二个图片是一个step,走一步 */animation: bike 0.5s steps(31) infinite;}@keyframes bike{from{}to{/* 图片往上动 *//* 4030是最后一个图片上边框的位置 */background-position: 0px -4030px;}}   </style>
</head>
<body><div class="outer"></div>  
</body>
</html> 

 3.3.3 效果

不断骑自行车:

 4 多列布局

4.1 案例一

效果:

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 1000px;margin: 0 auto;margin-top: 150px;/* 指定列数 column-count:5; *//* 指定每一列宽度,自动计算列数column-width: 200px; *//* 指定列宽和列数columns:6 200px; */column-count:5;/* 调整列间距column-gap: 150px; */column-rule-color: red;column-rule-style: dotted;column-rule-width: 2px;/* 边框复合属性 */column-rule:red dotted 2px;}h1{/* 横跨全部列 */column-span: all;}img{/* 所在列的宽度 */width: 100%;}</style>
</head>
<body><div class="outer"><h1>路上只我一个人,背着手踱着</h1><p>这一片天地好像是我的;我也像超出了平常旳自己,到了另一世界里。我爱热闹,也爱冷静;爱群居,也爱独处。像今晚上,一个人在这苍茫旳月下,什么都可以想,什么都可以不想,便觉是个自由的人。白天里一定要做的事,一定要说的话,现在都可不理。这是独处的妙处,我且受用这无边的荷香月色好了。</p><p>曲曲折折的荷塘上面,弥望旳是田田的叶子。叶子出水很高,像亭亭旳舞女旳裙。层层的叶子中间,零星地点缀着些白花,有袅娜(niǎo,nuó)地开着旳,有羞涩地打着朵儿旳;正如一粒粒的明珠,又如碧天里的星星,又如刚出浴的美人。微风过处,送来缕缕清香,仿佛远处高楼上渺茫的歌声似的。这时候叶子与花也有一丝的颤动,像闪电般,霎时传过荷塘的那边去了。叶子本是肩并肩密密地挨着,这便宛然有了一道凝碧的波痕。叶子底下是脉脉(mò)的流水,遮住了,不能见一些颜色;而叶子却更见风致了。
</p>
<img src="./image/jianianhua.gif">
<p>月光如流水一般,静静地泻在这一片叶子和花上。薄薄的青雾浮起在荷塘里。叶子和花仿佛在牛乳中洗过一样;又像笼着轻纱的梦。虽然是满月,天上却有一层淡淡的云,所以不能朗照;但我以为这恰是到了好处——酣眠固不可少,小睡也别有风味的。月光是隔了树照过来的,高处丛生的灌木,落下参差的斑驳的黑影,峭楞楞如鬼一般;弯弯的杨柳的稀疏的倩影,却又像是画在荷叶上。塘中的月色并不均匀;但光与影有着和谐的旋律,如梵婀(ē)玲(英语violin小提琴的译音)上奏着的名曲。</p><p>荷塘的四面,远远近近,高高低低都是树,而杨柳最多。这些树将一片荷塘重重围住;只在小路一旁,漏着几段空隙,像是特为月光留下的。树色一例是阴阴的,乍看像一团烟雾;但杨柳的丰姿,便在烟雾里也辨得出。树梢上隐隐约约的是一带远山,只有些大意罢了。树缝里也漏着一两点路灯光,没精打采的,是渴睡人的眼。这时候最热闹的,要数树上的蝉声与水里的蛙声;但热闹是它们的,我什么也没有。</p>
</div>  
</body>
</html> 

4.2 案例二

效果:鼠标悬浮到图片需要阴影、过渡与变大

<!DOCTYPE html><html lang="en">
<head><style>.outer{width: 1000px;margin: 0 auto;column-rule:red dotted 2px;column-count:5;}img{width: 100%;/* 过渡 */transition: 0.2s linear;}img:hover{box-shadow: 0px 0px 20px black;/* 变换 */transform: scale(1.05);}</style>
</head>
<body><div class="outer"><img src="./image/img1.jpg" alt=""><img src="./image/img2.jpg" alt=""><img src="./image/img3.jpg" alt=""><img src="./image/img4.jpg" alt=""><img src="./image/img5.jpg" alt=""><img src="./image/img6.jpg" alt=""><img src="./image/img7.jpg" alt=""><img src="./image/img8.jpg" alt=""><img src="./image/img9.jpg" alt=""><img src="./image/img10.jpg" alt=""><img src="./image/img11.jpg" alt=""><img src="./image/img12.jpg" alt=""><img src="./image/img13.jpg" alt=""><img src="./image/img14.jpg" alt=""><img src="./image/jianianhua.gif" alt=""><img src="./image/img1.jpg" alt=""><img src="./image/img2.jpg" alt=""><img src="./image/img3.jpg" alt=""><img src="./image/img4.jpg" alt=""><img src="./image/img5.jpg" alt=""><img src="./image/img6.jpg" alt=""><img src="./image/img7.jpg" alt=""><img src="./image/img8.jpg" alt=""><img src="./image/img9.jpg" alt=""><img src="./image/img10.jpg" alt=""><img src="./image/img11.jpg" alt=""><img src="./image/img12.jpg" alt=""><img src="./image/img13.jpg" alt=""><img src="./image/img14.jpg" alt=""><img src="./image/jianianhua.gif" alt=""><img src="./image/img1.jpg" alt=""><img src="./image/img2.jpg" alt=""><img src="./image/img3.jpg" alt=""><img src="./image/img4.jpg" alt=""><img src="./image/img5.jpg" alt=""><img src="./image/img6.jpg" alt=""><img src="./image/img7.jpg" alt=""><img src="./image/img8.jpg" alt=""><img src="./image/img9.jpg" alt=""><img src="./image/img10.jpg" alt=""><img src="./image/img11.jpg" alt=""><img src="./image/img12.jpg" alt=""><img src="./image/img13.jpg" alt=""><img src="./image/img14.jpg" alt=""><img src="./image/jianianhua.gif" alt=""></div>
</body>
</html> 

 5 伸缩盒模型

5.1 容器与项目

传统布局:display属性+float属性+position属性

flex布局在移动端应用广泛

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 1000px;height: 600px;background-color: gray;/* 将元素变为伸缩容器,开启flex布局,没有脱离文档流 */display: flex;
}
.inner{border: 1px solid black;background-color: aqua;width: 200px;height: 200px;/* 盒子最终宽和高 */box-sizing: border-box;
}</style>
</head>
<body><!-- display: flex;后,outer就是伸缩容器,子元素是伸缩项目 --><!-- 伸缩项目都是块状元素 --><div class="outer"><div class="inner inner1">inner1</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div><div class="outer"><div class="inner inner1">inner1</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div>
</body>
</html>

/* 改display: flex为inline-flex,将两个outer改为伸缩容器和行内块,两个outer容器中有回车,所以相隔有空白 */display: inline-flex;

网页检查的computed可以表示计算完的值:

5.2 主轴方向

项目沿主轴排列,默认从左往右是主轴,默认从上到下是侧轴(交叉轴),主轴垂直于侧轴,不关心原点 

 在5.1代码中加入:

  /* 调整主轴方向,方向从下到上flex-direction: column-reverse; *//* 调整主轴方向,方向从右到左*/flex-direction: row-reverse;

5.3 主轴换行方式

/*如果容器下面有空,那么换行的容器默认会保证自己的上下边距相同*/
flex:wrap;

 5.4 flex-flow

  flex-direction: row-reverse;flex-wrap: wrap-reverse;/* 相当于上面两行,可以但不推荐 */flex-flow:  row-reverse wrap-reverse;

5.5 主轴对齐方式

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 500px;height: 300px;background-color: gray;display: flex;
}
.outer1{background-color: aqua;/* 调整主轴方向,方向从右到左*/flex-direction: row-reverse;
}
.outer2{background-color: rgb(227, 235, 11);/* 主轴对齐方式:起始位置justify-content: flex-start; *//* 主轴对齐方式:中间位置justify-content: flex-center; *//* 结束位置 */justify-content: flex-end;
}
.outer3{background-color: rgb(250, 11, 250);/* 项目均匀的分布在一行,项目与项目的距离是项目与边缘的距离的两倍 */justify-content: space-around;
}
.outer4{background-color: rgb(8, 243, 113);/* 项目均匀的分布在一行,项目与项目的距离相等,项目与边缘没有距离 */justify-content: space-between;
}
.outer5{background-color: rgb(243, 204, 8);/* 项目均匀的分布在一行,项目与项目的距离相等,项目与边缘没有距离 */justify-content: space-evenly;
}
.inner{border: 1px solid black;width: 100px;height: 100px;box-sizing: border-box;
}</style>
</head>
<body><div class="outer outer1"><div class="inner inner1">flex-direction: row-reverse;</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div><div class="outer outer2"><div class="inner inner1">  justify-content: flex-end;</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div><div class="outer outer3"><div class="inner inner1">   justify-content: space-around;</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div><div class="outer outer4"><div class="inner inner1">  justify-content: space-between;</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div><div class="outer outer5"><div class="inner inner1">    justify-content: space-evenly;</div><div class="inner inner2">inner2</div><div class="inner inner3">inner3</div></div>
</body>
</html>

5.6 侧轴对齐

5.6.1侧轴对齐一行

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 1000px;height: 600px;background-color: gray;display: flex;/* 侧轴对齐方式,侧轴起始位置对齐align-items: flex-start; *//* 侧轴对齐方式,侧轴结束位置对齐align-items: flex-end; *//* 侧轴对齐方式,侧轴中间位置对齐 */align-items: center;/* 侧轴对齐方式,侧轴基线位置对齐align-items: baseline; */
}
.outer1{background-color: gray;flex-direction: row;
}.inner{border: 1px solid black;width: 200px;height: 200px;box-sizing: border-box;background-color: aqua;
}
.inner2{height: 300px;font-size: 100px;
}
.inner3{height: 100px;
}</style>
</head>
<body><div class="outer outer1"><div class="inner inner1">1x</div><div class="inner inner2">2x</div><div class="inner inner3">3x</div></div></div>
</body>
</html>

  /* 默认值,拉伸,条件是所有项目都没有高度 */align-items: stretch;

5.6.2侧轴对齐多行

 基本代码:

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 1000px;height: 900px;background-color: gray;display: flex;flex-wrap: wrap;flex-direction: row;}
.outer1{background-color: gray;flex-direction: row;
}.inner{border: 1px solid black;width: 200px;
height: 200px;box-sizing: border-box;background-color: aqua;
}
.inner2{
height: 300px;font-size: 100px;
}
.inner3{
height: 100px;
}</style>
</head>
<body><div class="outer outer1"><div class="inner inner1">1</div><div class="inner inner2">2</div><div class="inner inner3">3</div><div class="inner ">3</div><div class="inner ">4</div><div class="inner ">5</div><div class="inner ">6</div><div class="inner ">7</div><div class="inner ">8</div><div class="inner ">9</div><div class="inner ">10</div><div class="inner ">11</div></div></div>
</body>
</html>

基本效果:

.outer{}加入:

/* 侧轴对齐方式,起始位置对齐 */
align-content: flex-start;

 

/* 侧轴对齐方式,结束位置对齐 */
align-content: flex-end;

 

 取消所有项目的高度:

/* 侧轴对齐方式,中间位置对齐
align-content: center; */
/* 侧轴对齐方式,项目与项目的距离是项目与边缘的距离的两倍
align-content: space-around; */
/* 侧轴对齐方式,项目与项目的距离相等,项目与边缘没有距离
align-content: space-between; */
/* 项目与项目的距离相等,项目与边缘没有距离
align-content: space-evenly; */
/* 拉伸,项目不能有高度,默认 */
align-content: stretch;

 5.6.3  垂直居中方法

效果:

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 400px;height: 400px;background-color: gray;display: flex;/* 方案一 */ /* 副轴对齐align-items: center;主轴对齐justify-content: center; */}
.inner{width: 100px;height: 100px;background-color: aqua;/* 方案二,条件有  display: flex; */margin: auto;
}</style>
</head>
<body>
<div class="outer"><div class="inner"></div>
</div>
</body>
</html>

5.7 基准长度

  /* 设置伸缩项目在主轴的基准长度,主轴是横向则宽失效,主轴是竖向则高失效,默认auto *//* 浏览器用flex-basis计算宽高 */flex-basis: 300px;

5.8 伸缩性

5.8.1 伸

基本代码:

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 1000px;height: 900px;background-color: gray;display: flex;/* 侧轴对齐方式 */align-items: flex-start; /* 主轴换行方式 */flex-wrap: wrap;/* 调整主轴方向 */flex-direction: row;
}
.inner{border: 1px solid black;width: 200px;height: 200px;box-sizing: border-box;background-color: aqua;
}
.inner1{/* 所有项目都是1,那么等分剩余空间,如果是1、2、3,那么按照1/6、2/6、3/6划分空间 */flex-grow: 1;
}
.inner2{width: 300px;flex-grow: 2;
}
.inner3{flex-grow: 3;
}</style>
</head>
<body><div class="outer"><div class="inner inner1">1</div><div class="inner inner2">2</div><div class="inner inner3">3</div></div></div>
</body>
</html>

5.8.2 缩

  /* 不能有flex-wrap: wrap;宽度在默认情况下不能排开 */flex-shrink: 1;

5.9 flex复合属性

5.10 排列与单独对齐

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>
.outer{width: 1000px;height: 900px;background-color: gray;display: flex;
}
.inner{border: 1px solid black;width: 200px;height: 200px;box-sizing: border-box;background-color: aqua;
}
.inner1{/* order定义项目的排列顺序,默认为0,数值越小,排列越靠前 */
order: 0;
}
.inner2{
order: -1;
/* 单独调整项目的对齐方式,只能调整侧轴方向 */
align-self: flex-end;}
.inner3{order: -2;
}</style>
</head>
<body><div class="outer"><div class="inner inner1">1</div><div class="inner inner2">2</div><div class="inner inner3">3</div></div></div>
</body>
</html>

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

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

相关文章

stega1

题目链接&#xff1a;ctf.show 下载附件打开是一张jpg照片 无密码型jphs隐写得到flag flag{3c87fb959e5910b40a04e0491bf230fb}

微信小程序开发系列(二十五)·wxml语法·条件渲染wx:if, wx:elif, wx:else 属性组以及hidden 属性的使用

目录 1. 使用 wx:if、wx:elif、wx:else 属性组 2. 使用 hidden 属性 条件渲染主要用来控制页面结构的展示和隐藏,在微信小程序中实现条件渲染有两种方式: 1. 使用 wx:if, wx:elif, wx:else 属性组 2. 使用 hidden 属性 wx:if 和 hidden 二者的区别&#xff1a; 1. wx…

操作系统笔记(进程)

注&#xff1a; 下面图片资源来源于 王道计算机考研 操作系统 1.进程概念 进程&#xff08;process&#xff09;&#xff1a;是动态的&#xff0c;是程序的一次执行过程&#xff08;同一程序多次执行&#xff0c;会产生多个进程&#xff09;程序&#xff1a;是静态的&…

基于电鳗觅食优化算法(Electric eel foraging optimization,EEFO)的无人机三维路径规划(提供MATLAB代码)

一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径&#xff0c;使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一&#xff0c;它可以通过算法和模型来确定无人机的航迹&#xff0c;以避开障碍物、优化飞行…

指针【理论知识速成】(5)

一.回调函数&#xff1a; 1.什么事回调函数&#xff1a;通过函数指针调用函数 2.应用例子&#xff1a; https://blog.csdn.net/hot_water_oh/article/details/136572650?spm1001.2014.3001.5501 &#xff08;此链接为提到转义表所在博客的链接&#xff09; 依然以转义表为例…

drone ci 是什么

Drone CI是一个开源的持续集成和持续部署&#xff08;CI/CD&#xff09;系统&#xff0c;它使用Docker容器技术自动化软件的构建、测试和部署过程。Drone的设计哲学是简单和易用&#xff0c;通过使用Docker容器&#xff0c;它可以很容易地创建隔离的环境来运行测试和部署任务&a…

详细讲解Xilinx DDR3 的MIG IP生成步骤及参数含义

前几篇文章讲解了SDRAM到DDR3各自的变化&#xff0c;本文讲解如何使用DDR3&#xff0c;在Altera的Cyclone IV开发板上一般会使用SDRAM作为存储数据的芯片&#xff0c;而Xilinx的S6和7000系列一般使用DDR3作为存储数据的芯片。 从SDRAM芯片内部结构分析其原理&#xff0c;从内部…

从空白镜像创建Docker hello world

文章目录 写在前面基础知识方法一&#xff1a;使用echo工具方法二&#xff0c;使用c语言程序方法三&#xff0c;使用汇编语言小结 写在前面 尝试搞了下docker&#xff0c;网上的教程大多是让下载一个ubuntu这种完整镜像&#xff0c;寥寥几篇从空白镜像开始创建的&#xff0c;也…

SpringBoot自定义banner,自定义logo

SpringBoot自定义banner&#xff0c;自定义logo 在线网站 http://www.network-science.de/ascii/?spma2c6h.12873639.article-detail.9.7acc2c9aSTnQdW https://www.bootschool.net/ascii?spma2c6h.12873639.article-detail.8.7acc2c9aSTnQdW https://patorjk.com/softwa…

官方安装配置要求服务器最低2核4G

官方安装配置要求服务器至少2核、4G。 如果服务器低于这个要求&#xff0c;就没有必要安装&#xff0c;因为用户体验超级差。 对于服务器CPU来说&#xff0c;建议2到4核就完全足够了&#xff0c;太多就浪费了&#xff0c;但是内存越大越好&#xff0c;最好是4G以上。 如果服务器…

贝叶斯优化的门控循环神经网络BO-GRU(时序预测)的Matlab实现

贝叶斯优化的门控循环神经网络&#xff08;BO-GRU&#xff09;是一种结合了贝叶斯优化&#xff08;Bayesian Optimization, BO&#xff09;和门控循环单元&#xff08;Gated Recurrent Unit, GRU&#xff09;的模型&#xff0c;旨在进行时序预测。这种模型特别适用于时间序列数…

VBA(学习笔记)

1. 数据类型 变量定义&#xff1a;Dim 变量名 As 数据类型 变量赋值&#xff1a;变量名 值 1.1 数值型 1.1.1 整数 (1) Byte&#xff1a;1字节&#xff08;0~255&#xff09; (2) Integer&#xff1a;2字节&#xff08;-32768~32767&#xff09; (3) Long&#xff1a;4…

【网络应用层协议】【MQTT】详解消息队列遥测传输协议MQTT(超详细)

目录 1. MQTT 协议简介 2. MQTT 的特点 3. MQTT 协议原理 4. MQTT协议中的订阅、主题、会话 1. MQTT 协议简介 MQTT&#xff08; Message Queuing Telemetry Transport&#xff0c;消息队列遥测传输协议 &#xff09;是一种消息列队传输协议&#xff0c;采用订阅、发布机制&…

arcgis栅格数据处理3——定义投影(同样适用于其他类型文件)

进行数据连接时可能出现未设置投影无法链接的情况&#xff0c;需要先定义投影 点击最右侧“目录”&#xff0c;弹出带有系统工具的面板&#xff0c;点击“data management tools”点击“投影”&#xff0c;“定义投影”

Redis的缓存穿透?缓存击穿?缓存雪崩?

缓存穿透 什么是缓存穿透&#xff1f; 假如我们有一个学生表一共有10条数据&#xff0c;对应的id为1-10。我们有一个请求是通过id去查询学生的信息。正常的流程是请求先到redis里面去找&#xff0c;如果命中就将查询到的结果反回&#xff0c;如果没有就去mysql数据库中找&…

chatgpt与人类有何不同?

ChatGPT和人类之间存在多个显著的差异。 首先&#xff0c;ChatGPT是一种基于人工智能技术的计算机程序&#xff0c;通过机器学习和自然语言处理等技术&#xff0c;从大量的数据中获取知识并生成语言输出。它主要依赖于算法和数据进行工作&#xff0c;能够迅速处理和检索信息&a…

OpenCV(六)——对于图片的算术运行、图片的叠加操作、多通道图像拆分为多个单通道图像

在OpenCV中&#xff0c;可以对于图片进行算法运算。我们知道&#xff0c;图像的本质其实就是矩阵&#xff0c;因此对于图像的算数运算本质上就是对于矩阵的算术运算。在OpenCV可以对图像进行算术运算的操作有加、减、乘、除等操作。 图像的加、减、乘、除操作 两张图像可以进…

微信小程序开发系列(二十六)·小程序运行机制(启动、前后台状态、挂起、销毁)和小程序更新机制

目录 1. 小程序运行机制 1.1 启动 1.2 前台和后台状态 1.3 挂起 1.4 销毁 2. 小程序更新机制 1. 小程序运行机制 1.1 启动 小程序启动可以分为两种情况&#xff0c;一种是冷启动&#xff0c;一种是热启动。 冷启动&#xff1a;如果用户首次打开&#xff0c;或小…

数据挖掘案例分析、经典案例、技术实现方案

1.数据挖掘案例分析 数据挖掘&#xff1a;是从大量数据中发现有用信息和模式的过程。 数据挖掘案例分析&#xff1a;是指通过对已有数据进行挖掘和分析&#xff0c;发现其中的模式和规律&#xff0c;并根据这些发现提出相应的解决方案和决策建议的过程。 以下是一些常见的数据…

03-快速上手RabbitMQ的5种消息模型

RabbitMQ RabbitMQ是基于Erlang语言开发的开源消息通信中间件,有几个常见概念 connections(连接): 将来publisher(消息的发送者)或者consumer(消息的接收者)都需要先与MQ建立连接 channel(通道): 建立连接后需要创建通道,生产者和消费者就是基于通道完成消息的发送和接收 ex…