当前位置: 首页 > news >正文

深入浅出CSS复合选择器:掌控元素关系与层级选择

目录

前言

一、子代选择器(Descendant Selector)

1. 什么是子代选择器?

2. 基本语法

3. 示例

4. 注意事项

二、直接子元素选择器(Child Selector)

1. 什么是直接子元素选择器?

2. 基本语法

3. 示例

4. 注意事项

三、相邻兄弟选择器(Adjacent Sibling Selector)

1. 什么是相邻兄弟选择器?

2. 基本语法

3. 示例

4. 注意事项

四、通用兄弟选择器(General Sibling Selector)

1. 什么是通用兄弟选择器?

2. 基本语法

3. 示例

4. 注意事项

五、并集选择器(Union Selector)

1. 什么是并集选择器?

2. 基本语法

3. 示例

4. 注意事项

六、交集选择器(Intersection Selector)

1. 什么是交集选择器?

2. 基本语法

3. 示例

4. 注意事项

七、总结


前言

        在Web开发中,CSS选择器是用来为HTML元素应用样式的关键工具。常规的选择器如类选择器、ID选择器、标签选择器等虽然能处理一些基本的样式应用,但在复杂页面中,元素之间的关系和层级结构常常要求使用更加灵活的复合选择器。复合选择器可以让你更精确地指定哪些元素需要应用样式。

在本篇博客中,我们将深入探讨几种常用的复合选择器,如:子代选择器、兄弟选择器、并集选择器、交集选择器等。


一、子代选择器(Descendant Selector)

1. 什么是子代选择器?

子代选择器是用于选取某个元素内部的所有后代元素。后代可以是该元素的直接子元素,也可以是更深层次的子元素。子代选择器的语法非常简单:两个元素之间使用空格隔开。

2. 基本语法

父元素 子元素 {属性: 值;
}

3. 示例

<div class="container"><p>这是一段文本</p><span>这是一段被span包裹的文本</span>
</div>
.container p {color: red;
}

在这个例子中,.container p表示所有.container类内的p标签,包括直接子元素和更深层次的子元素,都会应用红色字体。

4. 注意事项

  • 子代选择器的优先级较低,因为它匹配的是所有后代元素,而不只限于直接子元素。
  • 使用子代选择器时要小心性能问题,尤其是在DOM结构较复杂时,子代选择器可能会导致浏览器需要遍历多个嵌套层次,影响渲染速度。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>后(子代)代选择器</title><style>ul li{color: red;}ol li{color: blue;}ol li a{color: aquamarine;}li.vi a{color: chocolate;}</style>
</head>
<body><ul><li>苹果</li><li><ul><li>红富士</li><li>红心</li></ul></li></ul><ol><li>华为</li><li><a href="">华为手机</a></li><li>小米</li><li class="vi"><a href="">小米手机</a></li></ol>
</body>
</html>

 


二、直接子元素选择器(Child Selector)

1. 什么是直接子元素选择器?

直接子元素选择器(>)用于选取某个元素的直接子元素。它比子代选择器更加严格,只匹配该元素的直接子元素,而不包括更深层次的后代。

2. 基本语法

父元素 > 子元素 {属性: 值;
}

3. 示例

<div class="container"><p>这是一个段落</p><div>这是一个div元素</div><div><p>这是一个嵌套的段落</p></div>
</div>
.container > p {color: blue;
}

在这个例子中,<p>标签会被选中并应用蓝色文字样式,而嵌套在<div>内的<p>标签则不会被选中。

4. 注意事项

  • 使用>时,你可以精确控制只应用于直接子元素,避免不必要的样式继承。
  • 在层级结构深的情况下,直接子元素选择器可以大大提高性能,因为它不会匹配所有后代元素,只选择直系子元素。
<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS 子代选择器示例</title><style>/* 使用子代选择器,选择id为parent的元素下的直接子元素p */#parent > p {color: blue;}/* 使用子代选择器,选择class为child的元素下的直接子元素span */.child > span {font-weight: bold;}div>p{color: red;}span>p{color: red;}</style>
</head>
<body><div id="parent"><p>这个段落的文字颜色会被设置为蓝色。</p><div><p>这个段落的文字颜色不会被改变,因为它不是#parent的直接子元素。</p></div></div><div class="child"><span>这个span的字体会被加粗。</span><p><span>这个span的字体不会被加粗,因为它不是.child的直接子元素。</span></p></div>
</body>
</html>

 


三、相邻兄弟选择器(Adjacent Sibling Selector)

1. 什么是相邻兄弟选择器?

相邻兄弟选择器(+)用于选取紧随指定元素后面的兄弟元素。这意味着它只会选择直接紧邻的元素,而不会选择其他的兄弟元素。

2. 基本语法

元素1 + 元素2 {属性: 值;
}

3. 示例

<h1>标题1</h1>
<p>这是段落1</p>
<h1>标题2</h1>
<p>这是段落2</p>
h1 + p {color: green;
}

在这个例子中,第二个<p>标签会应用绿色字体样式,因为它是紧接着第一个<h1>标签后的兄弟元素。

4. 注意事项

  • 相邻兄弟选择器只能作用于紧随其后的兄弟元素。如果中间有其他元素,选择器将无法匹配。
  • 它比其他选择器更具特定性,因为它只选择相邻的兄弟元素。

 


四、通用兄弟选择器(General Sibling Selector)

1. 什么是通用兄弟选择器?

通用兄弟选择器(~)用于选取所有紧随指定元素之后的兄弟元素,不限于直接紧邻的元素。

2. 基本语法

元素1 ~ 元素2 {属性: 值;
}

3. 示例

<h1>标题1</h1>
<p>段落1</p>
<div>DIV元素</div>
<p>段落2</p>
h1 ~ p {color: purple;
}

在这个例子中,h1 ~ p将匹配所有位于<h1>之后的<p>元素,并将它们的文本颜色设置为紫色。因此,第二个<p>元素会被选中,而**第一个<p>**元素不会,因为它位于h1之前。

4. 注意事项

  • 与相邻兄弟选择器不同,通用兄弟选择器可以选中所有位于目标元素之后的兄弟元素,而不仅仅是直接紧邻的元素。
  • 使用通用兄弟选择器时,浏览器的计算开销可能会略高,尤其是在较复杂的页面结构中。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>兄弟选择器</title><style>/* 选中div后面紧挨着的p--相邻*//* div + p{color: red;} *//* 选中div后面所有的p--通用 */div~p{color: blue;}</style>
</head>
<body><p>CSS</p><div>前端</div><p>HTML</p><div>后端</div><p>C++</p><p>Python</p>
</body>
</html>

 


五、并集选择器(Union Selector)

1. 什么是并集选择器?

并集选择器(,)用于组合多个选择器,表示同时匹配多个选择器,任何一个选择器匹配的元素都会应用相同的样式。

2. 基本语法

选择器1, 选择器2, 选择器3 {属性: 值;
}

3. 示例

<p>段落1</p>
<h1>标题1</h1>
<h2>标题2</h2>
p, h1, h2 {color: orange;
}

在这个例子中,<p><h1>、和<h2>都会被应用橙色字体样式。

4. 注意事项

  • 使用并集选择器时,你可以一次性选中多个元素,避免重复编写样式规则。
  • 但是需要注意的是,多个选择器之间的顺序不影响样式应用。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS 并集选择器示例</title><style>/* 使用并集选择器为多个元素设置相同的样式 */h1, p, span {color: blue;font-family: Arial, sans-serif;}h1{font-size: 40px;}</style>
</head>
<body><h1 >这是一个标题</h1><p>这是一个段落。</p><span>这是一个span元素。</span>
</body>
</html>

 


六、交集选择器(Intersection Selector)

1. 什么是交集选择器?

交集选择器( )表示多个选择器的交集,即选取那些同时满足所有选择器条件的元素。虽然CSS标准中没有“交集选择器”这个术语,但我们可以通过组合多个选择器来达到交集效果。

2. 基本语法

选择器1.选择器2 {属性: 值;
}

3. 示例

<div class="highlight active">这是一个高亮且激活的div</div>
<div class="highlight">这是一个仅高亮的div</div>
.highlight.active {background-color: yellow;
}

在这个例子中,只有同时具备.highlight.active类的<div>元素才会应用黄色背景。

4. 注意事项

  • 交集选择器非常有用,尤其是需要同时满足多个条件时。
  • 交集选择器的优先级相对较高,因为它会选择具体的元素匹配组合。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>交集选择器</title><style>p.tele{color: red;}.tele.rich{color: blue;}h2{color: aquamarine;}</style>
</head>
<body><h2 class="tele rich">张三</h2><p class="tele">张三的电话是:123456789</p><h2>李四</h2><p>李四的电话是:987654321</p><h2>王五</h2><p>王五的电话是:123456789</p>
</body>
</html>

 


七、总结

CSS复合选择器为我们提供了非常强大的样式控制能力,能够精确地选择元素并进行样式应用。通过合理使用子代选择器兄弟选择器并集选择器交集选择器等,可以让页面的样式变得更加灵活和高效。在使用这些选择器时,务必注意它们的优缺点与性能影响,尤其是在复杂页面中,要避免选择器过度嵌套或使用过多的复合选择器。

相关文章:

深入浅出CSS复合选择器:掌控元素关系与层级选择

目录 前言 一、子代选择器&#xff08;Descendant Selector&#xff09; 1. 什么是子代选择器&#xff1f; 2. 基本语法 3. 示例 4. 注意事项 二、直接子元素选择器&#xff08;Child Selector&#xff09; 1. 什么是直接子元素选择器&#xff1f; 2. 基本语法 3. 示例…...

LLM 推理中推理-时间计算技巧

25年2月来自香港科技大学广州分校的论文“Bag of Tricks for Inference-time Computation of LLM Reasoning”。 随着大语言模型 (LLM) 的进步&#xff0c;解决复杂的推理任务越来越受到关注。推理-时间计算方法&#xff08;例如 Best-of-N、波束搜索等&#xff09;特别有价值…...

【模板】图论 最短路 (Floyd+SPFA+Dijkstra)

FloydSPFADijkstra 温故而知新&#xff0c;这三种算法都是求最短路问题常用的算法&#xff08;特别是Dijkstra) 1.Floyd &#xff08;多源最短路&#xff09; 基于动态规划思想&#xff0c;时间复杂度为 O ( N 3 ) O(N^3) O(N3) 较高。 注意点&#xff1a; 初始化距离为INF…...

vite-vue-ts使用arco-design-vue定制主题的后动态变更主题思路

定制主题的后动态变更主题思路 安装依赖与主题定制动态变更主题过程尝试修改主题色&#xff08;结果失败&#xff09;尝试修改主题色&#xff08;结果成功&#xff0c;但是hover的主题色没有变&#xff0c;未覆盖10个梯度的色值&#xff09;根据主题色实现10个梯度颜色实现10个…...

递归爬取网页测试

我们正在做基于大模型的数据分析平台。 当前需要测试ezdata的递归爬取功能&#xff0c;爬取到第几层 测试网址 https://blog.csdn.net/m0_68177611/article/details/144936089...

【论文学习】RVS-FDSC:一种基于四方向条带卷积的视网膜血管分割方法以增强特征提取

写在前面&#xff1a;本博客仅作记录学习之用&#xff0c;部分图片来自网络&#xff0c;如需引用请注明出处&#xff0c;同时如有侵犯您的权益&#xff0c;请联系删除&#xff01; 文章目录 前言论文论文内容RSC模块MSPF2 模块RPDA模块 实验效果 总结互动致谢参考往期回顾 前言…...

交友项目-交友软件简介

一、 项目背景 在线社交是互联网时代的产物&#xff0c;已成为互联网用户的基础需求之一。移动互联网自2003年起快速发展&#xff0c;促使在线社交逐渐从PC端转移至移动端。移动社交最初以熟人社交为主&#xff0c;以维系熟人关系、共享资源信息的形式存在。随着人们交友需求的…...

新手向:SpringBoot后端查询到数据,前端404?(附联调时各传参方式注解总结-带你一文搞定联调参数)

前言&#xff1a; 在 Spring Boot 项目开发中&#xff0c;后端小伙伴可能经常遇到这样诡异的场景&#xff1a; 后台日志显示查询到了数据&#xff0c;但前端却一脸懵逼地告诉你 404 Not Found&#xff1f;接口明明写好了&#xff0c;Postman 直接访问却提示找不到&#xff1f…...

Elasticsearch7.6.2 安装过程

一. 安装JDK1.8 &#xff08;1&#xff09;创建安装目录 mkdir /usr/local/java/ &#xff08;2&#xff09;解压至安装目录 tar -zxvf jdk-8u251-linux-x64.tar.gz -C /usr/local/java/ &#xff08;3&#xff09;设置环境变量 vim /etc/profile 在末尾添加 export JA…...

汇能感知的光谱相机/模块产品有哪些?

CM020A 分辨率&#xff1a;1600H1200V 光谱范围&#xff1a;350~950nm 光谱分辨率&#xff1a;1nm 接口&#xff1a;USB2.0 帧率&#xff1a;16001200 (6帧) 输出格式&#xff1a;Raw 8bit FOV&#xff1a;D73.5H58.8V44.1 相机尺寸&#xff1a;505055mm VM02S10 分辨率…...

【机器学习】K折交叉验证(K-Fold Cross-Validation)

文章目录 K折交叉验证步骤详解一. 核心目标二. 具体步骤与操作三. 关键变体与场景适配3.1 分层K折交叉验证3.2 时间序列K折交叉验证3.3 留一法&#xff08;LOO&#xff09;3.4 重复K折交叉验证 四. 实践注意事项五. Python代码示例六. 总结 K折交叉验证步骤详解 一. 核心目标 …...

【核心算法篇十九】《 DeepSeek因果推断:双重差分模型如何破解政策评估的「时空难题」》

一、当AB实验不可行时,我们该相信什么?(因果推断困局解析) 假设某城市推出「夜间地铁免费」政策,市长想知道这个政策是否真的提升了夜间经济。这时候你会发现: 1️⃣ 无法克隆城市:不能同时存在一个「实施政策」和「不实施政策」的平行宇宙 2️⃣ 数据混杂严重:疫情反…...

使用vue3框架vue-next-admin导出列表数据

在 Vue3 中实现 Excel 导出功能可以通过以下步骤完成&#xff0c;这里使用 xlsx 库来实现前端 Excel 导出&#xff1a; 1. 安装依赖 npm install xlsx file-saver # 或 yarn add xlsx file-saver2. 实现代码示例 需要在当前页引入 import * as XLSX from "xlsx";注…...

机器学习(1)安装Pytorch

1.安装命令 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 2.安装过程Log&#xff1a; Looking in indexes: https://download.pytorch.org/whl/cu118 Co…...

讯方·智汇云校华为官方授权培训机构

1.官方授权 讯方智汇云校是华为领先级授权培训机构&#xff08;华为授权培训合作伙伴&#xff08;HALP&#xff09;体系&#xff0c;分为认证、优选、领先三个等级&#xff0c;领先级是HALP最高级&#xff09;&#xff0c;代表着华为对培训合作伙伴在专业能力、师资队伍、合作…...

彻底理解零拷贝技术,zero-copy

计算机处理的任务大体可以分为两类&#xff1a;CPU密集型与IO密集型。当前流行的互联网应用更多的属于IO密集型&#xff0c;传统的IO标准接口都是基于数据拷贝的&#xff0c;这篇文章我们主要关注该怎样从数据拷贝的角度来优化IO性能&#xff0c;让你的程序在IO性能方面赶超P8。…...

使用 MySQL 从 JSON 字符串提取数据

使用 MySQL 从 JSON 字符串提取数据 在现代数据库管理中&#xff0c;JSON 格式因其灵活性而广泛使用。然而&#xff0c;当数据存储在 JSON 中时&#xff0c;我们经常需要将其转换为更易于处理的格式。本篇文章将通过一个具体的 SQL 查询示例&#xff0c;展示如何从存储在 MySQ…...

矛盾(WEB)

##解题思路 打开靶场就是一段自相矛盾的代码&#xff0c;既要num是数字类型&#xff0c;又要判断为1 这种情况我们会想到弱类型的编程语言&#xff0c;插件查看过后&#xff0c;php就是弱类型的语言&#xff0c;此处并非是严格相等&#xff0c;只是 因此可以根据弱类型编程语言…...

优先队列(典型算法思想)—— OJ例题算法解析思路

目录 一、1046. 最后一块石头的重量 - 力扣&#xff08;LeetCode&#xff09; 算法代码&#xff1a; 代码思路 使用优先队列&#xff08;大根堆&#xff09; 将所有石头放入堆中 模拟碰撞过程 返回最后的重量 代码解析 时间复杂度 示例 输入 输出 二、703. 数据流…...

IGBT的损耗性分析

铝合金外壳设计器地址:嘉立创铝合金外壳/壳体/盒型-让您的产品更出彩 IGBT和MOS的损耗谁大: 电子元器件常见失效模式: 电子元器件的失效模式多种多样,以下是一些常见的失效模式及其原因: 开路: 原因:内部连接断开、焊点断裂、导线断裂等。 影响:电流无法通过,电路中断。…...

TypeScript跟js,es6这些的区别

TypeScript 一、TypeScript 是什么 想象 JavaScript 是一个自由奔放的艺术家&#xff0c;它在创作&#xff08;编写代码&#xff09;时不受太多约束&#xff0c;非常灵活&#xff0c;但有时也容易犯错且难以调试。而 TypeScript 就像是给这位艺术家配备了一套精确的工具和规范…...

单例模式代码示例

饿汉式&#xff1a;在类加载时就创建单例实例&#xff0c;线程安全。代码如下&#xff1a; public class Singleton {// 私有静态实例private static final Singleton instance new Singleton();// 私有构造函数private Singleton() {}// 公共访问方法public static Singleto…...

掌握 ElasticSearch的 _source 过滤

掌握 ElasticSearch的 _source 过滤 1. 引言2. _source 元数据基础2.1 什么是 _source 字段&#xff1f;2.2 _source 的基本用法 3. 禁用 _source3.1 如何禁用 _source 字段3.2 禁用 _source 的利弊3.3 最佳实践建议 4. _source 数据源过滤4.1 为什么需要数据源过滤&#xff1f…...

车载音频配置(二)

目录 OEM 自定义的车载音频上下文 动态音频区配置 向前兼容性 Android 14 车载音频配置 在 Android 14 中,AAOS 引入了 OEM 插件服务,使你可以更主动地管理由车载音频服务监督的音频行为。 随着新的插件服务的引入,车载音频配置文件中添加了以下更改: • OEM 自定义的车…...

开目3DCAPP系列:三维制造成本分析与估算软件3DDFC

开目3DDFC 是一款基于 MBD 模型和工艺知识库的专业三维制造成本分析与估算软件&#xff0c;在不依赖详细工艺路线的情况下&#xff0c;根据零件几何信息和精度信息一键式完成零件成本的分析与估算&#xff0c;为面向成本的设计优化提供参考指引&#xff0c;也为企业对外产品报价…...

化学品安全数据表(MSDS)的全面解析与实用指南

SDS&#xff08;安全数据表&#xff09;&#xff0c;也称为MSDS&#xff08;材料安全数据表&#xff09;&#xff0c;是用于详细说明化学品的理化特性&#xff08;如pH值、闪点、易燃性、反应活性等&#xff09;及其对使用者健康&#xff08;如致癌、致畸等&#xff09;潜在危害…...

赛前启航 | Azure 应用开发实战指南:开启创意的无限可能

在 AI 时代&#xff0c;如何高效构建、优化和部署你的应用&#xff1f;如何充分利用微软 Azure 的强大能力&#xff0c;让开发更敏捷&#xff0c;性能更卓越&#xff1f;2 月 21 日 14:00-16:00&#xff0c;微软 AI 开发者挑战赛赛前指导第二场直播&#xff0c;带你全方位掌握 …...

Visual Studio Code的下载安装与汉化

1.下载安装 Visual Studio Code的下载安装十分简单&#xff0c;在本电脑的应用商店直接下载安装----注意这是社区版-----一般社区版就足够用了---另外注意更改安装地址 2.下载插件 重启后就是中文版本了...

home assistant ddns动态域名解析插件

home assistant ddns动态域名解析插件 使用方法 在HACS中搜索 ddns安装(hacs目前还没有合并我的提交&#xff0c;目前不可用)&#xff0c;或者 clone https://github.com/weiangongsi/ddns.git, 将 custom_components/ddns目录拷贝至 Home Assistant 配置目录的 custom_compon…...

金融交易算法单介绍

0.背景 股票交易时&#xff0c;常见的订单类型有基础订单和条件订单。 基础订单 市价单限价单碎股单等等 条件订单 止损市价单止损限价单触及市价单&#xff08;止盈&#xff09;触及限价单&#xff08;止盈&#xff09;跟踪止损市价单跟踪止损限价单等等 除了基础订单和…...

LabVIEW利用CANopen的Batch SDO写入

本示例展示了如何通过CANopen协议向设备写入Batch SDO&#xff08;批量服务数据对象&#xff09;。Batch SDO允许用户在一次操作中配置多个参数&#xff0c;适用于设备的批量配置和参数设置。此方法能够简化多个参数的写入过程&#xff0c;提高设备管理效率。 主要步骤&#xf…...

正式页面开发-登录注册页面

整体路由设计&#xff1a; 登录和注册的切换是切换组件或者是切换内容&#xff08;v-if和 v-else)&#xff0c;因为点击两个之间路径是没有变化的。也就是登录和注册共用同一个路由。登录是独立的一级路由。登录之后进到首页&#xff0c;有三个大模块&#xff1a;文章分类&…...

vLLM专题(二):安装-CPU

vLLM 是一个 Python 库,支持以下 CPU 变体。选择您的 CPU 类型以查看供应商特定的说明: Intel/AMD x86 vLLM 最初支持在 x86 CPU 平台上进行基本模型推理和服务,支持的数据类型包括 FP32、FP16 和 BF16。 注意 此设备没有预构建的 wheel 包或镜像,因此您必须从源代码构建 v…...

【CSS进阶】常见的页面自适应的方法

在前端开发中&#xff0c;自适应布局&#xff08;Responsive Design&#xff09;是一种让网页能够适应不同屏幕尺寸、设备和分辨率的技术。常见的自适应布局方法包括 流式布局、弹性布局&#xff08;Flexbox&#xff09;、栅格布局&#xff08;Grid&#xff09;、媒体查询&…...

Java编程语言:从基础到高级应用的全面探索

在当今的软件开发领域中&#xff0c;Java无疑是一种极为流行且强大的编程语言。自1995年由Sun Microsystems推出以来&#xff0c;Java凭借其跨平台性、面向对象特性和丰富的API库&#xff0c;迅速成为企业级应用开发的首选语言。本文将带您从Java的基础语法入手&#xff0c;逐步…...

计算机视觉:神经网络实战之手势识别(附代码)

第一章&#xff1a;计算机视觉中图像的基础认知 第二章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(一) 第三章&#xff1a;计算机视觉&#xff1a;卷积神经网络(CNN)基本概念(二) 第四章&#xff1a;搭建一个经典的LeNet5神经网络(附代码) 第五章&#xff1…...

linux 面试题

1. 文件与目录操作 ls 功能&#xff1a;列出目录内容 常用参数&#xff1a; -l&#xff1a;长格式显示&#xff08;权限、大小、时间等&#xff09;-a&#xff1a;显示隐藏文件&#xff08;以.开头的文件&#xff09;-h&#xff1a;以易读格式显示文件大小&#xff08;如KB/…...

利用websocket检测网络连接稳定性

浏览器中打开F12&#xff0c;控制台中输入以下内容 > 回车 > 等待结果 连接关闭 表示断网 let reconnectDelay 1000; // 初始重连间隔 let pingInterval null; let socketManuallyClosed false; // 标志是否手动关闭function createWebSocket() {if (socketManuallyCl…...

Go入门之数组与切片

var arr1 [...]int{1, 2, 3}fmt.Println(len(arr1)) 数组长度不能扩展 var arr2 [...]int{0: 100, 5: 101}fmt.Println(len(arr2)) } 指定索引初始化 可以通过for和range遍历 值类型:基本数据类型和数组都是值类型&#xff0c;改变副本的值不会改变本身的值 切片为引用数…...

《Nuxt.js 实战:从放弃到入门》六、打造个性化文字转图片工具

​​ 在当今短视频的时代&#xff0c;将文字转化为图片是一个常见且实用的需求&#xff0c;无论是用于社交媒体分享、设计宣传材料&#xff0c;还是制作个性化的视觉内容。今天&#xff0c;我们就来深入剖析一个使用 Vue 3 和 ElementPlus 构建的文字转图片工具的代码&#xf…...

软硬链接?

目录 1. 硬链接&#xff08;Hard Link&#xff09; 2. 软链接&#xff08;Symbolic Link&#xff0c;符号链接&#xff09; 总结&#xff1a; 1. 硬链接&#xff08;Hard Link&#xff09; 定义&#xff1a; 硬链接是直接指向文件数据块&#xff08;inode&#xff09;的链接。…...

轻松搭建本地大语言模型(二)Open-WebUI安装与使用

文章目录 前置条件目标一、安装 Open-WebUI使用 Docker 部署 二、使用 Open-WebUI&#xff08;一&#xff09;访问Open-WebUI&#xff08;二&#xff09;注册账号&#xff08;三&#xff09;模型选择&#xff08;四&#xff09;交互 四、常见问题&#xff08;一&#xff09;容器…...

windows Redis Insight 如何查看宝塔docker里的redis数据

1、ping 命令用于测试网络连通性&#xff0c;它只需要目标 IP 地址作为参数&#xff0c;不需要端口号。正确的命令如下&#xff1a; ping 公网地址2、使用 Telnet 测试端口连通性 telnet 公网地址 端口 telnet 47.108.67.228 6379如果连接成功&#xff0c;窗口会变为空白&am…...

Python高级语法之urllib

目录&#xff1a; 1、爬虫的介绍2、urllib的使用2.1、urllib的异常捕获2.2、urllib的实现微博cookie登陆2.3、urllib的handler处理器2.4、urllib的代理服务器2.5、urllib的代理服务池 1、爬虫的介绍 2、urllib的使用 2.1、urllib的异常捕获 2.2、urllib的实现微博cookie登陆 2…...

word$deepseep

1、进入官网地址。 DeepSeek 2、进入DeepSeek的API文档 3、点击DeepSeek开放平台左侧的“API Keys”, 再点击“创建API Key” 4、在弹出的对话框中&#xff0c;输入自己的API Key名称&#xff0c;点击创建。 sk-0385cad5e19346a0a4ac8b7f0d7be428 5、打开Word文档。 6、Word找…...

【koa】05-koa+mysql实现数据库集成:连接和增删改查

前言 前面我们已经介绍了第二阶段的第1-4点内容&#xff0c;本篇介绍第5点内容&#xff1a;数据库集成&#xff08;koamysql&#xff09; 也是第二阶段内容的完结。 一、学习目标 在koa项目中正常连接数据库&#xff0c;对数据表进行增删改查的操作。 二、操作步骤 本篇文章…...

【深度学习】分布偏移纠正

分布偏移纠正 正如我们所讨论的&#xff0c;在许多情况下训练和测试分布 P ( x , y ) P(\mathbf{x}, y) P(x,y)是不同的。 在一些情况下&#xff0c;我们很幸运&#xff0c;不管协变量、标签或概念如何发生偏移&#xff0c;模型都能正常工作。 在另一些情况下&#xff0c;我们…...

数据结构_前言

本次我们将进入一个新的阶段啦~ 要注意哦&#xff1a; 在学数据结构之前&#xff0c;我们要先掌握c语言中所学的指针、结构体、内存的存储这几部分&#xff0c;如果还没太掌握的话&#xff0c;那记得去复习回顾一下噢。 下面我们就一起进入数据结构的学习吧&#xff01; 知识…...

spark任务运行

运行环境 在这里插入代码片 [roothadoop000 conf]# java -version java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01)[roothadoop000 conf]# echo $JAVA_HOME /home/hadoop/app/jdk1.8.0_144[roothadoop000 conf]# vi spark-env.sh …...

由because it is a JDK dynamic proxy that implements温习Spring的代理

由because it is a JDK dynamic proxy that implements温习Spring的代理 项目场景原因分析1、报错位置2、错误原因3、业务需求 解决方案1、注入CGlib代理2、取出原生对象 项目场景 昨日在启动一个SpringBoot项目时&#xff0c;发现启动失败&#xff0c;并在日志中出现了这样的…...