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 是结束颜色(一种浅橙色)。
  • 文本样式被调整以确保在渐变背景下清晰可见,包括字体大小、颜色和对齐方式。
更多线性渐变选项

你可以进一步自定义线性渐变,例如添加更多颜色停止点或改变渐变角度。以下是几个额外的例子:

  1. 多个颜色停止点:

    background: linear-gradient(to right, #ff7e5f, #feb47b, #81ecec);
    

    这个例子添加了一个额外的颜色停止点 #81ecec(浅蓝色),使渐变经过三种颜色。

  2. 指定角度:

    background: linear-gradient(135deg, #ff7e5f, #feb47b);
    

    使用角度值(如 135deg)可以更精确地控制渐变的方向,而不是依赖于关键字方向(如 to bottom right)。

  3. 透明度:

    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 被用来给盒子添加圆角,以增强整体的视觉效果。
更多径向渐变选项

你可以进一步自定义径向渐变,例如改变渐变的形状、尺寸或添加更多颜色停止点。以下是几个额外的例子:

  1. 指定渐变的形状和尺寸:

    background: radial-gradient(ellipse farthest-side, #ff7e5f, #feb47b);
    

    这里我们指定了椭圆形状,并且使用 farthest-side 关键字来控制渐变的尺寸,使得渐变到达最远的边。

  2. 多个颜色停止点:

    background: radial-gradient(circle, #ff7e5f, #feb47b, #81ecec);
    

    这个例子添加了一个额外的颜色停止点 #81ecec(浅蓝色),使渐变经过三种颜色。

  3. 指定渐变中心位置:

    background: radial-gradient(at top left, #ff7e5f, #feb47b);
    

    使用 at top left 可以改变渐变的中心点位置,使其不位于元素的几何中心。

  4. 透明度:

    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 的不同值:
  1. cover:

    • 这个值确保图像完全覆盖背景区域,同时保持其宽高比例。如果图像比容器大,则会裁剪;如果小,则会拉伸。
    • 适用于希望图像填满整个容器且保持比例的情况。
  2. contain:

    • 这个值确保图像在不被裁剪的情况下完整地适应容器,同时保持其宽高比例。
    • 适用于希望图像完整显示并且适应容器大小的情况。
  3. 固定宽度和高度 (如 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-positionbackground-repeat 是两个重要的属性,用于控制背景图像的位置和重复方式。下面是一个综合使用这两个属性的示例,展示了如何通过它们来精确定义背景图像的显示效果。

示例: 使用 background-positionbackground-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:

    • 决定背景图像的重复行为。除了上述选项外,还可以使用 spaceround 来实现更复杂的重复模式,例如确保图像之间有均匀间距或者图像能够整齐排列。

通过调整 background-positionbackground-repeat 的值,你可以灵活地控制背景图像的显示方式,从而满足不同的设计需求。

5. 背景原点 (background-origin) 和裁剪区域 (background-clip)

  • background-origin 定义了背景图像相对于哪个填充盒绘制,默认是 padding-box
  • background-clip 决定了背景绘制的范围,默认也是 border-box,但可以设置为 padding-boxcontent-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-originbackground-clip 是 CSS3 中用于更精确控制背景绘制位置和范围的属性。下面是一个综合使用这两个属性的示例,展示了它们如何影响背景图像和颜色的显示。

示例: 使用 background-originbackground-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-originbackground-clip 的值,你可以更加精细地控制背景图像和颜色的绘制位置和范围,从而实现更复杂的设计效果。这在处理具有复杂结构和样式的页面元素时特别有用。

以上只是 CSS3 背景特性的部分示例。通过组合使用这些属性,你可以创造出丰富多样的视觉效果,从而极大地提升网页的设计质量。

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

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

相关文章

蓝桥杯备考:数据结构之栈 和 stack

目录 栈的概念以及栈的实现 STL 的stack 栈和stack的算法题 栈的模板题 栈的算法题之有效的括号 验证栈序列 后缀表达式 括号匹配 栈的概念以及栈的实现 栈是一种只允许在一端进行插入和删除的线性表 空栈&#xff1a;没有任何元素 入栈&#xff1a;插入元素消息 出…

C++中的条件变量(condition_variable)详解:小白版

在编程中&#xff0c;我们经常需要处理多个任务&#xff0c;这些任务可能需要同时运行&#xff0c;也可能需要按照一定的顺序运行。这就涉及到了线程的概念。线程就像是一个小程序&#xff0c;它可以在程序中独立运行&#xff0c;而且可以和其他线程并行执行。 但是&#xff0…

【python】OpenCV—Local Translation Warps

文章目录 1、功能描述2、原理分析3、代码实现4、效果展示5、完整代码6、参考 1、功能描述 利用液化效果实现瘦脸美颜 交互式的液化效果原理来自 Gustafsson A. Interactive image warping[D]. , 1993. 2、原理分析 上面描述很清晰了&#xff0c;鼠标初始在 C&#xff0c;也即…

STM32标准库学习笔记(十)SPI

前言 学习永无止境&#xff01;本篇是嵌入式开发之片上外设SPI&#xff0c;了解基本硬件原理以及通信协议。 注&#xff1a;本文章为学习笔记&#xff0c;部分图片与文字来源于网络/江协科技课程/手册&#xff0c;如侵权请联系&#xff01;谢谢&#xff01; 一、SPI通信概述 1.…

从github上,下载的android项目,从0-1进行编译运行-踩坑精力,如何进行部署

因为国内的网络原因&#xff0c;一直在anroidstudio开发的问题上&#xff0c;是个每个开发者都会踩坑 一直以为是自己的原因&#xff0c;其实很多都是国内网络的原因&#xff0c;今天就从一个开发者的视角 把从github上一个陌生的项目&#xff0c;如何通过本地就行运行的 首先…

计算机网络 (40)域名系统DNS

前言 计算机网络域名系统DNS&#xff08;Domain Name System&#xff09;是互联网的基础技术之一&#xff0c;它负责将人类可读的域名转换为计算机用来通信的数字IP地址。 一、基本概念 DNS的主要目的是将域名解析或翻译为IP地址&#xff0c;使得用户可以通过简单易记的域名来访…

使用Dify创建个问卷调查的工作流

为啥要使用Dify创建工作流呢&#xff1f;一个基于流程的智能体的实现&#xff0c;特别是基于业务的实现&#xff0c;使用Dify去实现时&#xff0c;通常都是一个对话工作流&#xff0c;当设计到相对复杂一些的流程时&#xff0c;如果将所有逻辑都放在对话工作流中去实现&#xf…

toRef 和 toRefs 详解及应用

在 Vue 3 中&#xff0c;toRef 和 toRefs 是两个用于创建响应式引用的工具&#xff0c;主要用于组合式 API&#xff08;Composition API&#xff09;的场景中 1. toRef 定义 toRef 将某个对象的某个属性包装成一个响应式引用。这样可以直接对该引用进行操作&#xff0c;而不需…

八 rk3568 android11 AP6256 蓝牙调试

一 经典蓝牙 经典蓝牙默认可以工作, 验证可以连接 蓝牙鼠标,键盘, 连接手机等等, 在 系统设置里打开蓝牙 ,扫描设备,配对连接即可。 注: 连接 ANDROID 手机的坑 1 手机连接之后空闲状态会断开 ,变成 配对的设备不是已连接,是正常,使用时又会自动 连接 2 手机传…

解读若依微服务架构图:架构总览、核心模块解析、消息与任务处理、数据存储与缓存、监控与日志

文章目录 1. 引言2. 架构总览3. 核心模块解析3.1 服务注册与配置中心Nacos&#xff1a;微服务的中枢 3.2 网关层ruoyi-gateway&#xff1a;服务的统一入口 3.3 核心业务服务3.4 认证服务ruoyi-auth&#xff1a;认证与授权的守护者 3.5 异构服务整合Sidecar&#xff1a;连接异构…

【MySQL】基础架构分析

考察频率难度40%⭐⭐⭐⭐ 这道题在面试时的出现频率其实并不高&#xff0c;最起码对于笔者来说是没有遇到过。那为什么还是选择把这个问题作为 MySQL 八股文系列的第一个呢&#xff1f;其实原因也挺简单的&#xff0c;还是老规矩&#xff0c;先通过一个问题把整个知识框架来一…

【已解决】【记录】2AI大模型web UI使用tips 本地

docker desktop使用 互动 如果需要发送网页链接&#xff0c;就在链接上加上【#】号 如果要上传文件就点击这个➕号 中文回复 命令它只用中文回复&#xff0c;在右上角打开【对话高级设置】 输入提示词&#xff08;提示词使用英文会更好&#xff09; Must reply to the us…

热烈祝贺“钛然科技”选择使用订单日记

感谢珠海钛然科技有限公司选择使用订单日记&#xff01; 珠海钛然科技有限公司&#xff0c;成立于2020年&#xff0c;位于广东省珠海市高新区&#xff0c;是一家以从事研发和生产功能型纳米高分子涂层为主的企业。 在业务不断壮大的过程中&#xff0c;想使用一种既能提升运营…

Linux-----进程通讯(消息队列)

目录 相关API 1.相关数据类型 mqd_t struct mq_attr struct timespec 2.相关系统调用接口 mq_open() mq_timedsend() && mq_send() mq_timedreceive() && mq_receive() mq_unlink() clock_gettime() 父子进程使用消息队列通讯 平行进程使用消息队列…

【微服务】面试题 5、分布式系统理论:CAP 与 BASE 详解

分布式系统理论&#xff1a;CAP 与 BASE 详解 一、CAP 定理 背景与定义&#xff1a;1998 年由加州大学科学家埃里克布鲁尔提出&#xff0c;分布式系统存在一致性&#xff08;Consistency&#xff09;、可用性&#xff08;Availability&#xff09;、分区容错性&#xff08;Part…

数据结构与算法之二叉树: LeetCode 572. 另一棵树的子树 (Ts版)

另一棵树的子树 https://leetcode.cn/problems/subtree-of-another-tree/description/ 描述 给你两棵二叉树 root 和 subRoot检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false二叉树 tree …

NineData云原生智能数据管理平台新功能发布|2024年12月版

本月发布 7 项更新&#xff0c;其中重点发布 2 项、功能优化 5 项。 重点发布 数据库 Devops - Oracle 非表对象支持可视化创建与管理 Oracle 非表对象&#xff0c;包括视图&#xff08;View&#xff09;、包&#xff08;Package&#xff09;、存储过程&#xff08;Procedur…

[Unity]MacOS下开发Unity

需要的插件 我使用的是vscode&#xff0c;经过长时间的使用我发现一个问题就是很多插件都是动态的在变化的&#xff0c;不是一成不变的&#xff0c;可能是重构&#xff0c;可能直接换了其他的工具。 所以这个插件也会是更新的状态。 2025年01月08日更新 .NET Install Tool (…

项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(五)

文章目录 一、学生管理模块功能实现1、添加学生功能实现1.1 页面设计1.2 前端功能实现1.3 后端功能实现1.4 效果展示2、学生管理功能实现2.1 页面设计2.2 前端功能实现2.3 后端功能实现2.3.1 后端查询接口实现2.3.2 后端编辑接口实现2.3.3 后端删除接口实现2.4 效果展示二、代码…

实现一个VSCode插件(从创建到发布)

实现一个自己的VSCode 插件 本文将以 yo 为例&#xff0c; 实现一个 VS Code 插件 从创建到发布。 文章目录 实现一个自己的VSCode 插件1. 初始化项目2. 项目结构3. 实现插件功能4. 测试和运行插件5. 发布6. 下载自己发布的插件 1. 初始化项目 首先&#xff0c;我们需要安装 …