2_CSS3 背景 --[CSS3 进阶之路]
CSS3 中的背景属性提供了许多强大的功能来增强网页设计,包括但不限于多背景图像、渐变、背景大小控制等。以下是一些关键的 CSS3 背景属性及其用法示例。
1. 多重背景图像
CSS3 允许你为一个元素设置多个背景图像。这些图像按照它们在 background-image
属性中定义的顺序堆叠,第一个定义的图像位于最顶层。
.multiple-backgrounds {width: 300px;height: 200px;background-image: url('logo.png'), url('pattern.png');background-position: center, repeat;background-repeat: no-repeat, repeat;
}
在这个例子中,logo.png
图像将被放置在容器的中心,并且不会重复,而 pattern.png
图像将在整个容器内重复显示。
这里有一个使用多重背景图像的简单 CSS3 示例。这个例子将展示如何在一个元素上层叠两个背景图像,并控制它们的位置和重复方式。
HTML:
<div class="multi-bg"></div>
CSS:
.multi-bg {width: 500px;height: 300px;background-image: url('https://example.com/path-to-first-image.png'), url('https://example.com/path-to-second-image.png');background-position: center, top right;background-repeat: no-repeat, repeat-y;background-size: auto, 100px 100px; /* 第一个图像是自动大小,第二个是固定大小 */
}
在这个例子中:
background-image
属性被用来指定两个不同的图片路径。第一个是主要背景图像,它位于最顶层;第二个是次要背景图像,位于底层。background-position
设置了每个背景图像的位置。第一个图像居中显示 (center
),而第二个图像位于容器的右上角 (top right
)。background-repeat
控制了每个背景图像是否以及如何重复。第一个图像不重复 (no-repeat
),而第二个图像只在垂直方向上重复 (repeat-y
)。background-size
定义了每个背景图像的尺寸。第一个图像保持其原始大小 (auto
),而第二个图像被设定为固定的宽度和高度 (100px x 100px)。
请注意,为了使此示例正常工作,你需要将 'https://example.com/path-to-first-image.png'
和 'https://example.com/path-to-second-image.png'
替换为实际存在的图像URL或相对路径。此外,根据你的设计需求,你可以调整宽度、高度以及其他属性的值。
2. 渐变背景
CSS3 引入了线性渐变 (linear-gradient
) 和径向渐变 (radial-gradient
)。
线性渐变
.linear-gradient-bg {width: 300px;height: 200px;background: linear-gradient(to right, #ff7e5f, #feb47b);
}
这段代码创建了一个从左到右的颜色渐变,起始颜色是 #ff7e5f
(一种粉橙色),结束颜色是 #feb47b
(一种浅橙色)。
线性渐变是 CSS3 中一种非常流行的背景效果,它可以创建从一个颜色平滑过渡到另一个颜色的效果。下面是一个使用线性渐变作为背景的示例,展示了如何创建一个从左上角到右下角的颜色渐变。
示例: 使用线性渐变作为背景
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义带有线性渐变背景的盒子 */
.gradient-box {width: 400px;height: 200px;margin: 50px auto; /* 自动水平居中 */padding: 20px;background: linear-gradient(to bottom right, #ff7e5f, #feb47b); /* 线性渐变 */color: white;text-align: center;line-height: 160px; /* 垂直居中文本 */font-size: 24px;font-family: Arial, sans-serif;
}
</style>
</head>
<body><div class="gradient-box">线性渐变背景
</div></body>
</html>
在这个例子中:
.gradient-box
类定义了一个 div 元素,并为其设置了宽度、高度、内边距 (padding
) 和外边距 (margin
)。background
属性使用了linear-gradient()
函数来创建一个线性渐变背景:to bottom right
指定了渐变的方向,即从左上角到右下角。#ff7e5f
是起始颜色(一种粉橙色)。#feb47b
是结束颜色(一种浅橙色)。
- 文本样式被调整以确保在渐变背景下清晰可见,包括字体大小、颜色和对齐方式。
更多线性渐变选项
你可以进一步自定义线性渐变,例如添加更多颜色停止点或改变渐变角度。以下是几个额外的例子:
-
多个颜色停止点:
background: linear-gradient(to right, #ff7e5f, #feb47b, #81ecec);
这个例子添加了一个额外的颜色停止点
#81ecec
(浅蓝色),使渐变经过三种颜色。 -
指定角度:
background: linear-gradient(135deg, #ff7e5f, #feb47b);
使用角度值(如
135deg
)可以更精确地控制渐变的方向,而不是依赖于关键字方向(如to bottom right
)。 -
透明度:
background: linear-gradient(to right, rgba(255, 126, 95, 0.5), rgba(254, 180, 123, 0.5));
使用
rgba()
可以为颜色添加透明度,从而实现半透明的渐变效果。
这些额外的选项允许你创建更加复杂和精美的视觉效果。通过实验不同的参数组合,你可以找到最适合你设计需求的渐变风格。
径向渐变
.radial-gradient-bg {width: 300px;height: 200px;background: radial-gradient(circle, #ff7e5f, #feb47b);
}
这里创建的是一个圆形的径向渐变,颜色从中心向外逐渐变化。
径向渐变是 CSS3 中创建从中心向外扩展的颜色过渡效果的一种方式。下面是一个使用径向渐变作为背景的示例,展示了如何创建一个从中心向外逐渐变化颜色的效果。
示例: 使用径向渐变作为背景
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义带有径向渐变背景的盒子 */
.radial-gradient-box {width: 400px;height: 400px;margin: 50px auto; /* 自动水平居中 */padding: 20px;background: radial-gradient(circle, #ff7e5f, #feb47b); /* 径向渐变 */color: white;text-align: center;line-height: 360px; /* 垂直居中文本 */font-size: 24px;font-family: Arial, sans-serif;border-radius: 10px; /* 圆角边框以增强视觉效果 */
}
</style>
</head>
<body><div class="radial-gradient-box">径向渐变背景
</div></body>
</html>
在这个例子中:
.radial-gradient-box
类定义了一个 div 元素,并为其设置了宽度、高度、内边距 (padding
) 和外边距 (margin
)。background
属性使用了radial-gradient()
函数来创建一个径向渐变背景:circle
指定了渐变形状为圆形(默认情况下)。你也可以使用ellipse
来指定椭圆形状。- 渐变从中心开始,颜色从
#ff7e5f
(一种粉橙色)平滑过渡到#feb47b
(一种浅橙色)。
- 文本样式被调整以确保在渐变背景下清晰可见,包括字体大小、颜色和对齐方式。
border-radius
被用来给盒子添加圆角,以增强整体的视觉效果。
更多径向渐变选项
你可以进一步自定义径向渐变,例如改变渐变的形状、尺寸或添加更多颜色停止点。以下是几个额外的例子:
-
指定渐变的形状和尺寸:
background: radial-gradient(ellipse farthest-side, #ff7e5f, #feb47b);
这里我们指定了椭圆形状,并且使用
farthest-side
关键字来控制渐变的尺寸,使得渐变到达最远的边。 -
多个颜色停止点:
background: radial-gradient(circle, #ff7e5f, #feb47b, #81ecec);
这个例子添加了一个额外的颜色停止点
#81ecec
(浅蓝色),使渐变经过三种颜色。 -
指定渐变中心位置:
background: radial-gradient(at top left, #ff7e5f, #feb47b);
使用
at top left
可以改变渐变的中心点位置,使其不位于元素的几何中心。 -
透明度:
background: radial-gradient(circle, rgba(255, 126, 95, 0.5), rgba(254, 180, 123, 0.5));
使用
rgba()
可以为颜色添加透明度,从而实现半透明的渐变效果。
这些额外的选项允许你创建更加复杂和精美的视觉效果。通过实验不同的参数组合,你可以找到最适合你设计需求的渐变风格。
3. 控制背景大小 (background-size
)
你可以使用 background-size
属性来精确地控制背景图像的尺寸。常见的值包括 contain
, cover
, 和具体的宽度和高度值。
.background-size-control {width: 300px;height: 200px;background-image: url('image.jpg');background-size: cover; /* 图像将会覆盖整个元素 */background-position: center;background-repeat: no-repeat;
}
cover
值确保图像完全覆盖背景区域,同时保持其宽高比例。如果图像比容器大,则会裁剪;如果小,则会拉伸。
在 CSS3 中,background-size
属性允许你精确地控制背景图像的尺寸。这使得你可以确保背景图像按照预期的方式填充或适应元素的大小。下面是一个简单的示例,展示了如何使用 background-size
来控制背景图像的大小。
示例: 使用 background-size
控制背景图像大小
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义带有不同背景大小控制的盒子 */
.background-control {width: 400px;height: 200px;margin: 50px auto; /* 自动水平居中 */background-image: url('./path-to-image.png'); /* 替换为实际的图片路径 */background-repeat: no-repeat;background-position: center;color: white;text-align: center;line-height: 200px; /* 垂直居中文本 */font-size: 18px;font-family: Arial, sans-serif;
}/* 不同的 background-size 应用 */
.background-cover {background-size: cover; /* 图像将覆盖整个元素,保持比例 */
}.background-contain {background-size: contain; /* 图像将在不裁剪的情况下适应容器 */
}.background-fixed-size {background-size: 100px 100px; /* 固定宽度和高度 */
}
</style>
</head>
<body><h2>background-size: cover</h2>
<div class="background-control background-cover">背景图像将完全覆盖这个区域。
</div><h2>background-size: contain</h2>
<div class="background-control background-contain">背景图像将完整显示,并适应这个区域。
</div><h2>background-size: 100px 100px</h2>
<div class="background-control background-fixed-size">背景图像将被设置为固定的宽度和高度。
</div></body>
</html>
在这个例子中:
.background-control
类定义了一个 div 元素的基本样式,包括宽度、高度、内边距 (padding
) 和外边距 (margin
),以确保它在页面中正确显示。background-image
属性指定了一个背景图像(请替换'./path-to-image.png'
为实际存在的图像URL)。background-repeat
设置为no-repeat
,以防止图像重复。background-position
设置为center
,使图像居中对齐。
background-size
的不同值:
-
cover
:- 这个值确保图像完全覆盖背景区域,同时保持其宽高比例。如果图像比容器大,则会裁剪;如果小,则会拉伸。
- 适用于希望图像填满整个容器且保持比例的情况。
-
contain
:- 这个值确保图像在不被裁剪的情况下完整地适应容器,同时保持其宽高比例。
- 适用于希望图像完整显示并且适应容器大小的情况。
-
固定宽度和高度 (如
100px 100px
):- 这个值直接指定了背景图像的具体宽度和高度,图像将被缩放以匹配这些尺寸。
- 适用于需要精确控制图像大小的情况。
通过调整 background-size
的值,你可以根据设计需求灵活地控制背景图像的显示方式。此外,还可以结合其他背景属性(如 background-position
, background-repeat
等)来实现更复杂的效果。
4. 背景位置 (background-position
) 和重复 (background-repeat
)
这两个属性用来指定背景图像的位置以及它是否应该重复。
.background-position-repeat {width: 300px;height: 200px;background-image: url('icon.png');background-position: top left;background-repeat: repeat-x; /* 沿 X 轴重复 */
}
在这个例子中,背景图只会沿水平方向重复,并且定位在容器的左上角。
在 CSS3 中,background-position
和 background-repeat
是两个重要的属性,用于控制背景图像的位置和重复方式。下面是一个综合使用这两个属性的示例,展示了如何通过它们来精确定义背景图像的显示效果。
示例: 使用 background-position
和 background-repeat
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义带有不同背景位置和重复方式的盒子 */
.background-example {width: 400px;height: 200px;margin: 50px auto; /* 自动水平居中 */border: 1px solid #ccc;text-align: center;line-height: 200px; /* 垂直居中文本 */font-size: 18px;font-family: Arial, sans-serif;
}/* 不同的 background-position 和 background-repeat 应用 */
.background-top-left {background-image: url('https://example.com/path-to-icon.png'); /* 替换为实际的图片路径 */background-position: top left; /* 图像位于左上角 */background-repeat: no-repeat; /* 图像不重复 */
}.background-center {background-image: url('https://example.com/path-to-icon.png');background-position: center; /* 图像居中 */background-repeat: no-repeat;
}.background-repeat-x {background-image: url('https://example.com/path-to-pattern.png'); /* 小图案 */background-position: top left;background-repeat: repeat-x; /* 沿 X 轴(水平)重复 */
}.background-repeat-y {background-image: url('https://example.com/path-to-pattern.png');background-position: top left;background-repeat: repeat-y; /* 沿 Y 轴(垂直)重复 */
}.background-repeat-all {background-image: url('https://example.com/path-to-pattern.png');background-position: top left;background-repeat: repeat; /* 在 X 和 Y 轴上都重复 */
}
</style>
</head>
<body><h2>background-position: top left, background-repeat: no-repeat</h2>
<div class="background-example background-top-left">图像位于左上角,且不重复。
</div><h2>background-position: center, background-repeat: no-repeat</h2>
<div class="background-example background-center">图像居中,并且不重复。
</div><h2>background-repeat: repeat-x</h2>
<div class="background-example background-repeat-x">图像沿 X 轴(水平)重复。
</div><h2>background-repeat: repeat-y</h2>
<div class="background-example background-repeat-y">图像沿 Y 轴(垂直)重复。
</div><h2>background-repeat: repeat</h2>
<div class="background-example background-repeat-all">图像在 X 和 Y 轴上都重复。
</div></body>
</html>
在这个例子中:
.background-example
类定义了所有 div 元素的基本样式,包括宽度、高度、边框 (border
)、文本对齐方式 (text-align
) 和字体设置。background-image
属性指定了背景图像(请替换'./border.png'
为实际存在的图像URL或相对路径)。background-position
设置了背景图像的位置:top left
:将图像放置在容器的左上角。center
:将图像居中对齐。
background-repeat
控制了背景图像是否以及如何重复:no-repeat
:图像不会重复。repeat-x
:图像仅沿 X 轴(水平方向)重复。repeat-y
:图像仅沿 Y 轴(垂直方向)重复。repeat
:图像在 X 和 Y 轴上都重复。
关键点
-
background-position
:- 可以接受关键字(如
top
,left
,center
,bottom
,right
),也可以接受具体的像素值或百分比来精确地定位背景图像。
- 可以接受关键字(如
-
background-repeat
:- 决定背景图像的重复行为。除了上述选项外,还可以使用
space
和round
来实现更复杂的重复模式,例如确保图像之间有均匀间距或者图像能够整齐排列。
- 决定背景图像的重复行为。除了上述选项外,还可以使用
通过调整 background-position
和 background-repeat
的值,你可以灵活地控制背景图像的显示方式,从而满足不同的设计需求。
5. 背景原点 (background-origin
) 和裁剪区域 (background-clip
)
background-origin
定义了背景图像相对于哪个填充盒绘制,默认是padding-box
。background-clip
决定了背景绘制的范围,默认也是border-box
,但可以设置为padding-box
或content-box
。
.background-origin-clip {width: 300px;height: 200px;padding: 20px;border: 10px solid black;background-image: url('image.jpg');background-origin: content-box;background-clip: content-box;
}
这会使得背景图像只绘制在内容框内,而不是延伸到边框或内边距区域。
background-origin
和 background-clip
是 CSS3 中用于更精确控制背景绘制位置和范围的属性。下面是一个综合使用这两个属性的示例,展示了它们如何影响背景图像和颜色的显示。
示例: 使用 background-origin
和 background-clip
<!DOCTYPE html>
<html>
<head>
<style>
/* 定义带有不同背景原点和裁剪区域的盒子 */
.background-box {width: 400px;height: 200px;margin: 50px auto; /* 自动水平居中 */padding: 20px;border: 10px solid #ccc;background-image: url('https://example.com/path-to-image.jpg'); /* 替换为实际的图片路径 */background-repeat: no-repeat;background-size: cover;text-align: center;line-height: 200px; /* 垂直居中文本 */font-size: 18px;font-family: Arial, sans-serif;
}/* 不同的 background-origin 应用 */
.background-padding-box {background-origin: padding-box; /* 默认值,背景覆盖内边距区 */
}.background-border-box {background-origin: border-box; /* 背景覆盖边框区 */
}.background-content-box {background-origin: content-box; /* 背景仅覆盖内容区 */
}/* 不同的 background-clip 应用 */
.background-clip-padding-box {background-clip: padding-box; /* 背景绘制到内边距区 */
}.background-clip-border-box {background-clip: border-box; /* 背景绘制到边框区 */
}.background-clip-content-box {background-clip: content-box; /* 背景仅绘制到内容区 */
}
</style>
</head>
<body><h2>background-origin: padding-box (默认)</h2>
<div class="background-box background-padding-box">背景覆盖内边距区。
</div><h2>background-origin: border-box</h2>
<div class="background-box background-border-box">背景覆盖边框区。
</div><h2>background-origin: content-box</h2>
<div class="background-box background-content-box">背景仅覆盖内容区。
</div><h2>background-clip: padding-box</h2>
<div class="background-box background-clip-padding-box">背景绘制到内边距区。
</div><h2>background-clip: border-box</h2>
<div class="background-box background-clip-border-box">背景绘制到边框区。
</div><h2>background-clip: content-box</h2>
<div class="background-box background-clip-content-box">背景仅绘制到内容区。
</div></body>
</html>
在这个例子中:
.background-box
类定义了所有 div 元素的基本样式,包括宽度、高度、内边距 (padding
)、边框 (border
) 和文本对齐方式 (text-align
)。background-image
属性指定了背景图像(请替换'https://example.com/path-to-image.jpg'
为实际存在的图像URL或相对路径)。background-repeat
设置为no-repeat
,以防止图像重复。background-size
设置为cover
,确保图像完全覆盖背景区域并保持比例。
关键点
-
background-origin
:- 控制背景图像相对于哪个填充盒绘制,默认是
padding-box
:padding-box
:背景覆盖内边距区(默认行为)。border-box
:背景覆盖边框区,包括边框。content-box
:背景仅覆盖内容区,不包括内边距或边框。
- 控制背景图像相对于哪个填充盒绘制,默认是
-
background-clip
:- 决定背景绘制的范围,默认也是
border-box
,但可以设置为:padding-box
:背景绘制到内边距区,不绘制到边框。border-box
:背景绘制到边框区(默认行为)。content-box
:背景仅绘制到内容区,不包括内边距或边框。
- 决定背景绘制的范围,默认也是
通过调整 background-origin
和 background-clip
的值,你可以更加精细地控制背景图像和颜色的绘制位置和范围,从而实现更复杂的设计效果。这在处理具有复杂结构和样式的页面元素时特别有用。
以上只是 CSS3 背景特性的部分示例。通过组合使用这些属性,你可以创造出丰富多样的视觉效果,从而极大地提升网页的设计质量。
相关文章:
2_CSS3 背景 --[CSS3 进阶之路]
CSS3 中的背景属性提供了许多强大的功能来增强网页设计,包括但不限于多背景图像、渐变、背景大小控制等。以下是一些关键的 CSS3 背景属性及其用法示例。 1. 多重背景图像 CSS3 允许你为一个元素设置多个背景图像。这些图像按照它们在 background-image 属性中定义…...
于交错的路径间:分支结构与逻辑判断的思维协奏
大家好啊,我是小象٩(๑ω๑)۶ 我的博客:Xiao Xiangζั͡ޓއއ 很高兴见到大家,希望能够和大家一起交流学习,共同进步。* 这一节内容很多,文章字数达到了史无前例的一万一,我们要来学习分支与循环结构中…...
升级 CentOS 7.x 系统内核到 4.4 版本
问题描述 在 CentOS 7.x 系统中,默认内核版本是 3.10.x,这个版本可能会带来一些与 Docker 和 Kubernetes 兼容性的问题,导致系统性能不稳定或功能异常。为了提高系统的稳定性和兼容性,建议升级到更高版本的内核,例如 …...
MySQL数据导出导入
一、数据导出 1.导出全库备份到本地的目录 mysqldump -u$USER -p$PASSWD -h127.0.0.1 -P3306 --routines--default-character-setutf8 --lock-all-tables --add-drop-database -A >db.all.sql 2.导出指定库到本地的目录(例如mysql库) mysqldump -u$USER -p$PASSWD -h127.…...
【机器学习:八、逻辑回归】
逻辑回归(Logistic Regression) 1. 逻辑回归的引出 在现实世界中,许多问题都涉及到分类任务。例如: 判断一封邮件是否为垃圾邮件;预测某人是否会患某种疾病;确定图片中是否包含某种特定物体。 这些问题…...
uniapp使用sm4加密
安装:npm install sm-crypto --save 1、在utils下新建crypto.js文件 // sm4 加密 export function encryption(params) {const SM4 require("sm-crypto").sm4const key 0123456789abcdeffedcba9876543212; // 提供的密钥const iv fedcba9876543210012…...
【STM32-学习笔记-1-】GPIO
文章目录 GPIOⅠ、GPIO函数Ⅱ、GPIO_InitTypeDef结构体参数①、GPIO_Mode②、GPIO_Pin③、GPIO_Speed GPIO Ⅰ、GPIO函数 // 将指定的GPIO端口寄存器重置为默认值 void GPIO_DeInit(GPIO_TypeDef* GPIOx);// 将GPIO的备用功能寄存器重置为默认值 void GPIO_AFIODeInit(void);…...
C#中的运算符和类--06
目录 一.运算符 1.赋值运算符 2.算数运算符 3.关系运算符 4.逻辑运算符 5.位运算符 6.三元运算符 7.空合并运算符 8.其他运算符 二.类 1.普通类 2.静态类 3.抽象类 4.密封类 5.部分类 6.泛型类 7.嵌套类 8.记录类 9.接口 一.运算符 1.赋值运算符 定义:赋值…...
【微服务】面试 2、服务雪崩
服务雪崩概念 主要内容:在微服务项目中,微服务间存在远程调用。若某一服务(如服务 d)出现故障,调用它的服务(如服务 a)会失败。若调用方持续向故障服务发起请求,由于服务连接数有限且…...
“深入浅出”系列之QT:(6)如何在一个项目中调用另一个项目
在Qt中,如果想在一个项目中调用另一个项目,这通常意味着想要在一个CMake构建的项目中集成或依赖另一个CMake构建的项目。 1.子模块或子目录方式: 如果另一个项目可以作为一个子模块或子目录包含在当前项目中,可以使用add_sub…...
计算机网络—地址与子网(IPv4)相关知识总结
前言 为了更加清楚的了解该相关知识,下面是发现的一些宝藏博主的博客。 彻底搞懂网络地址、广播地址、主机地址、网关、子网掩码、网络号、主机号 - lipga - 博客园 IP地址(分类)、子网掩码、网络号、主机号、子网号_网络号,主机号,子网号…...
计算机网络 (36)TCP可靠传输的实现
前言 TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP通过多种机制实现可靠传输,这些机制主要包括连接管理、序列号和确认应答机制、重传机制、流量控制、拥塞控制等。 一、连接管理 TCP使用三次握手࿰…...
SQL从入门到实战-2
高级语句 窗口函数 排序窗口函数 例题二十九 select yr,party,votes, rank() over (PARTITION BY yr ORDER BY votes desc) as pson from ge where constituency S14000021 order by party,yr 偏移分析函数 例题三十 select name,date_format(whn,%Y-%m-%d) data, confi…...
基于python的网页表格数据下载--转excel
基于 Python 的网页表格数据爬取与下载:以维基百科为例 目录 基于 Python 的网页表格数据爬取与下载:以维基百科为例1. 背景介绍2. 工具与环境3. 操作步骤1. 获取网页内容2. 定位表格元素3. 表格变身 Pandas DataFrame4. 检查数据,收工!5. 进阶玩法与优化6. 完整代码4. 结果…...
用户界面的UML建模13
􀂄 Concrete Presentation Model 包中所包含的是,在Environment 包中与表示层框架模式中的《apm》类相对应的那些类。 8 结论 本文使用了一个图书馆系统的案例,来论述了关于用户界面的建模。通过使用统一建模语言来对应用系统进行建模&…...
[Python学习日记-75] 计算机基础与网络
[Python学习日记-75] 计算机基础与网络 简介 计算机基础 什么是网络编程 计算机网络 简介 本篇主要介绍的计算机基础是浓缩的,这是因为我们主要学习的是 Python,而 Python 主要是为了开发应用程序的,并不会用它来开发操作系统和嵌入式程序…...
【机器学习:六、特征工程】
1. 特征工程背景意义 在机器学习中,特征工程是模型成功的关键之一。无论算法多么先进,其性能都很大程度上依赖于输入数据的质量。特征工程是指对原始数据进行处理,以创建更适合算法的特征的过程。这一过程在以下方面具有重要意义:…...
webpack打包要义
webpack基本 Webpack 是一个现代 JavaScript 应用程序的静态模块打包工具。它的工作原理可以概括为以下几个核心步骤: 1. 入口起点(Entry) Webpack 从配置文件中指定的入口文件(Entry Point)开始,分析应用…...
Mybatis——Mybatis开发经验总结
摘要 本文主要介绍了MyBatis框架的设计与通用性,阐述了其作为Java持久化框架的亮点,包括精良的架构设计、丰富的扩展点以及易用性和可靠性。同时,对比了常见持久层框架,分析了MyBatis在关系型数据库交互中的优势。此外࿰…...
013:深度学习之神经网络
本文为合集收录,欢迎查看合集/专栏链接进行全部合集的系统学习。 合集完整版请参考这里。 深度学习是机器学习中重要的一个学科分支,它的特点就在于需要构建多层且“深度”的神经网络。 人们在探索人工智能初期,就曾设想构建一个用数学方式…...
Java 模板变量替换——字符串替换器(思路Mybatis的GenericTokenParser)
Java 模板变量替换——字符串替换器(思路Mybatis的GenericTokenParser) 思路字符串替换器 思路 模板变量替换无非是寻找出字符串(模板)中的特殊标记,用对应的变量进行字符串替换。 提到变量替换,大家第一能…...
蓝桥杯备考:数据结构之栈 和 stack
目录 栈的概念以及栈的实现 STL 的stack 栈和stack的算法题 栈的模板题 栈的算法题之有效的括号 验证栈序列 后缀表达式 括号匹配 栈的概念以及栈的实现 栈是一种只允许在一端进行插入和删除的线性表 空栈:没有任何元素 入栈:插入元素消息 出…...
Lambda离线实时分治架构深度解析与实战
一、引言 在大数据技术日新月异的今天,Lambda架构作为一种经典的数据处理模型,在应对大规模数据应用方面展现出了强大的能力。它整合了离线批处理和实时流处理,为需要同时处理批量和实时数据的应用场景提供了成熟的解决方案。本文将对Lambda…...
Vue.js组件开发,AI时代的前端新玩法
AI可不只是写写小说、聊聊天,现在它的触角已经伸到了程序员的代码世界里。特别是前端开发,很多人都在尝试用ChatGPT或者类似的AI工具来写代码,甚至直接生成Vue.js组件。有些人感叹,"写代码的时代是不是要结束了?&…...
标定 3
标定场景与对应的方式 标定板标定主要应用场景: (1)无法获取到执行机构物理坐标值,比如相机固定,执行机构为传送带等 (2)相机存在畸变等非线性标定情况,需要进行畸变校正 (3)标定单像素精度 (4)获取两个相机之间的坐标系关系 标定板操作步骤: (1)确定好拍…...
电商项目-基于ElasticSearch实现商品搜索功能(三)
本系列文章主要介绍基于 Spring Data Elasticsearch 实现商品搜索的后端代码,介绍代码逻辑和代码实现。 主要实现功能:根据搜索关键字查询、条件筛选、规格过滤、价格区间搜索、搜索查询分页、搜索查询排序、高亮查询。 主要应用技术:canal,…...
【51单片机】03 蜂鸣器-播放音乐
蜂鸣器-播放音乐 一、原理介绍1.硬件电路 二、练习1.让蜂鸣器发声2.尝试演奏小星星 一、原理介绍 蜂鸣器分为有源蜂鸣器、无源蜂鸣器两种。 有源蜂鸣器:施加合适的电压之后就会发出特定频率的声音 无源蜂鸣器:需要提供特定频率的声音信号,才能…...
MySQL 架构
MySQL架构 MySQL8.0服务器是由连接池、服务管理⼯具和公共组件、NoSQL接⼝、SQL接⼝、解析器、优化 器、缓存、存储引擎、⽂件系统组成。MySQL还为各种编程语⾔提供了⼀套⽤于外部程序访问服务器的连接器。整体架构图如下所⽰: MySQL Connectors:为使⽤…...
XML 解析器:深入解析与高效应用
XML 解析器:深入解析与高效应用 引言 XML(可扩展标记语言)作为一种重要的数据交换格式,被广泛应用于各种系统和平台中。为了有效地处理和解析XML数据,XML解析器发挥着至关重要的作用。本文将深入探讨XML解析器的原理…...
LabVIEW设计 IIR 滤波器
这是一个设计 IIR 滤波器的 LabVIEW 程序框图,其功能主要是用于设计滤波器并计算其频率响应,但它并不直接对输入的波形进行实时滤波,而是提供一个滤波器的频率响应分析工具。 以下是框图中各部分的详细解释: 1. 主要模块功能说明 …...
基于改进粒子群优化的无人机最优能耗路径规划
目录 1. Introduction2. Preliminaries2.1. Particle Swarm Optimization Algorithm2.2. Deep Deterministic Policy Gradient2.3. Calculation of the Total Output Power of the Quadcopter Battery 3.OptimalEnergyConsumptionPathPlanningBasedonPSO-DDPG3.1.ProblemModell…...
AI刷题-数列推进计算任务、数组中的幸运数问题
目录 一、数列推进计算任务 问题描述 测试样例 解题思路: 问题理解 数据结构选择 算法步骤 优化思路 最终代码: 运行结果: 二、数组中的幸运数问题 问题描述 测试样例 解题思路: 问题理解 数据结构选择 算法步…...
微服务的配置共享
1.什么是微服务的配置共享 微服务架构中,配置共享是一个重要环节,它有助于提升服务间的协同效率和数据一致性。以下是对微服务配置共享的详细阐述: 1.1.配置共享的概念 配置共享是指在微服务架构中,将某些通用或全局的配置信息…...
【计算机网络】窥探计网全貌:说说计算机网络体系结构?
标签难度考察频率综合题⭐⭐⭐60% 这个问题在计算机网络知识体系中是一个比较重要的问题,只有完整地了解计算机网络的体系结构才能清晰地认识网络的运行原理。 在回答这个问题时,笔者认为有几个比较重要的点: 首先一定要分清楚前置条件&am…...
【MySQL】DATEDIFF()函数使用
DATEDIFF 函数用于计算两个日期之间的差值,以天为单位 DATEDIFF 函数返回一个整数,表示 date1 和 date2 之间的天数。如果 date1 在 date2 之前,结果为负数;如果在 date2 之后,结果为正数;如果相等…...
计算机网络学习笔记
第1课 绪论、传输介质 【知识点回顾】 两种导线可以减小电磁干扰: 双绞线(分为非屏蔽双绞线、屏蔽双绞线)(RJ-45用)同轴电缆(短距离使用)网络通信的基本单位:位(bit&…...
Spring Boot性能提升的核武器,速度提升500%!
虚拟线程是 Java 21 引入的一个新特性,用于简化并发编程。它与传统的操作系统线程相比,具有显著的优势: 轻量级:虚拟线程由 JVM 管理,而非操作系统,因此它们的内存占用和创建成本远低于传统线程。理论上&am…...
zig 安装,Hello World 示例
1. 安装 Zig 首先,你需要在你的计算机上安装 Zig 编译器。你可以从 Zig 官方网站 下载适合你操作系统的版本。 安装完成后,你可以在终端中运行以下命令来检查 Zig 是否安装成功: zig version如果一切正常,它会显示 Zig 的版本信…...
【数据库系统概论】第5章 数据库完整性【!触发器】
目录 5.1数据库完整性概述 5.2 实体完整性 5.3 参照完整性 5.4 用户定义的完整性 属性上的约束 1. 列值非空(NOT NULL) 2. 列值唯一(UNIQUE) 3. 检查列值是否满足条件(CHECK) 元组上的约束 5.5 完…...
Linux中通过frp实现内网穿透
1、准备工作 准备一台公网服务器(云服务器),推荐阿里云或者腾讯云都可以 需要下载好frp安装包Linux端的和Windows端的安装包 网址:Releases fatedier/frp (github.com)https://github.com/fatedier/frp/releases 2、下载frp_0…...
Vscode辅助编码AI神器continue插件
案例效果 1、安装或者更新vscode 有些版本的vscode不支持continue,最好更新到最新版,也可以直接官网下载 https://code.visualstudio.com/Download 2、安装continue插件 搜索continue,还未安装的,右下脚有个Install,点击安装即可 <...
上海亚商投顾:沪指探底回升微涨 机器人概念股午后爆发
上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 市场全天探底回升,沪指盘中跌超1.6%,创业板指一度跌逾3%,午后集体拉升翻红…...
LeetCode 3297.统计重新排列后包含另一个字符串的子字符串数目 I:滑动窗口
【LetMeFly】3297.统计重新排列后包含另一个字符串的子字符串数目 I:滑动窗口 力扣题目链接:https://leetcode.cn/problems/count-substrings-that-can-be-rearranged-to-contain-a-string-i/ 给你两个字符串 word1 和 word2 。 如果一个字符串 x 重新…...
ssm旅游攻略网站设计+jsp
系统包含:源码论文 所用技术:SpringBootVueSSMMybatisMysql 需要源码或者定制看文章最下面或看我的主页 目 录 目 录 III 1 绪论 1 1.1 研究背景 1 1.2 目的和意义 1 1.3 论文结构安排 2 2 相关技术 3 2.1 SSM框架介绍 3 2.2 B/S结构介绍 3 …...
前端学习-环境this对象以及回调函数(二十七)
目录 前言 目标 环境对象 作用 环境对象this是什么? 判断this指向的粗略规则是什么? 回调函数 目标 常见的使用场景 综合案例:Tab任务栏切换 总结 前言 男儿何不带吴钩,收取关山五十州 目标 能够分析判断函数运行在不…...
计算机网络-数据链路层(虚拟局域网VLAN)
2.6 虚拟局域 2.6.1 虚拟局域网概述 以太网交换机连接的各个网络同属于一个广播域,随着以太网的规模扩大,广播域也会相应的扩大,巨大的广播域会带来巨大的弊端。 广播风暴 难以治理 潜在的安全问题 TCP/IP协议下会进行广播的协议:…...
Python贪心
贪心 贪心:把整体问题分解成多个步骤,在每个步骤都选取当前步骤的最优方案,直至所有步骤结束;每个步骤不会影响后续步骤核心性质:每次采用局部最优,最终结果就是全局最优如果题目满足上述核心性质…...
CSS 盒模型
盒模型 CSS盒模型是网页布局的核心概念之一,它描述了网页元素的物理结构和元素内容与周围元素之间的关系。根据W3C规范,每个HTML元素都被视为一个矩形盒子,这个盒子由以下四个部分组成: 内容区(Content areaÿ…...
【linux】vi编辑文件及readonly文件修改读写权限方法
板端vi修改文件: 1、vi 文件路径 vi mnt/eol/config/oem_eol.xml2、按 i进入修改状态,此时可以修改配置文件 3、按 esc退出修改状态,并按"wq!保存 问题:readonly文件无法直接vi修改 方案: 1、mount -o remoun…...
Git使用笔记
Git 版本控制 一、Git 介绍二、Git 使用1. 安装及配置2. 使用方法3. Git 命令3. 历史版本回退4. 分支 (Branch) 三、远程仓库1. SSH公钥连接Gitee2. 推送到远程仓库 一、Git 介绍 常见版本控制软件:集中式(CVS、SVN),分布式&#…...