CSS学习笔记之高级教程(五)

23、CSS 媒体查询 - 实例

/* 如果屏幕尺寸超过 600 像素,把 <div> 的字体大小设置为 80 像素 */
@media screen and (min-width: 600px) {div.example {font-size: 80px;}
}/* 如果屏幕大小为 600px 或更小,把 <div> 的字体大小设置为 30px */
@media screen and (max-width: 600px) {div.example {font-size: 30px;}
}
@media screen and (max-width: 900px) and (min-width: 600px) {div.example {font-size: 50px;padding: 50px;border: 8px solid black;background: yellow;}
}
/* 当宽度在 600 像素到 900 像素之间或大于 1100 像素时 - 更改 <div> 的外观 */
@media screen and (max-width: 900px) and (min-width: 600px), (min-width: 1100px) {div.example {font-size: 50px;padding: 50px;border: 8px solid black;background: yellow;}
}

23.1 下面演示一个简单的例子,让我们来更改不同设备的背景色:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>body{background-color: lightblue;}/* 响应式布局 - 当屏幕小于 700 像素宽时,让两列堆叠而不是并排 */@media screen and (max-width: 900px) {body {background-color: yellow;}}@media screen and (min-width: 600px) {body {background-color: pink;}}</style>
</head><body></body></html>

23.2 菜单的媒体查询

在本例中,我们使用媒体查询来创建响应式导航菜单,该菜单在不同的屏幕尺寸上会有所不同:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>* {box-sizing: border-box;}.container {background-color: #333;overflow: hidden;}.container a {color: white;text-decoration: none;padding: 15px 20px;display: block;float: left;font-size: 20px;}/* 在宽度为 600 像素或更小的屏幕上,使菜单链接彼此堆叠,而不是并排 */@media screen and (min-width: 500px) {.container a {float: left;}.container {background-color: pink;}}/* 在宽度为 900 像素或更大的屏幕上,使菜单链接彼此并排 */@media screen and (max-width: 900px) {.container a {float: none;/* width: 100%; */}.container {background-color: #333;}}</style>
</head><body><div class="container"><a href="#">Link</a><a href="#">Link</a><a href="#">Link</a></div></body></html>

23.3 列的媒体查询

媒体查询的常见用法是创建弹性布局。在本例中,我们创建了一个布局,该布局在四列、两列和全宽列之间变化,具体取决于不同的屏幕尺寸:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>* {box-sizing: border-box;}/* 清除列后的浮动 */.container:after {content: "";display: table;clear: both;}.column {float: left;width: 25%;/* padding: 20px; */}/* 在宽度小于或等于 600px 的屏幕上,使列堆叠在一起,而不是彼此相邻 */@media screen and (max-width: 600px) {.column {width: 100%;}}</style>
</head><body><div class="container"><div class="column" style="background-color:#aaa;"><h2>Column 1</h2><p>Some text..</p></div><div class="column" style="background-color:#bbb;"><h2>Column 2</h2><p>Some text..</p></div><div class="column" style="background-color:#ccc;"><h2>Column 3</h2><p>Some text..</p></div><div class="column" style="background-color:#ddd;"><h2>Column 4</h2><p>Some text..</p></div></div></body></html>

或使用flex(响应布局)

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>* {box-sizing: border-box;}.container{display: flex;flex-wrap: wrap;}/* 清除列后的浮动 */.container:after {content: "";display: table;clear: both;}.column {flex: 25%;padding: 20px;}/* 在宽度小于或等于 600px 的屏幕上,使列堆叠在一起,而不是彼此相邻 */@media screen and (max-width: 600px) {.column {flex: 100%;}}</style>
</head><body><div class="container"><div class="column" style="background-color:#aaa;"><h2>Column 1</h2><p>Some text..</p></div><div class="column" style="background-color:#bbb;"><h2>Column 2</h2><p>Some text..</p></div><div class="column" style="background-color:#ccc;"><h2>Column 3</h2><p>Some text..</p></div><div class="column" style="background-color:#ddd;"><h2>Column 4</h2><p>Some text..</p></div></div></body></html>

24、CSS 网格布局模块

24.1 设置网格布局

  • HTML 元素的 display 属性设置为 gridinline-grid 时,它就会成为网格容器。
.container{display:grid;
}
.container{display:inline-grid;
}

这两者的区别是:
一个是块级;一个是行内块级

24.2 网格布局介绍

24.2.1 网格列(Grid Columns)

  • 网格项的垂直线被称为列。
    在这里插入图片描述

24.2.2网隔行(Grid Rows)

  • 网格项的水平线被称为行。
    在这里插入图片描述

24.2.3 网格间隙(Grid Gaps)

  • 每列/行之间的间隔称为间隙。
    在这里插入图片描述

您可以通过使用以下属性之一来调整间隙大小:

  • grid-column-gap // 竖直间隙
  • grid-row-gap// 水平间隙
  • grid-gap // 是 row-gap 和column-gap 属性的简写属性,或者携程grid-gap;

24.2.4 网格行(Grid Lines)

列线与竖线

  • 列之间的线称为列线(column lines)。
  • 行之间的线称为行线(row lines)。

在这里插入图片描述

24.3 网格容器

24.3.1 grid-template-columns属性:定义网格布局中的列数,并可定义每列的宽度

后面几个数值就默认为几列

  • grid-template-columns: 100px 100px 100px 100px; (设置网格列数 这里设置为4列,每一列宽度为100px)
  • grid-template-columns: auto auto auto auto;(设置网格列数 这里设置为4列,每一列自动分配宽度来填满表格容器。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为100px *//* grid-template-columns: 100px 100px 100px 100px; *//* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;/* 设置网格项目间间隙 */gap: 10px 10px;}.grid-item{background-color: lightblue;padding: 20px;text-align: center;border: 1px solid white;}</style>
</head><body><div class="gird-container"><div class="grid-item">1</div><div class="grid-item">2</div><div class="grid-item">3</div><div class="grid-item">4</div><div class="grid-item">5</div><div class="grid-item">6</div><div class="grid-item">7</div><div class="grid-item">8</div></div></body></html>

运行效果:
在这里插入图片描述

24.3.1.2 通过使用repeat(重复次数,重复值)函数,可以简写重复的值。
  • 数值:直接设置重复次数,即列数
  /* 相当于:grid-template-columns: 100px 100px 100px 100px; */grid-template-columns: repeat(4,100px);
  • auto-fill:表示自动填充,让一行或一列中尽可能地容纳更多的单元格。
 /* 表示自动填充,让一行或一列中尽可能地容纳更多的单元格。 */grid-template-columns: repeat(auto-fill,200px);

运行效果:

在这里插入图片描述

24.3.1.3 比例fr:表示片段,为了方比那表示比例关系
   /* 使用比例,表示第一个列宽度设置为200px,后面剩余的宽度被按照比例划分,分别为剩余宽度的1/3和2/3 */grid-template-columns: 200px 1fr 2fr;

运行效果:

在这里插入图片描述

24.3.1.4 范围minmax
  • minmax:产生一个长度范围,表示长度就在这个范围值中都可以应用到网格项目中。第一个参数就是最小值,第二个参数时最大值。
/* 使用比例 */grid-template-columns: minmax(100px,300px);

24.3.2 grid-template-rows 属性:定义每列的高度

  • 其拥有和grid-template-columns差不多的属性值可选,例如:repeat()函数fr比例关系auto-fill自动填充minmax长度范围
    .gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;/* 设置网格项目间间隙 */gap: 10px 10px;/* 设置第一行 第二行 每一列的高度 */grid-template-rows: 100px 200px;}

运行效果:
在这里插入图片描述

24.3.3 justify-content 属性

  • justify-content 属性用于在容器内对齐整个网格。网格的总宽度必须小于容器的宽度,这样 justify-content 属性才能生效。
  • justify-content 属性(水平)对齐弹性容器的项目,当项目不占用主轴上所有可用空间时。
    在这里插入图片描述
24.3.3.1 justify-content: flex-start;( 默认值。项目位于容器的开头。)
 .gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;/* 设置网格项目间间隙 */gap: 10px 10px;/* 设置第一行 第二行 每一列的高度 *//* grid-template-rows: 100px 200px; *//*  */justify-content: flex-start;}

在这里插入图片描述

24.3.3.2 justify-content: flex-end;( 项目位于容器的结尾。)
  .gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;/* 设置网格项目间间隙 */gap: 10px 10px;/* 设置第一行 第二行 每一列的高度 *//* grid-template-rows: 100px 200px; *//*  */justify-content: flex-end;}

在这里插入图片描述

24.3.3.3 justify-content: center;(项目位于容器中央。)
.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;/* 设置网格项目间间隙 */gap: 10px 10px;/* 设置第一行 第二行 每一列的高度 *//* grid-template-rows: 100px 200px; *//*  */justify-content:center;}

在这里插入图片描述

24.3.3.4 justify-content: space-between;(项目在行与行之间留有间隔)

在这里插入图片描述

24.3.3.5 justify-content: space-around;( 项目在行之前、行之间和行之后留有空间。)

在这里插入图片描述

24.3.4 justify-items属性:(规定全部单元格在自身内部行内方向的对齐方式)

在这里插入图片描述

24.3.4.1 justify-items: start;
  .gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 *//* grid-template-columns: auto auto auto auto; */grid-template-columns: 1fr 1fr;/* 设置网格项目间间隙 */gap: 10px 10px;/* 设置第一行 第二行 每一列的高度 *//* grid-template-rows: 100px 200px; *//*  *//* justify-content:space-around; *//* 单元格内部对齐方式 */justify-items: start;}

在这里插入图片描述

24.3.4.2 justify-items: center;

在这里插入图片描述

24.3.5 align-content 属性:用于垂直方向对齐容器内的整个网格

在这里插入图片描述

24.3.5.1 align-content: end;

在这里插入图片描述

24.3.5.2 align-content: start;

在这里插入图片描述

24.3.5.3 align-content: center;

在这里插入图片描述

24.3.5.4 align-content: space-between;

在这里插入图片描述

24.3.5.4 align-content: space-around;

在这里插入图片描述

24.3.5.6 align-content: stretch;(默认值。行拉伸以占据剩余空间。)

在这里插入图片描述

24.3.6 align-items 属性:(用于设置网格内部全部单元格的垂直位置)

在这里插入图片描述

24.3.6.1 align-items: flex-start;

在这里插入图片描述

24.3.6.1 align-items: flex-end;

在这里插入图片描述

24.3.7 grid-auto-flow 属性

  • 默认情况下,网格中子元素的排列顺序都是“先行后列”,填充完第一行之后,再开始放入第二行。
    在这里插入图片描述
24.3.7.1 grid-auto-flow: column;
   .gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 *//* grid-template-columns: auto auto auto auto; */grid-template-columns: 1fr 1fr 1fr;grid-template-rows:100px 100px;/* 设置网格项目间间隙 */gap: 10px 10px;/* 网格中子元素的排列顺序 */grid-auto-flow: column;}

在这里插入图片描述

24.3.7.2 grid-auto-flow: row;

在这里插入图片描述

24.4 网格项目

  • 容器中的子元素也叫做项目。
  • 通常容器在每一行的每一列都有一个网格项目,但是可以通过设置网格项目的样式,让它们跨越多个列或多个行。
  • 使用grid-column-start、grid-column-end、grid-column属性

示例:把网格项目放在列线 1,并在列线 3 结束它:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 *//* grid-template-columns: auto auto auto auto; */grid-template-columns: 1fr 1fr 1fr;grid-template-rows:100px 100px;/* 设置网格项目间间隙 */gap: 10px 10px;}.gird-container div {background-color: lightblue;padding: 20px;border: 1px solid white;}.grid-item1{grid-column-start: 1;grid-column-end: 3;/*可简写为grid-column:1 / 3; */}</style>
</head><body><div class="gird-container"><div class="grid-item1">1</div><div class="grid-item2">2</div><div class="grid-item3">3</div><div class="grid-item4">4</div></div></body></html>

在这里插入图片描述

示例:把网格项目放在行线 1,并在行线 3 结束它:

 .grid-item1{/* grid-column-start: 1;grid-column-end: 3; */grid-row-start: 1;grid-row-end: 3;/*可简写为grid-row:1 / 3; */}

在这里插入图片描述

24.4.1grid-area 属性

该属性可以用作 grid-row-start、grid-column-start、grid-row-end 和 grid-column-end 属性的简写属性。
注意顺序

/* 简写 grid-row-start、grid-column-start、grid-row-end 和 grid-column-end */grid-area: 1 / 1 / 3 / 3;

表示使 “item1” 从 row-line 1 和 column-line 1 开始,在 row-line 3 和 column line 3 结束(包前不包后)即,横向和纵向各占位2个。

.item8 {grid-area: 2 / 1 / span 2 / span 3;
}

表示使 “item8” 从 row-line 2 和 column-line 1开始,并跨越 2 行和 3 列

24.4.2 justify-self 属性:(单个网格项在行内方向的对齐方式。在网格项上设置。优先级比justify-items高。)

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;grid-template-rows:100px 100px;/* 设置网格项目间间隙 */gap: 10px 10px;/* 单元格位置(水平) */justify-items: start;}.gird-container div {background-color: lightblue;padding: 20px;border: 1px solid white;}.grid-item1{justify-self:flex-end;}</style>
</head><body><div class="gird-container"><div class="grid-item1">1</div><div class="grid-item2">2</div><div class="grid-item3">3</div><div class="grid-item4">4</div><div class="grid-item5">5</div><div class="grid-item6">6</div></div></body></html>

在这里插入图片描述

24.4.3 align-self 属性:(该属性用于设置某个单元格内容的垂直位置,优先级比align-items高)

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto auto;grid-template-rows:100px 100px;/* 设置网格项目间间隙 */gap: 10px 10px;/* 单元格位置(水平) */justify-items: start;/* 单元格位置(垂直) */align-items: flex-end;}.gird-container div {background-color: lightblue;padding: 20px;border: 1px solid white;}.grid-item1{/* 单元格位置(水平)  优先级高于justify-items*/justify-self:flex-end;/*  单元格位置(垂直)  优先级高于 align-items */align-self: flex-start;}</style>
</head><body><div class="gird-container"><div class="grid-item1">1</div><div class="grid-item2">2</div><div class="grid-item3">3</div><div class="grid-item4">4</div><div class="grid-item5">5</div><div class="grid-item6">6</div></div></body></html>

在这里插入图片描述

24.5 实践

思路:参考24.2.4 网格行(Grid Lines)
在这里插入图片描述

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.gird-container {/* 设置为网格布局,并且占据页面一整行 */display: grid;background-color: #2196F3;padding: 10px;/* 设置网格列数 这里设置为4列,每一列宽度为1/4宽度 */grid-template-columns: auto auto auto ;/* 设置网格项目间间隙 */gap: 10px 10px;}.gird-container div {background-color: lightblue;padding: 20px;border: 1px solid white;text-align: center;}@media screen and (max-width: 600px) {/* .grid-item1{grid-area: 1 / 1 / span 1 / span 3;}.grid-item2{grid-area: 3 / 3 / 4 / 4;}.grid-item3{grid-area: 2 / 1 / 3 / 2;}.grid-item4{grid-area: 2 / 2 / 4 / 3;}.grid-item5{grid-area: 3 / 1 / 4 / 2;}.grid-item6{grid-area: 2 / 3 / 3 / 4;} */.grid-item1{grid-area: 1 / 1 / span 1 / span 3;}.grid-item2{grid-area: 3 / 3 / span 1 / span 1;}.grid-item3{grid-area: 2 / 1 / span 1 / span 1;}.grid-item4{grid-area: 2 / 2 / span 2 / span 1;}.grid-item5{grid-area: 3 / 1 / span 1 / span 1;}.grid-item6{grid-area: 2 / 3 / span 1 / span 1;}}</style>
</head><body><div class="gird-container"><div class="grid-item1">1</div><div class="grid-item2">2</div><div class="grid-item3">3</div><div class="grid-item4">4</div><div class="grid-item5">5</div><div class="grid-item6">6</div></div></body></html>

24.6 对比flex

1、和flex布局相比之下的区别
Grid网格布局和flexbox的主要区别:flexbox是一维布局(沿横向或者纵向),Grid是二维布局(同时沿着横向和纵向)

举例:当使用flexbox布局,设置了flex-wrap :
nowrap;之后,换行后的元素并不会与上一行的元素对齐,当使用了nowrap之后,每个新行都变成了一个新的弹性容器,空间分布只在行内进行。

2、什么情况下选择grid布局还是flexbox布局?
可参考以下三点:
(1)换行需要与上一行元素对齐?选择Grid
(2)需要同时按行和列控制布局?选择Grid
(3)只需要按行或者列控制布局?选择flexbox

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

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

相关文章

程序员的五大职业素养,你知道吗?

程序员职业生涯的挑战与机遇 在当今这个科技日新月异的时代&#xff0c;程序员作为技术行业的中坚力量&#xff0c;其职业生涯无疑充满了无数挑战与机遇。技术的快速迭代要求他们必须不断学习新知识、掌握新技能&#xff0c;以跟上时代的步伐。同时&#xff0c;云计算、人工智…

学习经验分享篇(1)——怎样将示波器数据(.CSV数据)导入Matlab/Simulink中并进行FFT分析(电机控制/电力电子方向必备技能)

最近比较忙&#xff0c;没怎么更新&#xff0c;后续打算不断出一些学习贴。 1.为什么要出这篇文章&#xff1f; &#xff08;1&#xff09;我当时第一次导示波器数据进入Matlab里面的时候&#xff0c;一直疯狂报错&#xff0c;搞了好久。 &#xff08;2&#xff09;好多同学现…

一点连接千家银行,YonSuite让“银行回单”一键获取

在当今日益复杂多变的商业环境中&#xff0c;企业的资金管理变得尤为重要。传统的银行回单管理方式&#xff0c;如手动登录网银、逐一下载回单、核对信息等&#xff0c;不仅效率低下&#xff0c;而且容易出错&#xff0c;给企业的财务管理带来了极大的挑战。 然而&#xff0c;…

【Pytorch】深入Pytorch模型的训练、log、可视化

文章目录 模型训练的模板综合案例-Pytorch 官网demo优化记录日志解析日志增加tensorboard数据记录保存训练曲线模型参数可视化增加wandb数据记录模型训练的模板 综合案例-Pytorch 官网demo pytorch 官网tutorial-quickstart https://blog.csdn.net/weixin_39107270/article/de…

安装 Android Studio 2024.1.1.6(Koala SDK35)和过程问题解决

记录更新Android Studio版本及适配Android V应用配置的一些过程问题。 安装包&#xff1a;android-studio-2024.1.1.6-windows.exe原版本&#xff1a;Android Studio23.2.1.23 Koala 安装过程 Uninstall old version 不会删除原本配置&#xff08;左下角提示&#xff09; Un…

YOLOv5改进 | 主干网络 | 将主干网络替换为轻量化的ShuffleNetv2【原理 + 完整代码】

&#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 目标检测是计算机视觉中一个重要的下游任务。对于边缘盒子的计算平台来说&#xff0c;一个大型模型很难实现实时检测的要求。基于一系列消融…

MQ之初识kafka

1. MQ简介 1.1 MQ的诞生背景 以前网络上的计算机&#xff08;或者说不同的进程&#xff09;传递数据&#xff0c;通信都是点对点的&#xff0c;而且要实现相同的协议&#xff08;HTTP、 TCP、WebService&#xff09;。1983 年的时候&#xff0c;有个在 MIT 工作的印度小伙突发…

前端开发记录

一.Node相关 镜像&#xff1a;registry "https://registry.npmmirror.com" 二.Eslint格式检查 关闭语法格式检查

【MySQL03】【 Buffer Pool】

文章目录 一、前言二、缓冲池&#xff08;Buffer Pool &#xff09;1. 缓冲池的概念2. LRU List、Free List 和 Flush List2.1 Free 链表2.1.1 缓冲页的哈希处理 2.2 Flush 链表2.3 LRU 链表2.3.1 简单 LRU 链表2.3.2 优化后的 LRU 列表2.3.3 更进一步的优化 3. 脏页的刷新4. 多…

B端产品无爆款,说有的都是忽悠和外行!

前言&#xff1a;网上经常有人讲运营&#xff0c;把C端那一套硬搬到B端&#xff0c;讲的自我陶醉&#xff0c;稍微有点常识的人就知道不能这么玩。 一、什么是B端和C端 B端&#xff08;Business-to-Business&#xff09;是指面向企业客户的市场和产品。B端产品或服务主要是为…

Elastic Connectors:增量同步对性能的影响

作者&#xff1a;Artem Shelkovnikov Elastic 连接器是一种 Elastic 集成&#xff0c;可将数据从原始数据源同步到 Elasticsearch 索引。连接器使你能够创建可搜索的只读数据源副本。 有许多连接器支持各种第三方&#xff0c;例如&#xff1a; MongoDB各种 SQL DBMS&#xff…

【大学物理实验】速通双语版

0首先&#xff0c;我们要学什么&#xff1f;outlook&#xff01; 1measurement 2system error&random error 3significant figures 4uncertainty of direct measurement and indirect measurement 5data processing 1 measurement Important points to remember&#…

从Multisim到Proteus,再到SmartEDA:电子设计软件的进化之旅

在电子设计领域&#xff0c;软件工具的演进犹如一条璀璨的轨迹&#xff0c;记录着科技进步的每一个步伐。从Multisim的初创&#xff0c;到Proteus的崛起&#xff0c;再到如今SmartEDA的崭露头角&#xff0c;这些电子设计软件不仅极大地提升了设计效率&#xff0c;更推动了整个行…

fly-barrage 前端弹幕库(6):实现人像免遮挡

项目官网地址&#xff1a;https://fly-barrage.netlify.app/&#xff1b; &#x1f451;&#x1f40b;&#x1f389;如果感觉项目还不错的话&#xff0c;还请点下 star &#x1f31f;&#x1f31f;&#x1f31f;。 Gitee&#xff1a;https://gitee.com/fei_fei27/fly-barrage&a…

vue3+vant4 二次封装IndexBar城市列表组件以及性能优化

前言 二次封装城市列表以及对静态资源的引入做异步引入优化。 版本号: vue3.3 vant4 效果图 数据源 城市列表 city.json 永久网盘链接 链接&#xff1a;https://pan.baidu.com/s/10E-b441-4P7mjvomlJhm0g 提取码&#xff1a;m92c 字段大致讲解 indexList &#xff1a;每个字…

开窗函数!

开窗函数&#xff08;Window Function&#xff09;是SQL中的一种高级功能&#xff0c;允许你在一组相关行&#xff08;一个“窗口”&#xff09;上执行聚合操作&#xff0c;而不像传统聚合函数&#xff08;如SUM(), AVG(), COUNT()&#xff09;那样将所有匹配行合并成单个汇总行…

大数据的数据采集

大数据采集是指从各种来源收集大量数据的过程&#xff0c;这些数据通常是结构化或非结构化的&#xff0c;并且可能来自不同的平台、设备或应用程序。大数据采集是大数据分析和处理的第一步&#xff0c;对于企业决策、市场分析、产品改进等方面具有重要意义。以下是大数据采集的…

Vue3项目炫酷实战,检测密码强度值

在前端项目开发中&#xff0c;确保用户密码的强度是保护账户安全的重要措施。本文将演示如何使用Vue 3实现一个简单的密码强度检测功能。通过实时反馈&#xff0c;帮助用户创建更安全的密码&#xff0c;从而提升整体系统的安全性。无论您是前端开发新手还是经验丰富的开发者&am…

与5月汽车销量共舞:MK米客方德SD NAND助力车载T-box

上周末&#xff0c;各家车企集体公布5月销量数据&#xff0c;新能源车龙头比亚迪单月销量遥遥领先&#xff0c;数据显示&#xff0c;比亚迪5月新能源汽车销量33.18万辆&#xff0c;上年同期销量24.02万辆。1至5月&#xff0c;比亚迪新能源汽车销量累计127.13万辆&#xff0c;同…

重生之 SpringBoot3 入门保姆级学习(17、整合SSM)

重生之 SpringBoot3 入门保姆级学习&#xff08;17、整合SSM&#xff09; 4、数据访问4.1 整合 ssm 4、数据访问 4.1 整合 ssm pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" …