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

【CSS in Depth 2 精译_072】第 12 章 CSS 排版与间距概述 + 12.1 间距设置(上):究竟该用 em 还是 px

当前内容所在位置(可进入专栏查看其他译好的章节内容)

  • 第四部分 视觉增强技术 ✔️
  • 【第 12 章 CSS 排版与间距】 ✔️
    • 12.1 间距设置 ✔️
      • 12.1.1 使用 em 还是 px ✔️
      • 12.1.2 对行高的深入思考
      • 12.1.3 行内元素的间距设置

文章目录

  • 第 12 章 排版与间距 Typography and spacing
    • 12.1 间距 Spacing
      • 12.1.1 使用 em 还是 px(Using ems vs. px)

《CSS in Depth》新版封面

《CSS in Depth》新版封面

译者按
本篇又将开启新一章的学习,全新修订的第 12 章同样将站在设计师的角度,重点关注页面样式的精修与微调。自学第一版时这些章节我都是能跳过便跳过,因为工作上催得太紧了,很多知识点都是边干边查边消化,事后也疏于复盘,结果现在还得老老实实回来补上这一课。很多事情就是这样,省力在前往往意味着吃苦在后。有些人即便撞了南墙还不死心,估计是知道返工的活最磨人吧,于是拖着拖着就放弃挣扎了。相比之下,我还算比较幸运的,没有选择躺平。希望你也是。

第 12 章 排版与间距 Typography and spacing


本章概要

  • 元素间距的微调
  • 用 Web 字体打造页面独特观感
  • 谷歌字体 API 的用法
  • 字体间距的调整(字距、行距与行高)
  • 影响 Web 字体性能的因素及优化策略
  • 可变字体(variable fonts)的用法

本章将继续构建上一章留下的示例页。目前已经定义好了颜色,页面布局也大致准备就绪了。剩下的工作还包括精修页面元素间的间距,以及改用 Web 字体来增强页面的视觉趣味性等。它们看似是两个不相关的主题,但在某些关键问题上是存在相互作用的。CSS 中含有大量控制布局、间距及字号的属性(properties),因此有必要将它们与某些通用的间距调整方案结合起来进行考察。

排版是与印刷出版一样历史悠久,也因此成为本书中唯一一个有着数百年发展历史的古老话题。本章不会过于详尽地阐述这部分内容,但会介绍一些要点,以及如何将其应用到现代 Web 开发中。

12.1 间距 Spacing

如果上一章您一直紧跟我的节奏在本地同步练习的话,此刻应该已经实现了示例页的颜色配置和大致的布局。示例页的 HTML 标记详见 代码清单 11.1(译注:位于上一章的 11.1.2 小节);而 CSS 代码则是在后续讲解中逐步完善的,此刻也应该与本章中的示例代码保持一致。如若不然,也可以从示例代码仓库中复制文件 listing-11.08.html(详见 https://github.com/CSSInDepth/css-in-depth-2/blob/main/ch11/listing-11.08.html)。

下面重点关注设计稿中标注的那些精确间距。根据设计师选用的不同工具,间距的微调往往是开发过程中一项较为枯燥的工作。虽然现代化的设计工具能有效缓解这个问题,但在后期审查页面时,可能还会与设计师反复沟通调整,明确一些需要修改的地方,或者跟视觉稿不一致的实现。

这部分工作主要涉及元素外边距的正确设置。人们往往是从最容易的地方着手,哪怕后续会面临进一步调整。这里要考虑的问题主要有两个:一是相对单位的引入与否;二是考虑行高对垂直间距的实际影响。

12.1.1 使用 em 还是 px(Using ems vs. px)

考虑使用相对单位还是绝对单位,是非常重要的决定。因为设计师一般使用像素来标注距离,因此使用绝对单位会相对容易。但启用相对单位,无论是选 em 还是 rem,都可以带来很多好处。

我们来看一下导航菜单里标注的距离(如图 12.1 所示)。设计稿要求每个导航菜单项之间必须留有 10px 的间距,同时其底边与导航条的底边之间的间距也为 10px

图 12.1 每个导航菜单项之间及周围都需要空出 10px

【图 12.1 每个导航菜单项之间及周围都需要空出 10px】

在第二章中,我们了解了使用相对单位的各种好处,因此有必要想清楚对哪些尺寸适合相对单位,而哪些适合用像素。是考虑快刀斩乱麻,将所有尺寸都转为 em 或者 rem?还是因地制宜,根据页面每个设计元素的具体情况来决定?如果考虑间距会随着用户设置的不同字号做同步缩放,那么就应该选用相对单位 emrem;否则使用像素单位 px 就完全足够了。基于这样的考虑,在实际开发中,我通常更倾向于对一些偏小的尺寸应用相对单位(em),特别是那些环绕在文字或按钮周围的尺寸;而稍大一些的容器间隔或内部间距受响应式设计的影响没那么敏感,因此保留像素单位 px 即可。

在我带您了解示例页中的间距设置时,我会指出选择某种方式的理由;但请注意,这些意见或观点难免会带有主观色彩,给出的解决方案也可能并非唯一正确的答案。

按照设计规范,导航栏中的间距尺寸需要在菜单项四周留出 10px 的距离(如图 12.1 所示)。由于它们算小尺寸元素,且文字周围还得留些内边距,因此考虑使用相对单位 em 来设置它们的间距。

鉴于基准字号为 16px,可以通过目标尺寸除以基准字号来算出 em 的值,即 10 / 16 = 0.625。因此该间距为 0.625em;再将其放入样式表中,相关样式代码如下列代码清单 12.1 所示。需要变更的地方都标有注释。

译注

为方便对照,这里直接给出示例页的相关 HTML 标记:

<nav class="nav-container"><div class="nav-container__inner"><a class="home-link" href="/">Ink</a><ul class="top-nav"><li><a href="/features">Features</a></li><li><a href="/pricing">Pricing</a></li><li><a href="/support">Support</a></li><li class="top-nav__featured"><a href="/login">Login</a></li></ul></div>
</nav>

代码清单 12.1 使用内边距和外边距来设置导航菜单的间距

.nav-container {background-color: var(--medium-green);
}
.nav-container__inner {display: flex;justify-content: space-between;max-inline-size: 1080px;margin-inline: auto;padding: 0.625em 0; /* 给整个导航栏设置 10px 的上下内边距 */
}/* ... */.top-nav {display: flex;list-style-type: none;margin: unset; /* 移除浏览器默认的列表元素外边距样式 */gap: 0.625em; /* 各导航菜单项间添加 10px 的水平外边距*/
}

处理间距时,需要知道什么时候该用内边距,什么时候该用外边距。在本例中,容器 nav-container__inner 应该使用内边距来设置垂直间隔,以便对整个容器生效,让其中靠左显示的页面标题(即 a.home-link 元素)和 top-nav 列表自带上下间距;而导航菜单项之间的水平间距则用到了 Flexbox 布局中的间隙(gap),因为我只希望间距出现在各子项之间。此外,也可以通过设置外边距来达到相同效果 1

再来看看巨幅主图的底边和三个内容栏之间的垂直间隔。如图 12.2 所示,设计稿展示了这些间距的测量结果。可以看到,无论对于带背景图片的主图元素还是设置了背景色的三个内容栏元素,标出的间隔都仅对元素外围生效,因此需要使用外边距来处理这两个间隔。

图 12.2 主图下方(40px)及内容栏(25px)之间的页面外边距效果

【图 12.2 主图下方(40px)及内容栏(25px)之间的页面外边距效果】

在本例中,我认为这些间隔无需随字号大小而同步缩放,因此就保留了像素单位 px。具体设置详见代码清单 12.2。上一章其实已经设置了主图下方的外边距 40px,这里再写一遍以强调其用意。将下列示例代码中 tile-row 元素的间隙设置(即 gap 声明)也添加到本地样式表:

代码清单 12.2 为主图下方及内容栏之间设置外边距

.hero {background: url(collaboration.jpg) no-repeat;background-size: cover;margin-block-end: 40px; /* 确保主图下方有 40px 的间距 */
}/* ... */.tile-row {display: flex;gap: 25px; /* 各分栏之间保持 25px 的间距*/
}
.tile-row > * {flex: 1;
}

像这种容器(带有背景图片或者背景颜色的),它们之间的间隔设置往往很简单。如果需要调整文本行之间的间距,例如段落或者标题中的文本,可能会略显麻烦(a little more finicky)。




关于《CSS in Depth》(中译本书名《深入解析 CSS》)

第 1 版第 2 版
读者评分原版:4.7(亚马逊);中文版:9.3(豆瓣)原版:5.0(亚马逊);中文版:暂无,待出版
出版时间原版:2018 年 3 月;中文版:2020 年 4 月原版:2024 年 7 月;中文版:暂无,待出版
原价原版:$44.99;中文版:¥139.00原版:$59.99;中文版:暂无,待出版
现价原版:$36.49;中文版:¥52.54 起步原版:$52.09;中文版:暂无,待出版
原版国内预订起步价 ¥461.00起步价 ¥750.00

本专栏为该书第 2 版高分译文专栏,全网首发,精译精校,持续更新,计划今年内完成全书翻译,敬请期待!!!

目前已完结的章节(可进入本专栏查看详情,连载期间完全免费):

  • 第一章 层叠、优先级与继承(已完结)
    • 1.1 层叠
    • 1.2 继承
    • 1.3 特殊值
    • 1.4 简写属性
    • 1.5 CSS 渐进式增强技术
    • 1.6 本章小结
  • 第二章 相对单位(已完结)
    • 2.1 相对单位的威力
    • 2.2 em 与 rem
    • 2.3 告别像素思维
    • 2.4 视口的相对单位
    • 2.5 无单位的数值与行高
    • 2.6 自定义属性
    • 2.7 本章小结
  • 第三章 文档流与盒模型(已完结)
    • 3.1 常规文档流
    • 3.2 盒模型
    • 3.3 元素的高度
    • 3.4 负的外边距
    • 3.5 外边距折叠
    • 3.6 容器内的元素间距问题
    • 3.7 本章小结
  • 第四章 Flexbox 布局(已完结)
    • 4.1 Flexbox 布局原理
    • 4.2 弹性子元素的大小
    • 4.3 弹性布局的方向
    • 4.4 对齐、间距等细节处
    • 4.5 本章小结
  • 第五章 网格布局(已完结)
    • 5.1 构建基础网格
    • 5.2 网格结构剖析 (上)
      • 5.2.1 网格线的编号(下)
      • 5.2.2 网格与 Flexbox 配合(下)
    • 5.3 两种替代语法
      • 5.3.1 命名网格线
      • 5.3.2 命名网格区域
    • 5.4 显式网格与隐式网格(上)
      • 5.4.1 添加变化 (中)
      • 5.4.2 让网格元素填满网格轨道(下)
    • 5.5 子网格(全新增补内容)
    • 5.6 对齐相关的属性
    • 5.7 本章小结
  • 第六章 定位与堆叠上下文(已完结)
    • 6.1 固定定位
      • 6.1.1 创建一个固定定位的模态对话框
      • 6.1.2 在模态对话框打开时防止屏幕滚动
      • 6.1.3 控制定位元素的大小
    • 6.2 绝对定位
      • 6.2.1 关闭按钮的绝对定位
      • 6.2.2 伪元素的定位问题
    • 6.3 相对定位
      • 6.3.1 创建下拉菜单(上)
      • 6.3.2 创建 CSS 三角形(下)
    • 6.4 堆叠上下文与 z-index
      • 6.4.1 理解渲染过程与堆叠顺序(上)
      • 6.4.2 用 z-index 控制堆叠顺序(上)
      • 6.4.3 深入理解堆叠上下文(下)
    • 6.5 粘性定位
    • 6.6 本章小结
  • 第七章 响应式设计(已完结)
    • 7.1 移动端优先设计原则(上篇)
      • 7.1.1 创建移动端菜单(下篇)
      • 7.1.2 给视口添加 meta 标签(下篇)
    • 7.2 媒体查询(上篇)
      • 7.2.1 深入理解媒体查询的类型(上篇)
      • 7.2.2 页面断点的添加(中篇)
      • 7.2.3 响应式列的添加(下篇)
    • 7.3 流式布局
    • 7.4 响应式图片
    • 7.5 本章小结
  • 第八章 层叠图层及其嵌套
    • 8.1 用 layer 图层来操控层叠规则(上篇)
      • 8.1.1 图层的定义(上篇)
      • 8.1.2 图层的顺序与优先级(下篇)
      • 8.1.3 revert-layer 关键字(下篇)
    • 8.2 层叠图层的推荐组织方案
    • 8.3 伪类 :is() 和 :where() 的用法
    • 8.4 CSS 嵌套的使用
      • 8.4.1 嵌套选择器的使用
      • 8.4.2 深入理解嵌套选择器
      • 8.4.3 媒体查询及其他 @规则 的嵌套
    • 8.5 本章小结
  • 第九章 CSS 的模块化与作用域
    • 9.1 模块的定义
      • 9.1.1 模块和全局样式
      • 9.1.2 一个简单的 CSS 模块
      • 9.1.3 模块的变体
      • 9.1.4 多元素模块
    • 9.2 将模块组合为更大的结构
      • 9.2.1 模块中多个职责的拆分
      • 9.2.2 模块的命名
    • 9.3 CSS 的作用域
      • 9.3.1 CSS 作用域的就近原则
      • 9.3.2 划定作用域的边界
      • 9.3.3 CSS 中的隐式作用域
      • 9.3.4 关于 CSS 作用域与层叠图层
    • 9.4 CSS 模式库
    • 9.5 本章小结
  • 第十章 CSS 容器查询
    • 10.1 容器查询的一个简单示例
      • 10.1.1 容器尺寸查询的用法
    • 10.2 深入理解容器
      • 10.2.1 容器的类型
      • 10.2.2 容器的名称
      • 10.2.3 容器与模块化 CSS
    • 10.3 与容器相关的单位
    • 10.4 容器样式查询的用法
      • 10.4.1 将模块与所在容器解耦
      • 10.4.2 减少重复代码
    • 10.5 本章小结
  • 第 11 章 颜色与对比
    • 11.1 通过对比进行交流
      • 11.1.1 模式的建立
      • 11.1.2 还原设计稿
    • 11.2 颜色的定义
      • 11.2.1 色域与色彩空间
      • 11.2.2 CSS 颜色表示法(RGB、Hex、HSL、HWB、LAB/OKLAB、LCH/OKLCH)
    • 11.3 利用 OKLCH 处理颜色(上篇)
      • 11.3.4 从页面其他颜色衍生出新颜色(下篇)
    • 11.4 思考字体颜色的对比效果
    • 11.5 本章小结
  • 附录
    • 附录A:CSS 选择器参考
    • 附录B:CSS 预处理器简介

  1. 译注:若采用外边距实现起来会比较繁琐。上一版就是用的左外边距,需要和猫头鹰选择器搭配使用,写作:.top-nav > li + li { margin-left: 0.625em; }。 ↩︎

相关文章:

【CSS in Depth 2 精译_072】第 12 章 CSS 排版与间距概述 + 12.1 间距设置(上):究竟该用 em 还是 px

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第四部分 视觉增强技术 ✔️【第 12 章 CSS 排版与间距】 ✔️ 12.1 间距设置 ✔️ 12.1.1 使用 em 还是 px ✔️12.1.2 对行高的深入思考12.1.3 行内元素的间距设置 文章目录 第 12 章 排版与间距…...

Elasticsearch对象映射

Spring Data Elasticsearch对象映射是将Java对象&#xff08;域实体&#xff09;映射到存储在Elasticsearchs中的JSON表示形式并返回的过程。内部用于此映射的类是MappingElasticsearchConverter。 元模型对象映射 基于元模型的方法使用域类型信息对Elasticsearch进行读写操作…...

Oracle 19c rac 补丁升级,从19.7 to19.22-集群

1. 补丁包概述 数据库环境 角色 数据库 IP地址 数据库版本 主机名 数据库名称 源端 RAC 172.30.21.166/167 19.7 hfcwdb66/hfcwdb67 hfdb 将以下补丁包上传到/soft下 上传到两个节点的soft目录下&#xff1a;p6880880_190000_Linux-x86-64.zip &#xff08;更新o…...

机器学习--Kaggle的使用

机器学习–Kaggle的使用 打开Kaggle: Your Machine Learning and Data Science Community并点击Sign In登录账号 kaggle中自带了很多的数据集 在点击Datasets之后&#xff0c;单点Notebook&#xff0c;如果有适用的数据集可以单击Copy and Edit复制其Notebook&#xff0c;之后…...

客户服务新突破,天润融通助力电动车企业实现数智化转型

近年来&#xff0c;两轮电动车成为年轻人喜爱的出行新方式&#xff0c;借着这种潮流&#xff0c;许多新兴品牌迅速发展&#xff0c;并跻身行业头部。 但问题也随之而来&#xff0c;由于业务快速发展&#xff0c;各类服务问题也开始增多。 比如天润融通服务的一家头部两轮电动…...

力扣题目 - 2931.购买物品的最大开销

题目 还需要你前往力扣官网查看详细的题目要求 地址 思路 这边需要你去力扣官网详细查看题目看了题目提供的示例 已经有了解法, 先把values转成1维数组,排序之后进行累加即可 代码 var maxSpending function (values) {let list values.flat();list.sort((a, b) > a - …...

智慧化工园区自动化在线监测,建立产业链路数字安全网

智慧化工升级国家政策推动安全风险频发 化工园区作为化工产业的核心集聚地&#xff0c;在全球经济中占据重要地位。为推动行业的高质量发展&#xff0c;国家相继发布了《“十四五”危险化学品安全生产规划方案》、《石化化工行业数字化转型实施指南》和《化工园区安全风险智能化…...

在Docker中运行MySQL的思考:挑战与解决方案

引言 在云计算和容器化技术日益普及的今天&#xff0c;Docker作为一种轻量级的容器化平台&#xff0c;已经成为开发和部署应用的首选工具之一。其提供的便携性、可扩展性和环境一致性对于无状态微服务来说无疑是巨大的福音。然而&#xff0c;并非所有应用都适合在Docker容器中…...

Linux中所有和$有关的操作

prog < file 命令在 Shell 编程中用于 输入重定向&#xff0c;它将文件的内容作为程序的输入。即&#xff0c;程序 prog 会从文件 file 中读取数据&#xff0c;而不是从标准输入&#xff08;通常是键盘&#xff09;读取数据。 基本语法&#xff1a; prog < file 解释&…...

github操作学习笔记(杂乱版)

git开源的分布式版本控制系统&#xff1a; 每次修改文件提交后&#xff0c;都会自动创建一个项目版本 查看git版本看有没有安装成功&#xff1a;git --version 把默认编辑器设置成vim&#xff1a;git config --global core.editor "vim" 1、设置昵称和邮箱&#xff…...

学习思考:一日三问(思考篇)之路由表

学习思考&#xff1a;一日三问&#xff08;思考篇&#xff09;之路由表 学了什么&#xff08;是什么&#xff09;Destination/Mask&#xff08;最终目标&#xff0c;寻路必须&#xff09;Proto&#xff08;择优可选&#xff09;Pre&#xff08;择优可选&#xff09;Cost&#x…...

多个NVR同时管理EasyNVR:设置了“按需拉流超时”配置但没反应的解决方法

视频监控这一技术在当今社会的应用已然愈发广泛&#xff0c;其影响力渗透至我们生活的方方面面。它不仅为我们带来了更为坚固的安全防线&#xff0c;还在诸多行业领域中发挥着不可替代的作用。 在广泛的应用领域中&#xff0c;NVR录像机汇聚管理EasyNVR凭借其卓越的技术实力与前…...

基于Springboot的实验室管理系统【附源码】

基于Springboot的实验室管理系统 效果如下&#xff1a; 系统登录页面 实验室信息页面 维修记录页面 轮播图管理页面 公告信息管理页面 知识库页面 实验课程页面 实验室预约页面 研究背景 在科研、教育等领域&#xff0c;实验室是进行实验教学和科学研究的重要场所。随着实验…...

【Oracle11g SQL详解】常用字符串函数:`CONCAT`、`SUBSTR`、`LENGTH`、`INSTR` 等

常用字符串函数&#xff1a;CONCAT、SUBSTR、LENGTH、INSTR 等 字符串函数在 SQL 中被广泛用于处理文本数据&#xff0c;例如拼接字符串、提取子串、查找字符位置等。Oracle 11g 提供了强大的字符串函数&#xff0c;可以简化对字符串的操作。 一、CONCAT&#xff1a;拼接字符串…...

某养老产业公司管理诊断项目成功案例纪实

某养老产业公司管理诊断项目成功案例纪实 ——从短期和长期出发&#xff0c;提供转型改革建议 【客户行业】养老行业 【问题类型】问题诊断 【客户背景】 某养老产业公司是一家主要从事养老服务为主的企业&#xff0c;主营业务包括社区养老服务、居家养老、康复训练服务等…...

自然语言处理基础及应用场景

自然语言处理定义 让计算机理解人所说的文本 语音 Imitation Game 图灵测试 行为主义 鸭子理论 自然语言处理的基本任务 词性标注&#xff1a;区分每个词名词、动词、形容词等词性命名实体的识别&#xff1a;名词的具体指代是哪一类事物共指消解&#xff1a;代词指代的是前面…...

网页爬虫技术全解析:从基础到实战

引言 在当今信息爆炸的时代&#xff0c;互联网上的数据量每天都在以惊人的速度增长。网页爬虫&#xff08;Web Scraping&#xff09;&#xff0c;作为数据采集的重要手段之一&#xff0c;已经成为数据科学家、研究人员和开发者不可或缺的工具。本文将全面解析网页爬虫技术&…...

数据仓库-查看表和数据库的信息

查询表信息 使用系统表pg_tables查询数据库所有表的信息。 SELECT * FROM pg_tables;使用gsql的\d命令查询表结构。 示例&#xff1a;先创建表customer_t1并插入数据。 CREATE TABLE customer_t1 ( c_customer_sk integer, c_customer_id char(5)…...

【JVM】JVM基础教程(四)

上一章&#xff1a;【JVM】JVM基础教程&#xff08;三&#xff09;-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收&#xff1f; 可以给对象引用赋值null&#xff0c;切断引用 引用计数法 循环引用缺点 查…...

深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna)

深入了解Text2SQL开源项目&#xff08;Chat2DB、SQL Chat 、Wren AI 、Vanna&#xff09; 前言1.Chat2DB2.SQL Chat3.Wren AI4.Vanna 前言 在数据驱动决策的时代&#xff0c;将自然语言查询转化为结构化查询语言&#xff08;SQL&#xff09;的能力变得日益重要。无论是小型创业…...

websocket 服务 pinia 全局配置

websocket 方法类 // stores/webSocketStore.ts import { defineStore } from "pinia";interface WebSocketStoreState {ws: WebSocket | null; // WebSocket 实例callbacks: ((message: string) > void)[]; // 消息回调函数列表connected: boolean; // 连接状态…...

基于Springboot企业oa管理系统【附源码】

基于Springboot企业oa管理系统 效果如下&#xff1a; 系统主页面 用户管理页面 公告信息管理页面 客户关系管理页面 车辆信息管理页面 工资信息管理页面 文件信息管理页面 上班考勤管理页面 研究背景 随着信息化时代的到来和企业OA管理理念的更新&#xff0c;企业面临着日益…...

Python遥感开发之地理探测器的实现

Python遥感开发之地理探测器的实现 1 地理探测器介绍2 官方软件实现3 Python代码实现 前言&#xff1a;本篇博客主要介绍使用py_geodetector库来实现地理探测器。 1 地理探测器介绍 官网链接&#xff1a;http://www.geodetector.cn/index.html 地理探测器用于测量和归因空间分…...

【HarmonyOS】 鸿蒙保存图片或视频到相册

【HarmonyOS】 鸿蒙保存图片或视频到相册 前言 鸿蒙中保存图片或者视频&#xff0c;或者其他媒体文件到设备的媒体库&#xff0c;可以是相册&#xff0c;也可以是文件管理等。共有两种方式&#xff1a; 需要应用申请受限权限&#xff0c;获取文件读写的权限&#xff08;调用…...

Apache Echarts和POI

目录 Apache ECharts 介绍 入门 绘制一个简单的图表 Apache POI 介绍 通过POI创建Excel文件并且写入文件内容 通过POI读取Excel文件中的内容 导出Excel表格 Apache ECharts 介绍 Apache ECharts 是一款基于 Javascript 的数据可视化图表库&#xff0c;提供直观&#xf…...

厦门凯酷全科技有限公司正规吗靠谱吗?

随着短视频和直播电商的迅猛发展&#xff0c;越来越多的企业开始将目光投向抖音这一平台。作为国内领先的短视频社交平台&#xff0c;抖音凭借其庞大的用户基础和强大的算法推荐系统&#xff0c;成为众多品牌拓展市场、提升销售的重要渠道。厦门凯酷全科技有限公司&#xff08;…...

WireShark 下载、安装和使用

1、下载 官网下载太慢&#xff0c;本人另外提供下载地址【下载WireShark】 2、安装 全部默认下一步即可&#xff0c;但如下图所示的这一步值得拿出来说一下。这一步是要你安装Npcap&#xff0c;但是你的电脑如果已经安装了WinPcap&#xff0c;那么可以选择不再安装Npcap。Npca…...

2025周易算命网站搭建详细方法+源码选择php环境的配置

以下是一个详细的搭建教程&#xff0c;包括网站分类、环境配置、程序设计和功能实现。 1. 环境准备 1.1 服务器选择 操作系统: Linux&#xff08;推荐使用Ubuntu或CentOS&#xff09;Web服务器: Nginx数据库: MySQLPHP版本: 7.4.x&#xff08;确保小于8.0&#xff09; 1.2 安…...

共享购模式革新登场:重构消费生态,领航商业新未来

近期&#xff0c;一种创新的商业模式——共享购&#xff0c;在电子商务领域掀起了一股热潮&#xff0c;不仅吸引了广大消费者的目光&#xff0c;也激发了商家和资本市场的浓厚兴趣。共享购模式凭借其独到的消费积分累积与转换体系&#xff0c;正在逐步重塑消费生态&#xff0c;…...

centos kafka单机离线安装kafka服务化kafka tool连接kafka

a.版本&环境 linux版本&#xff1a;centos7.6 kafka: kafka_2.12 zookeeper:zookeeper_3.6.3(之前已经安装:linux zookeeper安装并服务化-CSDN博客) java:1.8(之前已经安装) windows kafka tool: 2.1 b.kafka单机安装 1.切换目录 cd downloads/,利用rz命令&#xff0…...

介绍自己做衣服的网站/不用流量的地图导航软件

选自 &#xff1a;新华网新华网合肥12月28日电 (记者 代群) 30秒内为驾驶员提供实时路况和最优出行路线信息&#xff1b;8分钟完成单幅机载合成雷达数据成像&#xff0c;准实时精确提供灾情评估和经济损失分析信息。记者日前从中国科技大学获悉&#xff0c;国产KD-50-I-E增强型…...

wordpress鼠标特效/游戏推广公司

这两天&#xff0c;在研究&#xff0c;怎么实现&#xff0c;.net里面的URL重写与伪静态&#xff0c;在MSDN里面&#xff0c;学习了一下&#xff0c;又在网上搜了一些资料&#xff0c;终于做出来了&#xff0c;给大家分享一下。 一&#xff0c;获得Mircosoft URLRewriter.dll&am…...

小型手机网站建设/seo职位描述

阿里云弹性公网IP&#xff08;EIP&#xff09;是一种可以独立购买和持有的公网IP地址资源&#xff0c;弹性公网IP具有独立购买持有、弹性绑定和配置灵活等优势&#xff0c;但实际使用中弹性公网IP也是有很多限制的&#xff0c;阿里云惠网分享弹性公网IP&#xff08;EIP&#xf…...

wordpress post fonts/营销网站建设服务

http://cocobear.info/blog/2009/01/16/use-python-deal-with-excel/ 使用Python处理Excel表格 2009年01月16日 给俺的boss写的一个小工具&#xff0c;使用Python对Excel进行统计&#xff0c;然后把结束生成一个新的Excel表格&#xff0c;使用到了xlrd和pyExcelerator两个库。 …...

ai怎么做网站用海报/服装网络营销策划书

题目描述 在一个33的网格中&#xff0c;1~8这8个数字和一个“X”恰好不重不漏地分布在这33的网格中。 在游戏过程中&#xff0c;可以把“X”与其上、下、左、右四个方向之一的数字交换&#xff08;如果存在&#xff09;。 我们的目的是通过交换&#xff0c;使得网格变…...

洛阳平台公司/seo成都培训

可以使用 IN 子句代替许多 OR 条件。要想理解 IN 子句&#xff0c;还以表 employee_tbl 为例&#xff0c;它的所有记录如下所示&#xff1a;mysql> SELECT * FROM employee_tbl;--------------------------------------------| id | name | work_date | daily_typing_pages …...