CSS尺寸、盒子模型、定位、浮动与布局(Flex/Grid)

news/2025/10/30 18:50:43/文章来源:https://www.cnblogs.com/NobodyCares/p/19175672

CSS尺寸、盒子模型、定位、浮动与布局(Flex/Grid)

尺寸单位: px,em,rem,fr

img

各单位定义

  • px (像素): 相对固定的单位,代表屏幕上的一个物理点。在高分辨率屏幕上,1个CSS像素可能对应多个物理像素。
  • em: 相对单位,相对于父元素的字体大小。如果父元素字体大小为16px,则1em = 16px。
  • rem (root em): 相对单位,相对于根元素(html)的字体大小。如果html的字体大小为16px,则1rem = 16px。
  • fr (fraction unit): Grid布局专用单位,表示网格容器中可用空间的比例份额。当多个元素使用fr单位时,它们会按照比例分配剩余空间。

使用原则

  • 组合使用原则:“全局用 rem,局部用 em,细节用 px”
  • 若尺寸不依赖任何字体大小(如边框)→ 用 px。
  • 若尺寸仅依赖父元素 / 自身字体大小(如按钮内边距)→ 用 em。
  • 若尺寸需要全局统一缩放(如页面字体、容器宽度)→ 用 rem。

盒子模型

盒子模型(Box Model) 由 4 个部分从内到外依次组成:内容区(content)、内边距(padding)、边框(border)、外边距(margin)

  • box-sizing: content-box; 设置模型为标准盒模型 (W3C 盒模型)

width,height 仅包含内容宽度,不包含内边距、边框、外边距。
即总宽度 = 内容宽度 + 内边距 + 边框 + 外边距。

  • box-sizing: border-box; 设置模型为怪异盒模型 (IE 盒模型)

width,height 仅包含内容宽度,内边距、边框,但不包含外边距。
即设置的 width 值 = 内容宽度 + 内边距 + 边框宽度。

position 定位

关键术语定义

定位祖先元素:指元素的祖先节点中,position属性值不为static的最近元素。对于absolute定位,它是定位的参考系;对于sticky定位,它决定了粘性效果的有效范围。

包含块(containing block):元素布局和定位的参考框。
对于position为static或relative的元素,包含块通常是其最近的块级祖先元素的内容区域;
对于absolute定位元素,包含块是其定位祖先元素的padding区域;
对于fixed定位元素,包含块是视口。

position属性值

position: static | relative | absolute | fixed | sticky;
  • static: 静态定位(默认值),遵循常规流布局,不参与定位。

元素的position属性值为static时,元素的top、right、bottom、left属性值不会生效。

  • relative: 相对定位 ,相对于其正常位置进行偏移,不脱离文档流。自身在常规流中的位置仍然保留

增加top、right、bottom、left这些属性后,便会相对于自身在常规流中的位置进行定位

  • absolute: 绝对定位,相对于定位祖先元素进行偏移定位,元素将完全脱离文档流

绝对定位元素的定位参考系是其最近的「定位祖先元素」(即position值不为static的祖先元素)。
若祖先元素中存在position为relative、absolute、fixed或sticky的元素,则该元素会作为定位参考系。
若不存在任何定位祖先元素,元素会最终相对于根元素(html)进行定位,而非body元素。

  • fixed: 固定定位,,相对于视口(viewport)进行偏移定位,元素将完全脱离文档流

固定定位的元素不会随页面滚动而移动,始终保持在视口的固定位置。
固定定位元素会完全脱离文档流,不占据任何布局空间

  • sticky: 粘性定位,是一种位置感知的混合定位方式,优先相对于最近的可滚动祖先元素定位

结合了 relative 和 fixed 定位的特点,根据滚动位置动态切换行为:

  • 当元素在视口内可见(未达到触发点)时,表现为 relative 定位,遵循正常文档流
  • 当元素滚动到指定的触发位置(由top/right/bottom/left定义)时,表现为 fixed 定位,固定在视口的指定位置
  • sticky 定位的元素始终相对于其最近的可滚动祖先元素或视口(视口滚动时)进行定位

sticky关键特性与注意事项

  1. 必须至少设置 top、right、bottom、left 四个偏移属性中的一个,否则 sticky 定位不会生效,元素将表现为 static 定位
  2. 元素的粘性效果仅在其包含块(containing block)的范围内有效,超出包含块边界后将停止固定
  3. z-index 属性在 sticky 元素中有效,可以控制层叠顺序
  4. 与 fixed 定位的区别:sticky 元素不会脱离文档流布局空间,且其固定效果受限于父容器

float 浮动

浮动元素会部分脱离文档流,不占据正常文档流的垂直空间,但仍会在水平方向上影响周围元素的排列(其他元素会环绕在其周围)。

float: left | right | none | inherit;
  • left: 元素向左浮动,将向左移动,直到遇到另一个浮动元素或父元素的边缘。
  • right: 元素向右浮动,将向右移动,直到遇到另一个浮动元素或父元素的边缘。
  • none: 元素不浮动,默认值
  • inherit: 规定从父元素继承 float 属性的值。

浮动元素的排列规则:

  • 如果元素A是浮动的,且A元素上一个元素也是浮动的,那么A元素会跟随在上一个元素的后边(如果一行放不下这两个元素,那么A元素会被挤到下一行)。
  • 如果A元素上一个元素是标准流中的元素,那么A的相对垂直位置不会改变,即A的顶部总是和上一个元素的底部对齐。
  • 元素浮动前在标准流中是竖向排列的,浮动后可以实现横向排列效果。

注意:浮动元素默认会收缩宽度以适应内容(除非显式设置宽度),且可能导致父元素高度塌陷等问题。

img
本来五个元素应该垂直排列,其中div1和div5都在标准流中。但由于div2和div3设置了float: right;、div4设置了float: left;,具体表现为:

  • div2和div3会向右浮动,直到右边缘
  • div4会向左浮动,直到左边缘
  • div5会遵循标准流的排列规则,紧贴在div1下面
  • 由于浮动元素会部分脱离文档流,div4会浮动在div5的上方。

清除浮动

clear: left | right | both | none;
  • left: 元素的左侧不允许有浮动元素。
  • right: 元素的右侧不允许有浮动元素。
  • both: 元素的左右两侧均不允许有浮动元素。
  • none: 元素允许有浮动元素,默认值

对于CSS的清除浮动(clear),请记住:这个规则只能影响使用清除的元素本身,不能影响其他元素。

img
由于给div3加上了clear: right;,它会不允许右侧有其他浮动元素,因此即使div2和div3都设置了float: right;,div3也会另起一行,紧贴在div2的下方排列;

布局模型

flex布局

  • display: flex;设置为flex弹性布局,称为Flex容器(flex container)
  • 所有子元素自动成为容器成员,称为Flex项目(flex item)

img

"main axis" 主轴,默认水平方向,从左到右。
"cross axis" 交叉轴,与主轴垂直,默认垂直方向,从上到下。
"main start" 主轴起点。
"main end" 主轴终点。
"cross start" 交叉轴起点。
"cross end" 交叉轴终点。
项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。

flex容器属性

注意:带有-reverse后缀的值会保持布局轴的方向不变(水平/垂直),但反转项目在该轴上的排列顺序(起点变终点,终点变起点)),同时也会反转对齐点(如justify-content: flex-start会变成从右向左对齐)。

flex-direction 属性决定主轴的方向(即项目的排列方向)
.box {flex-direction: row | row-reverse | column | column-reverse;
}

row(默认值):主轴为水平方向,起点在左端。
row-reverse:主轴为水平方向,起点在右端。
column:主轴为垂直方向,起点在上沿。
column-reverse:主轴为垂直方向,起点在下沿。

flex-wrap属性定义,如果一条轴线排不下,如何换行
.box{flex-wrap: nowrap | wrap | wrap-reverse;
}

nowrap(默认):不换行。
wrap:换行,第一行在上方。
wrap-reverse:换行,第一行在下方。

flex-flow属性是flex-direction属性和flex-wrap属性的简写形式
.box{flex-flow: <flex-direction> <flex-wrap>;
}

默认值为row nowrap

justify-content属性定义了项目在主轴上的对齐方式
.box{justify-content: flex-start | flex-end | center | space-between | space-around | space-evenly;
}

flex-start(默认值):左对齐。
flex-end:右对齐。
center:居中对齐。
space-between:两端对齐,项目之间的间隔相等。
space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。
space-evenly:项目与项目之间的间隔相等,项目与边框的间隔也相等。

align-items属性定义项目在交叉轴上如何对齐
.box{align-items: flex-start | flex-end | center | baseline | stretch;
}

flex-start:交叉轴的起点对齐。
flex-end:交叉轴的终点对齐。
center:交叉轴的中点对齐。
baseline: 项目的第一行文字的基线对齐。
stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。

align-content属性定义了多根轴线的对齐方式

如果项目只有一根轴线,该属性不起作用。

.box{align-content: flex-start | flex-end | center | space-between | space-around | space-evenly | stretch;
}

flex-start:与交叉轴的起点对齐。
flex-end:与交叉轴的终点对齐。
center:与交叉轴的中点对齐。
space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。
space-around:每根轴线两侧的间隔相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。
space-evenly:轴线与边框的间隔也相等。
stretch(默认值):轴线占满整个交叉轴。

项目的属性

order属性定义项目的排列顺序。

数值越小,排列越靠前,默认为0。

.item {order: <integer>;
}
flex-grow属性定义项目的放大比例

默认为0,即如果存在剩余空间,也不放大。

.item {flex-grow: <number>;
}

如果所有项目的flex-grow属性都为1,则它们将等比例放大,占满剩余空间。

flex-shrink属性定义了项目的缩小比例

默认为1,即如果空间不足,该项目将缩小。

.item {flex-shrink: <number>;
}

如果所有项目的flex-shrink属性都为1,当空间不足时,它们将等比例缩小。
如果一个项目的flex-shrink属性为0,其他项目都为1,则空间不足时,前者不缩小。

flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)
.item {flex-basis: <length> | auto; /* default auto */
}
flex属性是flex-grow, flex-shrink 和 flex-basis的简写

默认值为0 1 auto。后两个属性可选。

.item {flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]
}

该属性有两个快捷值:auto (1 1 auto)none (0 0 auto)

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

可覆盖align-items属性。
默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch。

.item {align-self: auto | flex-start | flex-end | center | baseline | stretch;
}

Grid布局

  • display:grid; 则该容器是一个块级元素
  • display: inline-grid; 则容器元素为行内元素
    img

网格线 grid line:划分网格的线,称为"网格线。网格线会被编号帮我们定位每一个网格项目。

  • 如果有m列则有m+1根垂直网格线,有n行则有n+1根水平网格线
  • 编号从左到右,从上到下为1,2,3排列;也有从右到左,从下到上的-1,-2,-3排列

网格单位 grid cell:网格容器里面一个个网格项目元素就是网格单位
网格轨道 grid track:一个网格轨道就是网格中两条平行线之间的空间,就好比表格中行或列
网格区域 grid area:多个网格线包围的总空间。网格区域可以包含任意数量的网格单元。

CSS Grid灵活布局函数与关键字

repeat()函数

该函数接收两个参数,第一个参数为重复次数,第二个参数为需要重复的值
用于重复指定的网格轨道模式,简化具有多个相同尺寸列或行的网格定义。

repeat(次数, 尺寸);

示例:

/* 创建4个宽度均为100px的列 */
grid-template-columns: repeat(4, 100px);/* 创建3个等宽列 */
grid-template-columns: repeat(3, 1fr);
minmax()函数

minmax()函数产生一个长度范围,接收两个参数,第一个参数为最小值,第二个为最大值。
定义一个尺寸范围,网格轨道的大小将在这个范围内自适应调整。

minmax(最小值, 最大值);

示例:

/* 创建列宽至少为100px,最多为1fr的3列 */
grid-template-columns: repeat(3, minmax(100px, 1fr));
auto关键字

根据内容自动调整网格轨道的大小。

/* 第一列宽度根据内容自动调整,第二列占据剩余空间 */
grid-template-columns: auto 1fr;
auto-fill关键字

在可用空间内尽可能多地创建指定尺寸的网格轨道,即使没有足够的内容填充。

/* 在容器中尽可能多地创建200px宽的列 */
grid-template-columns: repeat(auto-fill, 200px);/* 结合minmax使用,创建响应式列 */
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
auto-fit关键字

与auto-fill类似,但会折叠空的网格轨道,使非空轨道扩展填充剩余空间。

/* 在容器中创建适应内容的列,空列会被折叠 */
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));

Grid属性

grid-template-columns/rows 网格轨道的宽高(列宽和行高)
  • grid-template-columns:定义每一列的列宽
  • grid-template-rows:定义每一行的行高
/* 直接定义行列数、列宽行高 */
/* 定义了三列 每一行50px */
grid-template-columns: 50px 50px 50px;
/* 定义了三行 每一行50px */
grid-template-rows: 50px 50px 50px;/* 定义网格线的名称(按需求而定):大小前面使用数组可以定义网格线的名称,可以有很多个名称,多个名称用空格隔开。 */
/* 定义了三列 每一行50px 并给网格线命名为a b c d */
grid-template-columns: [a] 50px [b] 50px [c] 50px [d];
/* 定义了三行 每一行50px 并给网格线命名为a b c d */
grid-template-rows: [a] 50px [b] 50px [c] 50px [d];
grid-template-areas网格布局区域 和 grid-area网格项目定位
  • grid-template-areas:该属性一般与grid-area一起使用,grid-template-areas属性在容器上制定各个区域并命名
  • grid-area:grid-area属性指定项目放在哪一个区域内。

grid-area为项目属性

/* 网格布局区域 */
.container {grid-template-areas:"header header header""sidebar main main""footer footer footer";
}
/* 项目属性 */
.header {grid-area: header;
}
省略...

img

. 表示空轨道,不占用任何空间
命名的网格区域必须包含在grid-template-areas属性中定义的区域内。

grid-row-gap && grid-column-gap && grid-gap 设置间距

在现代浏览器中,相关属性已经进行了简化,grid- 前缀被移除

  • grid-row-gap:设置行间距
  • grid-column-gap:设置列间距
  • grid-gap:同时设置行间距和列间距
/* 设置行间距为20px */
row-gap: 20px;/* 设置列间距为30px */
column-gap: 30px;/* 同时设置行间距为20px,列间距为30px */
grid-gap: 20px 30px;
Grid 布局中的简写属性grid-template && grid-gap
  • grid-template:grid-template-columns、grid-template-rows、grid-template-areas的简写属性
  • grid-gap:grid-row-gap、grid-column-gap的简写属性
/* 定义网格布局 */
grid-template:"header header header" 50px /*第一行高度为50px*/"sidebar main main" 1fr /*第二行高度为1fr*/"footer footer footer" 50px /*第三行高度为50px*// 200px 1fr 200px; /*列宽为200px 1fr 200px*//* 同时设置行间距为20px,列间距为30px */
grid-gap: 20px 30px;
grid-auto-flow 网格排列顺序

grid 容器的子元素默认会按照先行后列的顺序放置
grid-auto-flow 属性决定,默认值是 row。也可以设成 column,变成先列后行

  • row dense:按行排列,并尝试填充空白区域。
  • column dense:按列排列,并尝试填充空白区域。
justify-items属性、align-items属性以及place-items属性

控制所有网格项目在其单元格内的对齐方式

  • justify-items:定义网格项目在单元格内沿行轴(水平方向)的对齐方式。
  • align-items:定义网格项目在单元格内沿列轴(垂直方向)的对齐方式。
  • place-items:是 justify-items 和 align-items 的简写属性,用于同时设置这两个属性。
justify-items: start | end | center | stretch;
align-items: start | end | center | stretch;
place-items: <align-items> <justify-items>;

start:项目在当前轴的起始位置
end:项目在当前轴的结束位置
center:项目在当前轴的中间位置
stretch:项目会拉伸以填充整个单元格。

justify-content 属性、align-content 属性以及 place-content 属性

控制整个网格区域在Grid容器中的对齐方式

  • justify-content:定义网格区域在容器内沿行轴(水平方向)的对齐方式。
  • align-content:定义网格区域在容器内沿列轴(垂直方向)的对齐方式。
  • place-content:是 justify-content 和 align-content 的简写属性,用于同时设置这两个属性。
justify-content: start | end | center | stretch | space-around | space-between | space-evenly;
align-content: start | end | center | stretch | space-around | space-between | space-evenly;
place-content: <align-content> <justify-content>

start:项目在当前轴的起始位置
end:项目在当前轴的结束位置
center:项目在当前轴的中间位置
stretch:当网格总大小小于容器大小时,拉伸网格填满整个容器
space-around:项目周围留有空白。
space-between:项目之间有空白,第一个项目在起始位置,最后一个项目在结束位置。
space-evenly:项目之间有空白,包括第一个项目和最后一个项目。

grid-auto-columns&grid-auto-rows 隐式网格轨道的宽高(列宽和行高)

grid-auto-columns 和 grid-auto-rows 定义了当网格项超出显式网格范围时,浏览器自动创建的列和行的大小,即隐式网格的大小

  • grid-auto-columns:定义隐式网格列的宽度。
  • grid-auto-rows:定义隐式网格行的高度。

如果不指定这两个属性,浏览器完全根据单元格内容的大小,决定新增网格的列宽和行高

项目属性

grid-column-start 属性、grid-column-end 属性、grid-row-start 属性以及grid-row-end 属性
  • grid-column-start属性:网格项在列方向的起始网格线。
  • grid-column-end属性:网格项在列方向的结束网格线。
  • grid-row-start属性:网格项在行方向的起始网格线。
  • grid-row-end属性:网格项在行方向的结束网格线。

指定网格线的起始和结束位置,来定义网格项占据的列和行范围

img

.wrapper {display: grid;grid-gap: 10px;grid-template-rows: [a] 1fr [b] 1fr [c] 1fr [d] 1fr [e];grid-template-columns: [a] 1fr [b] 1fr [c] 1fr [d] 1fr [e];
}
/* 直接写入索引 */
#div1 {background-color: red;grid-row: 2 / 3;grid-column: 2 / 3;
}
/* 使用命名网格线 */
#div2 {background-color: green;grid-row: c / d;grid-column: b / c;
}

grid-column属性:是 grid-column-start 和 grid-column-end 的简写属性。
grid-row属性:是 grid-row-start 和 grid-row-end 的简写属性。

  • span 关键字:表示网格项跨越多列或多行

img

#div3 {background-color: blue;grid-column: 4 / 5;grid-row: 2 / span 3;
}
  • z-index属性:指定网格项目的重叠顺序。

使用这四个属性如果产生了重叠,则可以使用z-index指定项目的重叠顺序。

img
黄色覆盖了蓝色

#div4 {background-color: yellow;grid-column: 3 / 5;grid-row: 4 / 5;z-index: 1;
}

浏览器会根据z-index属性值,将项目按照从大到小的顺序进行绘制。
因此,z-index 较大的项目会覆盖 z-index 较小的项目。
默认值是0,表示不重叠。

justify-self 属性、align-self 属性以及 place-self 属性

控制单个网格项目在其单元格内的对齐(覆盖容器的items属性设置)

  • justify-self:定义网格项目在单元格内沿行轴(水平方向)的对齐方式。
  • align-self:定义网格项目在单元格内沿列轴(垂直方向)的对齐方式。
  • place-self:是 justify-self 和 align-self 的简写属性,用于同时设置这两个属性。
.item {justify-self: start | end | center | stretch;align-self: start | end | center | stretch;
}
grid-area 属性

通过grid-area属性,将网格项分配给一个命名的网格区域。

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

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

相关文章

通过中国信通院SQL质量管理最高等级评测,天翼云TeleDB引领数据库管理新标准!

近日,天翼云数据管理服务(DMS)顺利通过中国信息通信研究院“SQL质量管理平台分级基础能力检验”专项评测。依据《大数据 结构化查询语言(SQL)质量管理平台能力分级要求》标准,在SQL采集、审核、查询优化三大能力…

AtCoder Regular Contest 208 (Div. 2) 题解

ARC 208 题解Link A 我以为是一个贪心题。套路地,统计 \(f_i\) 表示第 \(i\) 位上 \(1\) 的个数,由于要求我们 \(\rm or\) 的值不能改变,也就是不能出现二进制下的退位和进位,以及当前位上 \(1\) 的个数必须 \(\ge…

第三十篇

今天是10月30日,上了数据结构和体育

代码大阅读笔记

设计是软件的 “骨架”,好的设计能让系统更易扩展、更易维护;反之,糟糕的设计会导致系统后期 “牵一发而动全身”。这一部分的核心是 “如何通过合理的设计,降低系统复杂度”。​模块化设计​ 模块化是将系统拆分为…

第2次软件基础作业

这个作业属于哪个课程 软件工程课程班级首页这个作业的目标 实现一个命令行文本计数统计程序姓名-学号 毛佳睿-2023329301078https://gitee.com/mjrk/wc-program.git

第二次软件基础作业

https://gitee.com/mjrk/wc-program.git

vs2017安装qt插件及安装qt插件后的设置

vs2017安装qt插件及安装qt插件后的设置来源:https://blog.csdn.net/blqzj214817/article/details/127347193作者:疯狂Delphi出处:https://www.cnblogs.com/FKdelphi/本文版权归作者和博客园共有,欢迎转载,但未经作…

实用指南:从0死磕全栈之Next.js Server Actions 入门实战:在服务端安全执行逻辑,告别 API 路由!

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

KeyShot许可管理故障排除步骤

在使用KeyShot进行3D渲染时,有时可能会遇到许可证相关的问题,如许可证无法激活、许可证丢失或无法分配等。为了帮助您快速解决这些问题,本文将提供一份关于KeyShot许可管理故障排除步骤的宣传文章,确保您在面对许可…

各式各样的Attention - -一叶知秋

自注意力(Self-Attention)的计算复杂度问题Local Attention 🌟 一、为什么需要 Local Attention? 先回忆一下普通的 Self-Attention:每个词都要对序列中 所有其他词 计算注意力权重。如果句子长度是 n, 则计算量…

重塑生产力:天翼云全球首发RaaS,开启“机器人即服务”商业时代!

近日,GITEX Global 2025科技盛会在迪拜圆满落幕。中国电信以“连接智能未来,赋能数字生态”为主题,在这场全球科技盛宴中精彩亮相,全方位展示了其在云计算、物联网、视联网与数字安全等领域的尖端解决方案。会上,…

Python自然语言处理(NLP)入门

自然语言处理(Natural Language Processing,简称NLP)是人工智能领域的一个重要分支,它致力于使计算机能够理解和处理人类语言。Python因其简洁的语法和强大的库支持,成为了自然语言处理的首选语言之一。今天,我们…

【计算机视觉】分水岭搭建医学诊断

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

mysql和java获取经纬度的距离的两种方式

mysql和java获取经纬度的距离的两种方式mysql和java获取经纬度的距离的两种方式 T713802819052   取车距离:40333   还车距离:15303 根据订单号vlookup关联一下,单位是 米 1.java与mysql的计算公式是一一对…

SQL索引及调优

SQL索引及调优一:索引的含义及用法 ● 索引index:一种特殊的查找结构,它存储了表中特定列的值,并对这些值进行排序,同时保存了指向原表行数据的物理地址指针。 ● 先查索引,通过索引查表,提高查询效率。 ● 优点…

Sequence2Sequence - -一叶知秋

Sequence2SequenceSequence-to-Sequence(简称 Seq2Seq) 是一种用于序列到序列(Sequence → Sequence)映射任务的深度学习模型结构。 它最早由 Google 在 2014 年提出,用于 机器翻译(Machine Translation),后来…

Python列表 _ 创一个购物清单

Python列表 _ 创一个购物清单shopping_list = []shopping_list.append("键盘")shopping_list.append("键帽")print(shopping_list)print(shopping_list[0])print(len(shopping_list))price = [1,2…

如何在Golang项目中集成Prometheus进行监控?

本文将带大家学习如何在 Golang 项目中集成 Prometheus 进行监控,包括安装客户端库、定义和注册指标、暴露指标端点、更新指标值、配置标签和注册表,以及生产环境的建议配置。 添加 Prometheus 客户端库依赖 在 Go 项…

第177天:信息收集篇自动项目本机导出外部打点域内通讯PillagerBloodHound

工具信息收集 内网中 个人用机的角色 账号密码存储 1,浏览器自动存储 2,自己创建文件记录 3,某些工具自动存储 今天的这些工具就是可以对以上这些进行信息进行提取,如果是web服务器或者数据库服务器,用这些工具收…

如何在Linux中,为Flatpak版本的Edge浏览器导入证书

当使用 Flatpak 版本的 Edge 浏览器时,可能会遇到缺少证书管理功能的问题。本文提供了两种解决方案:1)通过 edge://certificate-manager/localcerts 内部链接图形化导入证书;2)将证书文件复制到系统信任目录 /etc…