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

深入理解CSS3:Flex/Grid布局、动画与媒体查询实战指南

引言

在现代Web开发中,CSS3已经成为构建响应式、美观且高性能网站的核心技术。它不仅提供了更强大的布局系统(Flexbox和Grid),还引入了令人惊艳的动画效果和精准的媒体查询能力。本文将深入探讨这些关键技术,帮助您提升前端开发技能,打造更出色的用户体验。

一、Flex布局:弹性盒子模型

1.1 Flex布局基础

Flexbox(弹性盒子布局)是CSS3中一种一维布局模型,它让我们能够更高效地处理容器内项目的排列、对齐和分布。

.container {display: flex; /* 或 inline-flex */
}

1.2 核心概念与属性

容器属性:
  • flex-direction: 决定主轴方向(row | row-reverse | column | column-reverse)

  • flex-wrap: 控制是否换行(nowrap | wrap | wrap-reverse)

  • justify-content: 主轴对齐方式(flex-start | flex-end | center | space-between | space-around | space-evenly)

  • align-items: 交叉轴对齐方式(stretch | flex-start | flex-end | center | baseline)

  • align-content: 多行对齐方式(类似于justify-content的多行版本)

项目属性:
  • order: 控制项目排列顺序

  • flex-grow: 定义项目放大比例

  • flex-shrink: 定义项目缩小比例

  • flex-basis: 定义在分配多余空间前,项目占据的主轴空间

  • align-self: 允许单个项目有与其他项目不一样的对齐方式

1.3 实战示例:完美居中

.center-container {display: flex;justify-content: center;align-items: center;height: 100vh;
}

这段代码可以轻松实现水平和垂直居中,这在传统布局中需要复杂技巧才能实现。

二、Grid布局:二维布局系统

2.1 Grid布局基础

CSS Grid布局是一个二维布局系统,可以同时处理行和列的布局,比Flexbox更适合复杂的整体页面布局。

.container {display: grid; /* 或 inline-grid */
}

2.2 核心概念与属性

容器属性:
  • grid-template-columns / grid-template-rows: 定义列和行的尺寸

  • grid-template-areas: 定义区域模板

  • grid-gap (或 gap): 设置网格间距

  • justify-items / align-items: 控制单元格内项目的对齐

  • justify-content / align-content: 控制整个网格在容器中的对齐

项目属性:
  • grid-column / grid-row: 指定项目占据的网格线

  • grid-area: 指定项目放置在哪个命名区域

  • justify-self / align-self: 单个项目的对齐方式

2.3 实战示例:创建响应式网格

.grid-container {display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 20px;
}

这个示例创建了一个自动适应的网格布局,每列最小250px,最大1fr(等分剩余空间),并在不同屏幕尺寸下自动调整列数。

三、CSS动画:让界面生动起来

3.1 过渡(Transition)

CSS过渡可以在属性变化时添加平滑的动画效果。

.button {background-color: #3498db;transition: background-color 0.3s ease, transform 0.2s;
}.button:hover {background-color: #2980b9;transform: scale(1.05);
}

3.2 关键帧动画(Animation)

更复杂的动画可以使用@keyframes规则定义。

@keyframes bounce {0%, 100% { transform: translateY(0); }50% { transform: translateY(-20px); }
}.bouncing-element {animation: bounce 2s infinite;
}

3.3 性能优化技巧

  • 优先使用transformopacity属性做动画(它们不会触发重排)

  • 使用will-change属性预先告知浏览器哪些属性会变化

  • 避免在滚动事件中使用复杂动画

四、媒体查询:响应式设计的核心

4.1 基本语法

@media (max-width: 768px) {/* 在小屏幕上应用的样式 */.container {flex-direction: column;}
}

4.2 常用断点设置

/* 小设备 (手机, 600px 及以下) */
@media only screen and (max-width: 600px) {...}/* 中等设备 (平板, 768px 及以下) */
@media only screen and (max-width: 768px) {...}/* 大设备 (笔记本电脑/台式机, 992px 及以下) */
@media only screen and (max-width: 992px) {...}/* 超大设备 (大笔记本电脑/台式机, 1200px 及以上) */
@media only screen and (min-width: 1200px) {...}

4.3 现代响应式设计技巧

结合Flex/Grid与媒体查询:

.grid-container {display: grid;grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}@media (max-width: 600px) {.grid-container {grid-template-columns: 1fr;}
}

五、综合实战:构建一个响应式卡片组件

<div class="card-container"><div class="card"><div class="card-image"></div><div class="card-content"><h3>卡片标题</h3><p>这是一张使用现代CSS技术创建的卡片。</p><button class="card-button">点击我</button></div></div><!-- 更多卡片... -->
</div>
.card-container {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 30px;padding: 20px;
}.card {display: flex;flex-direction: column;border-radius: 10px;overflow: hidden;box-shadow: 0 4px 8px rgba(0,0,0,0.1);transition: transform 0.3s ease, box-shadow 0.3s ease;
}.card:hover {transform: translateY(-5px);box-shadow: 0 8px 16px rgba(0,0,0,0.2);
}.card-image {height: 200px;background-color: #3498db;
}.card-content {padding: 20px;flex: 1;
}.card-button {padding: 10px 20px;background-color: #3498db;color: white;border: none;border-radius: 5px;cursor: pointer;transition: background-color 0.3s;
}.card-button:hover {background-color: #2980b9;
}@media (max-width: 600px) {.card-container {grid-template-columns: 1fr;}
}

六、最佳实践与常见问题

6.1 布局选择指南

  • Flexbox:适合一维布局(单行或单列),组件内部布局

  • Grid:适合二维布局,整体页面结构

  • 两者可以结合使用,Grid用于整体布局,Flexbox用于组件内部

6.2 浏览器兼容性处理

  • 使用Autoprefixer自动添加供应商前缀

  • 渐进增强:先构建基本布局,再添加高级特性

  • 使用@supports规则进行特性检测

@supports (display: grid) {.container {display: grid;}
}@supports not (display: grid) {.container {display: flex;}
}

6.3 性能优化

  • 减少不必要的重绘和回流

  • 合理使用硬件加速

  • 避免过度复杂的CSS选择器

  • 压缩和合并CSS文件

结语

CSS3的Flex/Grid布局、动画和媒体查询为现代Web开发提供了强大的工具集。通过掌握这些技术,您可以创建出既美观又功能强大的响应式网站。记住,实践是最好的学习方式,不断尝试和实验这些特性,您的CSS技能将不断提升。

相关文章:

深入理解CSS3:Flex/Grid布局、动画与媒体查询实战指南

引言 在现代Web开发中&#xff0c;CSS3已经成为构建响应式、美观且高性能网站的核心技术。它不仅提供了更强大的布局系统&#xff08;Flexbox和Grid&#xff09;&#xff0c;还引入了令人惊艳的动画效果和精准的媒体查询能力。本文将深入探讨这些关键技术&#xff0c;帮助您提…...

VLM-E2E:通过多模态驾驶员注意融合增强端到端自动驾驶——论文阅读

《VLM-E2E Enhancing End-to-End Autonomous Driving with Multimodal Driver Attention Fusion》2025年2月发表&#xff0c;来自香港科大广州分校、理想汽车和厦门大学的论文。 一、核心问题与动机 现有端到端&#xff08;E2E&#xff09;自动驾驶系统直接从传感器输入映射到…...

蓝牙BLE

1、简介 蓝牙BR/EDR和BLE是蓝牙技术的两个重要分支&#xff0c;它们各自具有独特的特点和应用场景。 1.1、蓝牙BR/EDR 蓝牙BR&#xff08;Basic Rate&#xff09; 定义&#xff1a;蓝牙技术的首个开发版本&#xff0c;采用高斯频移键控&#xff08;GFSK&#xff09;调制技术…...

在VS2022中使用Lua与c交互(二)

一、核心交互机制&#xff1a;Lua 虚拟栈 Lua 与 C 的交互通过一个 ​​虚拟栈&#xff08;Stack&#xff09;​​ 完成&#xff0c;所有数据传递、函数调用均通过此栈实现。栈的每个元素可以是任意 Lua 类型&#xff08;如数字、字符串、表、函数等&#xff09;。 栈的结构与…...

论文阅读_Citrus_在医学语言模型中利用专家认知路径以支持高级医疗决策

英文名称&#xff1a;Citrus: Leveraging Expert Cognitive Pathways in a Medical Language Model for Advanced Medical Decision Support 中文名称&#xff1a;Citrus&#xff1a;在医学语言模型中利用专家认知路径以支持高级医疗决策 链接: http://arxiv.org/pdf/2502.18…...

浅谈PCB传输线(一)

前言&#xff1a;浅谈传输线的类型&#xff0c;以及传输线的一些行为特性。 1.传输线的种类 2.互连线被视为传输线的场景 3.传输线的行为特性*** 1.传输线的种类 PCB 中的信号传输线通常有两种基本类型: 微带线和带状线。此外&#xff0c;还有第三种类型–共面线(没有参考平面…...

Spring-全面详解(学习总结)

一&#xff1a;概述 1.1 为什么学 解决了两个主要问题 1. 2 学什么 1.3 怎么学 二&#xff1a;系统架构 作用&#xff1a;web开发、微服务开发、分布式系统开发 容器&#xff1a;用于管理对象 AOP:面向切面编程&#xff08;不惊动原始程序下对其进行加强&#xff09; 事…...

突破JVM边界:类加载三重门与栈帧的生存法则

类加载子系统 文件验证阶段 类加载子系统在加载Class文件时&#xff0c;首先会验证文件格式规范&#xff0c;检查文件开头的魔数标识&#xff0c;确保这是一个合法的JVM字节码文件。 职责边界 该子系统仅负责将Class文件加载到内存中&#xff0c;并不关心后续能否成功执行—…...

VSCode 查看文件的本地修改历史

1. 使用时间线视图&#xff08;Timeline&#xff09; 新版 VSCode 内置了一个叫 Timeline&#xff08;时间线&#xff09; 的功能&#xff0c;可以查看&#xff1a; 本地文件修改记录&#xff08;包括保存历史&#xff09;Git 提交历史&#xff08;如果仓库是 Git 管理的&…...

在QGraphicsView中精确地以鼠标为锚缩放图片

在pyqt中以鼠标所在位置为锚点缩放图片-CSDN博客中的第一个示例中&#xff0c;通过简单设置&#xff1a; self.setTransformationAnchor(QGraphicsView.AnchorUnderMouse) 使得QGraphicsView具有了以鼠标为锚进行缩放的功能。但是&#xff0c;其内部应当是利用了滚动条的移动来…...

【Python数据驱动决策】数据分析与可视化全流程实战指南

目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比二、实战演示环境配置要求核心代码实现案例1:销售数据清洗案例2:月度销售趋势分析案例3:产品关联分析(热力图)运行结果验证三、性能对…...

报错解决:ModuleNotFoundError: No module named ‘triton.ops‘

报错原因&#xff1a;2024.5.21之后, triton.ops 被移动到另一个工程 triton-lang/kernels中。 参考链接&#xff1a;官方解释 解决方案&#xff1a;换用2024.5.21之前发布的版本。 pip3 install triton2.3.0...

相机-IMU联合标定:相机-IMU外参标定

文章目录 📚简介🚀标定工具kalibr🚀标定数据录制🚀相机-IMU外参标定📚简介 在 VINS(视觉惯性导航系统) 中,相机-IMU外参标定 是确保多传感器数据时空统一的核心环节,其作用可概括为以下关键点: 坐标系对齐(空间同步),外参误差会导致视觉特征点投影与IMU预积…...

Qt C++数据库实验

一、实验目的和要求 1、掌握Qt中数据库SQL类数据库的查询、插入和更新操作。 2、熟悉Qt界面设计中常用的控件。 3、了解数据库相关类。 二、实验内容 1、设计一个数据库操作软件&#xff0c;完成数据库的相关操作。 2、建立按钮的信号与槽函数&#xff0c;实现点击按钮进…...

相机-IMU联合标定:IMU标定

文章目录 📚 简介🚀标定工具安装📌 IMU标定工具 code_utils📌 IMU标定工具 imu_utils:🚀标定数据录制🚀IMU标定📚 简介 在 VINS(Visual-Inertial Navigation System,视觉惯性导航系统) 中,IMU标定 是确保系统高精度运行的关键环节。IMU(惯性测量单元)本身…...

榕壹云信用租赁系统:基于ThinkPHP+MySQL+UniApp的全链路免押租赁解决方案

信用租赁时代的全流程数字化革新 随着共享经济与信用体系的深度融合,传统租赁行业正面临效率与信任的双重挑战。榕壹云信用租赁系统依托ThinkPHP高性能框架、MySQL数据库与UniApp跨平台开发技术,构建了一套覆盖设备租赁全生命周期的数字化解决方案。通过整合多因子身份认证、…...

C语言中的指针详解

指针是C语言中非常强大且复杂的特性之一&#xff0c;它为我们提供了更灵活的内存管理方式&#xff0c;使得程序能够直接操作内存&#xff0c;提升效率和性能。尽管指针非常强大&#xff0c;但如果不理解它的概念和使用方式&#xff0c;很容易出现错误。因此&#xff0c;理解指针…...

NIPS2021 | 视觉 Transformer 的有趣特性

Intriguing Properties of Vision Transformers 摘要-Abstract引言-Introduction相关工作-Related Work视觉Transformer的有趣特性-Intriguing Properties of Vision Transformers视觉Transformer对遮挡具有鲁棒性吗&#xff1f;-Are Vision Transformers Robust to Occlusions…...

贪心算法-2208.将数组和减半的最小操作数-力扣(LeetCode)

一、题目解析 这里要注意恰好这个字眼&#xff0c;说明对任意数减小一半是不需要向上取整的&#xff0c;所以我们需要定义double类型的数据。 二、算法解析 我们需要将数组和减小为一半的次数最少&#xff0c;所以根据贪心算法&#xff0c;我们需要取数组中最大的数进行减半操…...

如何搭建spark yarn 模式的集群集群。

下载 App 如何搭建spark yarn 模式的集群集群。 搭建Spark on YARN集群的详细步骤 Spark on YARN模式允许Spark作业在Hadoop YARN资源管理器上运行&#xff0c;利用YARN进行资源调度。以下是搭建步骤&#xff1a; 一、前提条件 已安装并配置好的Hadoop集群&#xff08;包括HDF…...

嵌入式开发面试典型编程题解析:排序算法、指针操作、字符处理、递归原理等基础原理的深度解析。

在嵌入式开发面试中&#xff0c;编程题是常见的考察形式&#xff0c;旨在检验求职者对基础编程知识的掌握和应用能力。以下是几道典型的嵌入式面试编程题及详细解析&#xff0c;帮助新手逐步理解和掌握相关知识点。 一、用交换法对学生成绩降序排序 题目描述 在嵌入式系统开…...

DeepSeek+即梦:AI视频创作从0到1全突破

目录 一、开启 AI 视频创作大门&#xff1a;前期准备1.1 注册与登录1.2 熟悉工具界面1.3 硬件与网络要求 二、用 DeepSeek 构思视频脚本2.1 明确创作主题与目标2.2 编写优质提示词2.3 生成并优化脚本 三、即梦 AI 实现画面生成3.1 文生图基础操作3.2 调整参数提升画质3.3 保持人…...

npm init、换源问题踩坑

文章目录 一、 问题复现二、问题解决 一、 问题复现 成功安装nodejs 以及 npm 版本如下&#xff1a; > node -v > v20.18.0 > npm -v > 10.8.2使用 npm init 命令时延时过长&#xff0c;考虑换源&#xff0c;使用指令 npm config set registry https://registr…...

TRex 控制台命令解析

TRex 是一种高性能的网络测试工具&#xff0c;用于生成和分析网络流量。以下是对这些命令的简要解释&#xff1a; 一、help Console Commands&#xff08;控制台命令&#xff09; capture&#xff1a;管理 PCAP 捕获。debug&#xff1a;用于开发的内部调试器。events&#x…...

【Shell 脚本入门】轻松上手的实战指南

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Shell脚本编程 目录 一&#xff1a;&#x1f525; 什么是 Shell &#x1f98b; 常见的 Shell 类型 二&#xff1a;&#x1f525; 什么是 Shell 脚本 &#x1f98b; Shell 脚本规则&#x1f98b; 第…...

数据结构*栈

栈 什么是栈 这里的栈与我们之前常说的栈是不同的。之前我们说的栈是内存栈&#xff0c;它是JVM内存的一部分&#xff0c;用于存储局部变量、方法调用信息等。每个线程都有自己独立的栈空间&#xff0c;当线程启动时&#xff0c;栈就会被创建&#xff1b;线程结束&#xff0c…...

零基础制作Freertos智能小车(教程非常简易)持续更新中....

从现开始&#xff0c;将陆续推出各类简单的DIY电子设计&#xff0c;由简入深&#xff0c;将自己的制作过程全部分享出来&#xff0c;巩固自己知识的同时希望借此机会认识更多喜欢电子设计的小伙伴。 本次小车的主控芯片采用stm32f103c8t6&#xff0c;主要是便宜好用&am…...

Leetcode - 双周赛155

目录 一&#xff0c;3527. 找到最常见的回答二&#xff0c;3528. 单位转换 I三&#xff0c;3529. 统计水平子串和垂直子串重叠格子的数目四&#xff0c;3530. 有向无环图中合法拓扑排序的最大利润 一&#xff0c;3527. 找到最常见的回答 题目列表 本题是一道模拟题&#xff0…...

详解RabbitMQ工作模式之工作队列模式

目录 工作队列模式 概念 特点 应用场景 工作原理 注意事项 代码案例 引入依赖 常量类 编写生产者代码 编写消费者1代码 编写消费者2代码 先运行生产者&#xff0c;后运行消费者 先运行消费者&#xff0c;后运行生产者 工作队列模式 概念 在工作队列模式中&#x…...

QGIS+mcp的安装和使用

QGISmcp的安装和使用 安装qgis_mcp 下载qgis_mcp&#xff1a; git clone https://github.com/jjsantos01/qgis_mcp.git安装uv uv是一个由Rust语言编写的python包管理工具&#xff0c;旨在提供比传统工具&#xff08;如 pip&#xff09;更高效的依赖管理和虚拟环境操作。 p…...

Java基础361问第16问——枚举为什么导致空指针?

我们看一段代码 public enum Color {RED, BLUE, YELLOW;public static Color parse(String color) {return null;} }public static void main() {Color color Color.parse("");// 极具迷惑性&#xff0c;大家日常开发肯定这么写过switch (color) {case RED:break;c…...

在 C# .NET 中驾驭 JSON:使用 Newtonsoft.Json 进行解析与 POST 请求实战

JSON (JavaScript Object Notation) 已经成为现代 Web 应用和服务之间数据交换的通用语言。无论你是开发后端 API、与第三方服务集成&#xff0c;还是处理配置文件&#xff0c;都绕不开 JSON 的解析与生成。在 C# .NET 世界里&#xff0c;处理 JSON 有多种选择&#xff0c;其中…...

CentOS7——Docker部署java服务

1、安装Docker 首先要确保系统已安装 Docker&#xff0c;若未安装&#xff0c;可以参考我的另一篇文章现在CentOS7上安装Docker&#xff0c;文章地址如下&#xff1a; CentOS7系统安装Docker教程-CSDN博客 Docker当中要安装必备的软件&#xff0c;比如Java运行必要的JDK&#…...

Python-Part2-集合、字典与推导式

Python-Part2-集合、字典与推导式 1. set集合 ⽆序&#xff0c;去掉重复数据。 set1 {1,2,3,4,5,5,4,3,2,1}print(type(set1))print(set1)set2.add(66666)set2.remove(55)#不能使用下标访问set&#xff0c;所以修改操作一般为remove操作 add操作2.dict 字典 字典&#xff…...

《AI大模型应知应会100篇》第39篇:多模态大模型应用:文本、图像和音频的协同处理

第39篇&#xff1a;多模态大模型应用&#xff1a;文本、图像和音频的协同处理 摘要 随着人工智能技术的发展&#xff0c;多模态大模型&#xff08;Multimodal Large Models&#xff09;已经成为AI领域的热点之一。这些模型能够同时处理文本、图像、音频等多种模态数据&#xf…...

kvm学习小结

安装相关包 安装虚拟化相关包 apt install qemu-kvm qemu-system libvirt-clients libvirt-daemon-system vlan bridge-utils 安装界面相关包 apt install xinit gdmd 配置机器允许root登录 检查cpu是否支持虚拟化 egrep -o vmx|svm /proc/cpuinfo 执行命令systemctl s…...

k8s基本概念-YAML

YAML介绍 YAML是“YAML Aint a Markup Language” (YAML不是一种置标语言)的递归缩进写,早先YAML的意思其实是:“Yet Another Markup Language”(另一种置标语言) YAML是一个类似XML、JSON的标记性语言。YAML强调以数据为中心,并不是以标识语言为重点。因而YAML本身的定义…...

wps批注线条怎么取消去掉wps批注后有竖线

wps批注线条怎么取消去掉wps批注后有竖线 问题 图片 解决方案 图片 word批注线条取消的方法&#xff1a; 1.打开Word文档,点击需要删除的批注。 2.然后点击工具栏“审阅”选项。 3.接着点击“接受“ 4.接受对文档所做的所有修订(H)...

深度解析算法之分治(归并)

48.排序数组 题目链接 给你一个整数数组 nums&#xff0c;请你将该数组升序排列。 你必须在 不使用任何内置函数 的情况下解决问题&#xff0c;时间复杂度为 O(nlog(n))&#xff0c;并且空间复杂度尽可能小。 示例 1&#xff1a; 输入&#xff1a; nums [5,2,3,1] 输出&am…...

僵尸进程是什么?

僵尸进程&#xff08;Zombie Process&#xff09;是指在 Unix/Linux 系统中&#xff0c;一个子进程已经终止&#xff0c;但其父进程尚未对它进行善后处理&#xff08;即没有读取其退出状态&#xff09;&#xff0c;导致子进程的进程表项仍然保留在系统中。由于这个进程已经结束…...

城市群出行需求的时空分形

城市群出行需求的时空分形 原文&#xff1a;He, Zhengbing. “Spatial-temporal fractal of urban agglomeration travel demand.” Physica A: Statistical Mechanics and its Applications 549 (2020): 124503. 1. Introduction&#xff08;引言&#xff09; 城市区域的重…...

LangChain入门(二)安装开发环境

1.安装conda Conda 是一个开源的软件包管理系统和环境管理系统&#xff0c;用于安装多个版本的软件包及其依赖关系&#xff0c;并在它们之间轻松切换。 Anaconda是一个开源的Python发行版本&#xff0c;其包含了conda、python等软件包&#xff0c;numpy、pandas、scipy等科学…...

如何开展有组织的AI素养教育?

一、AI素养的定义与核心内涵 AI素养是智能时代个体适应与创新能力的综合体现&#xff0c;其内涵随着技术发展动态扩展&#xff0c;包含以下核心维度&#xff1a; 知识体系&#xff1a;理解AI基本原理&#xff08;如算法、数据、算力&#xff09;、技术边界及发展趋势&#xff…...

InnoDB对LRU算法的优化

标准 LRU 算法的核心思想是&#xff1a;当缓存空间不足时&#xff0c;淘汰掉最近最少使用的数据块&#xff08;Page&#xff09;。它通常用一个链表来实现&#xff0c;链表头部是最近访问的 Page&#xff0c;链表尾部是最久未访问的 Page。 然而&#xff0c;在数据库系统中直接…...

云原生--核心组件-容器篇-7-Docker私有镜像仓库--Harbor

1、Harbor的定义与核心作用 定义&#xff1a; Harbor是由VMware开源的企业级容器镜像仓库系统&#xff0c;后捐赠给 CNCF (Cloud Native Computing Foundation)。它基于Docker Registry扩展了企业级功能&#xff0c;用于存储、分发和管理容器镜像&#xff08;如Docker、OCI标准…...

TypeScript 实用类型深度解析:Partial、Pick、Record 的妙用

需求背景&#xff1a;在后台系统的用户管理模块中&#xff0c;我们常遇到这样的场景&#xff1a;修改用户资料时只需要传部分字段&#xff0c;展示用户列表时要隐藏敏感信息&#xff0c;快速查找用户需要ID索引等等&#xff0c;这些业务需求都可以通过 TypeScript 的实用类型优…...

【Pandas】pandas DataFrame rmod

Pandas2.2 DataFrame Binary operator functions 方法描述DataFrame.add(other)用于执行 DataFrame 与另一个对象&#xff08;如 DataFrame、Series 或标量&#xff09;的逐元素加法操作DataFrame.add(other[, axis, level, fill_value])用于执行 DataFrame 与另一个对象&…...

如何搭建spark yarn 模式的集群集群

以下是搭建Spark YARN模式集群的一般步骤&#xff1a; 准备工作 - 确保集群中各节点安装了Java环境&#xff0c;并配置好 JAVA_HOME 环境变量。 - 各节点间能通过SSH免密登录。 - 安装并配置好Hadoop集群&#xff0c;YARN作为Hadoop的资源管理器&#xff0c;Spark YARN模式需要…...

云原生--核心组件-容器篇-6-Docker核心之-镜像仓库(公共仓库,私有仓库,第三方仓库)

1、Docker仓库的定义与核心作用 定义&#xff1a; Docker仓库&#xff08;Docker Registry&#xff09;是用于存储、分发和管理Docker镜像的集中式存储库。它类似于代码仓库&#xff0c;但专门用于容器镜像的版本控制和共享。它允许开发人员和IT团队高效地管理、部署和分享容器…...

mysql8.0版本部署+日志清理+rsync备份策略

mysql安装&#xff1a;https://blog.csdn.net/qq_39399966/article/details/120205461 系统&#xff1a;centos7.9 数据库版本&#xff1a;mysql8.0.28 1.卸载旧的mysql,保证环境纯净 rpm -qa | grep mariadb mariadb-5.... rpm -e --nodeps 软件 rpm -e --nodeps mariadb-5.…...