CSS 选择器Day01

news2024/11/28 21:49:23

CSS 定义:层叠样式表(Cascading Style Sheets,缩写为 CSS),是一种用于定义网页或文档的外观和样式的标记语言。

CSS是一种 样式表 语言,用来描述 HTML 文档的呈现 (美化内容)。它用于控制文本的字体、颜色、间距、布局、背景等各种样式属性,以及通过选择器来选择要应用样式的HTML元素。

CSS的主要目的是将内容和样式分离,使得网页结构和外观可以独立修改,从而增加了网页的可维护性和灵活性。

CSS Day01

  • 导入 -- >==CSS书写位置:==
      • 导入Test
  • 选择器
    • 基本选择器
      • 【 1 】无法差异化
        • < 1 >. 元素选择器(标签选择器):
        • < 2 >. 通配符选择器:
      • 【 2 】可差异化
        • < 1 >. ID选择器:
        • < 2 >. 类选择器:
    • 复合选择器
      • 【 1 】后代选择器和子代选择器的区别
        • < 1 >后代选择器:某元素的后代元素。
        • < 2 >子代选择器
      • 【 2 】并集选择器和交集选择器的区别
        • 1. 并集选择器(Union Selector):
        • 2. **交集选择器(Intersection Selector)**:
      • 【 3 】伪类选择器
      • 伪类选择器和伪元素选择器是两种不同的CSS选择器,它们有以下区别:
        • < 1 >结构伪类选择器
        • < 2 >伪元素选择器
        • 相邻兄弟选择器(Adjacent Sibling Selector):

在CSS中,样式规则通常由选择器和一组属性-值对组成。

导入 – >CSS书写位置:

在一个HTML文档中,你可以将CSS样式放置在以下位置:

CSS的三种引入方式,分别是内联式、嵌入式和外部式。
  1. 内联样式_(行内样式、内联式):可以直接在HTML元素的style属性中定义样式。这样的样式仅适用于特定元素。例如:
<p style="color: blue;">这是一个蓝色的段落。</p>

通过JavaScript,您可以访问元素的style属性,然后修改或设置其样式属性的值。这使得在响应用户交互或其他动态事件时能够实时改变元素的外观。

<p style="color: blue; font-size: 16px;">这是一个行内样式的段落。</p>

  1. 内部样式表_(嵌入式)

     使用CSS代码写在 style 标签里面
    

你可以在HTML文档的<head>标签内使用<style>标签来定义样式。这些样式适用于整个文档。例如:

<head>
    <style>
        p {
            color: green;
        }
    </style>
</head>
<body>
    <p>这是一个绿色的段落。</p>
</body>
  1. 外部样式表_(外部式)

     CSS 代码写在单独的 CSS 文件中 (.css)
    

你可以将CSS样式定义在一个独立的外部样式表文件中,通常以.css扩展名保存。然后,通过使用<link>元素将它链接到HTML文档中。这是最常用的方式,因为它可以在多个页面之间共享样式。例如:

在HTML文档中的<head>标签内添加以下代码:

<head>
    <link rel="stylesheet" href="目标地址"> /*rel关系--样式表,link引入*/
</head>

然后,在名为styles.css的外部样式表文件中定义样式规则:

p {
    color: purple;
}

这样,所有的段落文本将被设置为紫色,且这个样式可以在多个HTML文件中重复使用。

选择哪种放置CSS的方法取决于你的需求和项目的规模。通常,外部样式表是更好的选择,因为它提供了分离内容和样式的优势,并允许在多个页面之间共享样式定义。

导入Test

HTML

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Css导入方式</title>
    <!-- link 引入外部样式表; rel: 关系,样式表 -->
    <link rel="stylesheet" href="./Day03_MyCss/my02_01.css">
  </head>
  <body>
    <p>这是 p 标签</p>
    <!-- 3.>行内样式: 配合 JavaScript 使用
CSS 写在标签的 style 属性值里 -->
    <div style="color: aqua; font-size: 45px;"> 这是 div 标签</div>
  </body>
</html>

在这里插入图片描述

CSS

/*02-01导入测试的CSS*/
p {
  color: red;
}

在这里插入图片描述
html和css的关系
在这里插入图片描述

选择器

CSS选择器的主要作用是定义哪些HTML元素应该应用特定的样式规则。具体来说,选择器用于:

  1. 定位元素:选择器允许您精确地定位HTML文档中的元素,以便为这些元素定义样式。例如,您可以使用选择器选择所有段落元素或特定类的元素。

  2. 样式应用:一旦选择器匹配了特定的HTML元素,您可以通过CSS规则为这些元素定义样式属性,如颜色、字体、边框等。这样,您可以使文档的外观和布局更具吸引力和一致性。

  3. 响应式设计:选择器可以与媒体查询结合使用,使您能够根据屏幕大小、设备类型或其他条件应用不同的样式,从而创建响应式的网页设计。

  4. 伪类和伪元素:选择器还允许您选择元素的特定状态,如鼠标悬停或元素的第一个子元素。这可以用于创建交互效果或调整文本的样式。

第四点中提到的伪类和伪元素选择器的示例包括:

  1. :hover伪类:这个伪类选择器用于在鼠标悬停在元素上时应用样式。例如,要在鼠标悬停在链接上时改变链接的颜色,您可以使用以下规则:

        color: red;    }    ```
    
  2. :first-child伪类:这个伪类选择器选择元素的第一个子元素。例如,要为列表中的第一个列表项应用特殊样式,您可以使用以下规则:

        font-weight: bold;    }    ```
    
  3. ::before伪元素:这个伪元素选择器用于在元素的内容前插入生成的内容。例如,要在段落前添加引号,您可以使用以下规则:

        content: "“";    }    ```
    
  4. :nth-child伪类:这个伪类选择器允许您选择元素的特定位置,例如奇数或偶数位置的子元素。以下是一个选择奇数行的表格行的示例:

        background-color: lightgray;    }    ```
    
    

这些伪类和伪元素选择器可用于创建交互效果、调整布局以及为页面的不同部分应用不同的样式,从而增强用户体验和网页设计的灵活性。

总之,CSS选择器是网页开发中的关键工具,它们使开发人员能够有选择地为不同的HTML元素定义样式,从而创建吸引人的用户界面和用户体验。

基本选择器

基础选择器是用于选择HTML和CSS中元素的基本工具。以下是四个常见的基础选择器:

【 1 】无法差异化

< 1 >. 元素选择器(标签选择器):
	它使用元素的名称作为选择器,
	例如:p,h1,div,a,img......选择所有段落元素。

使用HTML元素的标签名作为选择器,用于选中所有匹配的元素并设置相同的样式。
选中同名标签设置相同的样式,无法差异化同名标签。

<p>选中同名标签设置相同的样式,无法差异化同名标签</p>
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>标签选择器</title>
    <style>
    p{
      color: chartreuse;
    }
  </style>
  </head>
  <body>
    <p>p标签1</p>
    <p>p标签2</p>
    <p1>p标签3</p1>
    <div>div_标签</div>
  </body>
</html>

在这里插入图片描述

< 2 >. 通配符选择器:
它使用`*`作为选择器,匹配所有元素,例如,`*`选择页面上的所有元素。它们设置相同的样式。通常用于重置或清除浏览器的默认样式,以确保在网页设计的初期得到一致的起点。

使用了通配符选择器来将文本颜色设置为红色。这可以确保在设计网页时,所有元素的文本颜色都被重置为红色,而不受浏览器默认样式的影响。

<style>
 * {
    color: red;
 }
</style>

这是一个常见的用法,尤其是在开始网页设计时,以确保你从一个干净的状态开始,然后逐步为各个元素添加自定义的样式,要谨慎使用,以免过度重置浏览器默认样式。

【 2 】可差异化

< 1 >. ID选择器:
它使用元素的唯一标识符(ID)作为选择器,以`#`开头,例如,`#myId`选择具有`id="myId"`属性的元素。
  1. 定义ID选择器: 在CSS样式表中,使用井号(#)开头,然后跟着ID名称来定义ID选择器。例如:#red
<style>
  /*定义id选择器*/
  #red{
    color: chartreuse;
  }
</style>
  1. 应用ID选择器: 在HTML中,通过添加 id 属性并指定ID名称,可以将ID选择器应用于一个元素。请注意,一个页面中的同一个ID应该是唯一的,不能多次使用相同的ID。
    <div id="red"> 这是div标签</div>
< 2 >. 类选择器:
它使用元素的类名作为选择器,以`.`开头,例如,`.myClass`选择所有具有`class="myClass"`属性的元素。
	查找标签,差异化设置标签的显示效果。步骤:
定义类选择器->.类名
使用类选择器>标签添加 class="类名"
  1. 定义类选择器: 在CSS样式表中,使用点(.)开头,然后跟着类名来定义类选择器。例如:.red.size
<style>
  /*定义类选择器*/
  .red{
    color: red;
  }
  .size{
    font-size: 70px;
  }
</style>
  1. 应用类选择器: 在HTML中,通过添加 class 属性并指定类名,可以将类选择器应用于一个或多个标签。例如:<div class="red"><p class="red size">

  2. 多个类名: 一个标签可以同时应用多个类选择器(即:不允许加入多个class),但可以多个属性值,只需在 class 属性中用空格分隔不同的类名,每个类名都会为该标签提供相应的样式。

<div class="red">这是div标签</div>
<p class="red size">这是p标签</p>

在这里插入图片描述

  1. 命名规范: 类名应该具有见名知意的特性,避免使用纯数字或中文。多个单词可以使用短横线 - 连接,使用有意义的类名,这将使得CSS代码更易于维护和理解。

这些是最基本的选择器,您可以使用它们来选择和样式化HTML元素。CSS还提供了许多其他选择器,以便更精确地选择和控制元素。

复合选择器

复合选择器是CSS中的一种选择器,它由两个或多个简单选择器通过不同的方式组合而成,用于更准确、更高效地选中HTML元素。

【 1 】后代选择器和子代选择器的区别

主要区别在于选择的范围。后代选择器选择更广泛的元素范围,包括嵌套在更深层次的元素,而子代选择器只选择直接嵌套在指定父元素内部的子元素。

< 1 >后代选择器:某元素的后代元素。

写法: 父选择器 子选择器{CSS属性},父子选择器之间用空格隔开。
后代选择器(Descendant Selector)是一种CSS选择器,它用于选择指定元素的所有后代元素,无论后代元素位于多深的嵌套层次中。后代选择器使用空格分隔多个简单选择器。

<div>
    <p>这是一个后代选择器示例。</p>
    <div>
        <p>这也是被选择的后代元素。</p>
    </div>
</div>
  • 选择范围:后代选择器选择指定祖先元素内的所有后代元素,包括嵌套在深层次的子元素和孙元素。
  • 语法:使用空格分隔多个选择器,例如 ancestor descendant
  • 示例:div p 选择了所有在<div> 元素内的 <p> 元素,不论它们的层级如何。
<style>
  div span{
    color: green;
  }
//选择特定的一个后代
  .container p {
    color: bisque;
  }


</style>

<span>span标签</span>
<style></style>
<div>
  <span>文字是绿色的</span>
    <br>
    <p>
    <span>asfdd</span>
	</p>
    
  <span>as</span>
</div>
<br>

<div class="container">
  <p>This is a paragraph inside a container.</p>
</div>

在这里插入图片描述

< 2 >子代选择器

子代选择器(Child Selector),在CSS中用 > 符号表示,是一种CSS选择器,用于选择某个元素的直接子元素。

<ul>
    <li>直接子元素 1</li>
    <li>直接子元素 2</li>
</ul>
  • 选择范围:子代选择器只选择指定父元素的直接子元素,不包括更深层次的后代元素。
  • 语法:使用 > 符号分隔父元素和子元素的选择器,例如 parent > child
  • 示例:ul > li 选择了所有直接嵌套在 <ul> 元素内部的 <li> 元素,不会选择嵌套在 <li> 内部的其他元素。
<style>
  div > span{
    color: aqua;
  }
</style>

<div>
  <span>div的子span标签</span>
  <p>
    <span>孙子span标签</span>
  </p>
</div>

在这里插入图片描述

【 2 】并集选择器和交集选择器的区别

并集选择器用于选择满足其中任何一个条件的元素,而交集选择器用于选择同时满足多个条件的元素。

1. 并集选择器(Union Selector):
并集选择器选中多组标签设置相同的样式
选择器1,选择器2,...,选择器N{CSS 属性},选择器之间用,隔开选择器写法、
建议L:每多一个选择器和一个逗号就一个换行)
  • 语法:并集选择器使用逗号 , 分隔多个选择器,它会选择匹配任何一个选择器的元素。
  • 示例:selector1, selector2
  • 选择范围:并集选择器将选择与任何一个选择器匹配的元素。
<style>
    /* (建议,每多一个选择器和一个逗号就一个换行)
   */
    div,
    p,
    span{
        color: lightskyblue;
    }
</style>

<div>div标签</div>
<p>p标签</p>
<span>span标签</span>
//嵌套也可
<div>
    <span>
        <p>asds</p>
    </span>
</div>
<br>

在这里插入图片描述

2. 交集选择器(Intersection Selector)
  • 语法:交集选择器使用无空格的多个选择器,它只会选择同时满足所有选择器条件的元素。
  • 示例:selector1.selector2
  • 选择范围:交集选择器将选择同时匹配所有选择器的元素。
  • 举例:.class1.class2 选择了同时具有 class1class2 类的元素。
<div class="class1 class2">这是一个具有两个类的元素</div>
<p class="class1">这是一个只有一个类的段落</p>

在这个示例中,只有第一个 <div> 元素同时具有两个类,所以它被选择。

<style>
  /* 既又的关系:既是 p 标签,又是有 box 类  */
  p.box{
    color: violet;
  }


</style>

<p class="box">p标签 。使用了类选择器</p>
<p>p标签</p>
<div class="box">div标签 。使用了类选择器</div>
<br>

在这里插入图片描述

【 3 】伪类选择器

伪类选择器:伪类表示元素状态,选中元素的某个状态设置样式。

伪类选择器(Pseudo-class Selector)是CSS中的一种选择器,用于选择具有特定状态或特征的HTML元素,而不是仅仅基于它们的名称、类或ID。伪类选择器以冒号 : 开头,通常用于为元素的特定状态或行为应用样式。

  1. :hover:选择鼠标悬停在元素上的状态。通常用于创建悬停效果。
a:hover {
    color: red;
}
//用户鼠标方式的时候
//鼠标悬停状态:选择器: hover:{ CSS 属性 }
<style>
  a:hover{
    color: darkmagenta;
  }
  .box:hover {
    color: aquamarine;
  }
</style>

<a href="#">a标签</a>
<div class="box">div标签</div>
  1. :active:选择被激活或点击的元素,例如点击一个链接时。
button:active {
    background-color: green;
}
  1. :focus:选择获得焦点的元素,通常与表单元素一起使用。
input:focus {
    border-color: blue;
}
  1. :nth-child(n):选择父元素的第 n 个子元素。可以用来创建奇偶行样式等。
li:nth-child(odd) {
    background-color: #f0f0f0;
}
  1. :not(selector):选择不匹配指定选择器的元素。
p:not(.special) {
    font-style: italic;
}
  1. :first-child:last-child:分别选择父元素的第一个和最后一个子元素。
ul > li:first-child {
    font-weight: bold;
}

ul > li:last-child {
    font-style: italic;
}

这些伪类选择器使你能够根据元素的状态或位置来选择和样式化它们,增强了CSS的强大功能,以实现更丰富的样式效果和交互体验。

  1. 伪类-超链接(拓展)
    超链接一共有四个状态

选择器–作用
:link–访问前
:visited–访问后
:hover–鼠标悬停
:active–点击时(激活)

提示:如果要给超链接设置以上四个状态,需要按LVHA的顺序书写



<style>
  /* 工作中,一个 a 标签选择器设置超链接的样式.hover状态特殊设置 */
  /* a:link{
    color: red;
}
a:visited{
  color: green;
}
a:hover{
  color: blue;
}
a:active{
  color: yellow;
} */
即:
a{
  color: aqua;
}
a:hover{
  color: gold;
}
</style>
<a href="#">a标签,测试伪装</a>

伪类选择器和伪元素选择器是两种不同的CSS选择器,它们有以下区别:

  1. 选择目标

    • 伪类选择器:用于选择具有特定状态或特征的HTML元素,例如 :hover 选择悬停状态的元素或 :nth-child(odd) 选择奇数位置的元素。

    • 伪元素选择器:用于在选定元素的内容之前或之后创建虚拟元素,并对这些虚拟元素应用样式。例如 ::before 在元素内容前插入虚拟元素,或 ::after 在元素内容后插入虚拟元素。

  2. 语法

    • 伪类选择器:以单冒号 : 开头,后跟伪类名称,例如 :hover

    • 伪元素选择器:以双冒号 :: 开头,后跟伪元素名称,例如 ::before

  3. 作用方式

    • 伪类选择器:选择现有的HTML元素并根据它们的状态或特征应用样式,但不会创建新的元素。

    • 伪元素选择器:创建虚拟元素,并将其插入到选定元素的内容之前或之后,然后对这些虚拟元素应用样式,以实现装饰或效果的目的。

  4. 示例

    • 伪类选择器示例

      a:hover {
          color: blue;
      }
      

      这个规则选择了所有悬停状态下的链接并将它们的颜色设置为蓝色。

    • 伪元素选择器示例

      p::before {
          content: "注:";
          font-weight: bold;
      }
      

      这个规则在每个段落的内容之前插入一个虚拟元素,带有加粗的文本 “注:”。

总之,伪类选择器用于选择和样式化现有元素的特定状态或特征,而伪元素选择器用于创建虚拟元素并在其上应用样式以添加额外的装饰性内容。它们在CSS中有不同的作用和语法。

< 1 >结构伪类选择器

结构伪类选择器是CSS中用于根据元素在其父元素中的结构关系来选择元素的一种方式。以下是一些常见的结构伪类选择器及其说明:

  1. :first-child:选择某元素的第一个子元素。

    li:first-child {
        background-color: green;
    }
    

    这个规则会选择每个 <li> 元素,但只有当它们是其父元素的第一个子元素时,背景颜色才会变为绿色。

  2. :last-child:选择某元素的最后一个子元素。

    li:last-child {
        font-weight: bold;
    }
    

    这个规则会选择每个 <li> 元素,但只有当它们是其父元素的最后一个子元素时,文本字体加粗。

  3. :nth-child(N):选择某元素的第 N 个子元素,其中 N 是一个整数。

偶数标签:2n
奇数标签:2n+1,2n-12
5的倍数:5n
第五个以后的 n+5
第五个以前的 -n+5

li:nth-child(2) {
    text-decoration: underline;
}

这个规则会选择其父元素中的第二个 <li> 元素,并给它添加下划线。

这些结构伪类选择器允许你以根据元素在其父元素中的位置来选择和样式化元素,从而实现更具体的效果。

< 2 >伪元素选择器

伪元素选择器是CSS中的一种用于创建虚拟元素(伪元素)并在其上应用样式的方式。它们通常用于在元素的内容之前或之后插入装饰性的内容或样式。常见的伪元素选择器包括 ::before::after

以下是一些关于伪元素选择器的重要信息:

  • ::before 伪元素:在选定元素的内容之前插入虚拟元素。

    p::before {
        content: "前缀 ";
        font-weight: bold;
    }
    

    这个规则会在每个 <p> 元素的内容之前插入带有加粗文本的前缀。

  • ::after 伪元素:在选定元素的内容之后插入虚拟元素。

    button::after {
        content: " (点击我)";
        color: blue;
    }
    

    这个规则会在每个 <button> 元素的内容之后插入蓝色文本,用于提示用户点击按钮。

注意事项:

  • 必须设置 content 属性来定义伪元素的内容。如果没有内容,可以将其设置为空字符串。
  • 伪元素默认是行内元素,但可以通过设置其他样式属性来更改其显示方式。
  • 伪元素的权重与它们所附加的选择器相同,因此与其它选择器的权重相比,伪元素的权重通常较低。

伪元素选择器允许你在不修改HTML结构的情况下,通过CSS添加额外的装饰性内容,从而增强页面的视觉效果。

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

选择与指定元素在同一层级且紧跟在其后的元素。例如,选择所有 h2 元素后面的紧邻的 p 元素:

h2 + p {
    /* CSS规则 */
}

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

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

相关文章

Java安全之servlet内存马分析

目录 前言 什么是中间键 了解jsp的本质 理解servlet运行机制 servlet的生命周期 Tomcat总体架构 查看Context 的源码 servlet内存马实现 参考 前言 php和jsp一句话马我想大家都知道&#xff0c;早先就听小伙伴说过一句话木马已经过时了&#xff0c;现在是内存马的天下…

力扣:114. 二叉树展开为链表(Python3)

题目&#xff1a; 给你二叉树的根结点 root &#xff0c;请你将它展开为一个单链表&#xff1a; 展开后的单链表应该同样使用 TreeNode &#xff0c;其中 right 子指针指向链表中下一个结点&#xff0c;而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。…

【WebGIS实例】(11)Cesium自定义区域裁剪(挖除挖出)

前言 本篇博客完全参考cesium-地面裁剪(多个剪切面)_cesium clippingplane-CSDN博客&#xff0c;感谢孙霸天大佬提供的实现方法。在此博客的基础上&#xff0c;本篇博客做了以下工作&#xff1a; 修复点位集合逆时针和顺时针导致不同的结果的问题新增了挖出的实现方案创建裁切面…

算法基础课

第一讲 基础算法 快速排序 归并排序 二分 整数二分模板 关键------画一个仅有整数的一维横轴 bool check(int x) {/* ... */} // 检查x是否满足某种性质 // check()判断mid是否满足性质// 区间[l, r]被划分成[l, mid]和[mid 1, r]时使用&#xff1a; int bsearch_1(in…

数据结构--Trie字符串统计

1、“Trie树” 作用&#xff1a; 高效地存储和查找字符串集合的数据结构。 2、“Trie树” 存储字符串的形式如下&#xff1a; 用 “0” 来表示 “根节点&#xff08;root&#xff09;”。存入一个字符串时&#xff0c;会在字符串最后结尾的那个字符节点打上标记。比如&#x…

No163.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

Java-多线程基础及线程安全

文章目录 1. 线程的状态1.1 观察线程的所有状态1.2 观察线程的转态和转移 2. 多线程带来的风险, 线程安全2.1 观察线程不安全2.2 线程安全的概念2.3 线程不安全的原因2.4解决上述代码的线程不安全问题 3. synchronized 关键字3.1 synchronized 的特性3.2 synchronized 使用示例…

【Leetcode】 450. 删除二叉搜索树中的节点

给定一个二叉搜索树的根节点 root 和一个值 key&#xff0c;删除二叉搜索树中的 key 对应的节点&#xff0c;并保证二叉搜索树的性质不变。返回二叉搜索树&#xff08;有可能被更新&#xff09;的根节点的引用。 一般来说&#xff0c;删除节点可分为两个步骤&#xff1a; 首先…

数学小把戏 6174

Wills健身房的手牌编号就是存放衣服的柜子。 柜子是狭长的L或7型&#xff0c;竖着放刚够塞进双肩背包&#xff0c;偶尔我横过来塞进 L 型底座或7的顶柜。 尴尬来的比偶尔次数还是多一点。 在我换衣服时候&#xff0c;旁边的柜子要打开&#xff0c;压迫感陡然拉满。局促的空间…

黑马程序员 MySQL数据库入门到精通——进阶篇(1)

黑马程序员 MySQL数据库入门到精通——进阶篇&#xff08;1&#xff09; 1. 存储引擎1.1 MySQL体系结构1.2 存储引擎简介1.3 存储引擎特点1.3.1 InnoDB1.3.2 MyISAM1.3.3 Memory1.3.4 三种存储引擎对比 1.4 存储引擎选择 2. 索引2.1 索引概述&#xff08;Index Overview&#x…

css复合选择器

交集选择器 紧紧挨着 <template><div><p class"btn">Click me</p><button class"btn" ref"myButton" click"handleClick">Click me</button></div> </template> <style> but…

内存函数(memcpy、memmove、memset、memcmp)你真的懂了吗?

&#x1f493;博客主页&#xff1a;江池俊的博客⏩收录专栏&#xff1a;C语言进阶之路&#x1f449;专栏推荐&#xff1a;✅C语言初阶之路 ✅数据结构探索&#x1f4bb;代码仓库&#xff1a;江池俊的代码仓库&#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐ 文…

一键智能视频语音转文本——基于PaddlePaddle语音识别与Python轻松提取视频语音并生成文案

前言 如今进行入自媒体行业的人越来越多&#xff0c;短视频也逐渐成为了主流&#xff0c;但好多时候是想如何把视频里面的语音转成文字&#xff0c;比如&#xff0c;录制会议视频后&#xff0c;做会议纪要&#xff1b;比如&#xff0c;网课教程视频&#xff0c;想要做笔记&…

wdb_2018_2nd_easyfmt

wdb_2018_2nd_easyfmt Arch: i386-32-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x8047000)32位只开了NX 这题get到一点小知识&#xff08;看我exp就知道了 int __cdecl __noreturn main(int argc, const char…

字节一面:深拷贝浅拷贝的区别?如何实现一个深拷贝?

前言 最近博主在字节面试中遇到这样一个面试题&#xff0c;这个问题也是前端面试的高频问题&#xff0c;我们经常需要对后端返回的数据进行处理才能渲染到页面上&#xff0c;一般我们会讲数据进行拷贝&#xff0c;在副本对象里进行处理&#xff0c;以免玷污原始数据&#xff0c…

ARP欺骗攻击实操

目录 目录 前言 系列文章列表 全文导图 1&#xff0c;ARP概述 1.1,ARP是什么&#xff1f; 1.2,ARP协议的基本功能 1.3,ARP缓存表 1.4,ARP常用命令 2&#xff0c;ARP欺骗 2.1,ARP欺骗的概述? 2.2,ARP欺骗的攻击手法 3&#xff0c;ARP攻击 3.1,攻击前的准备 3.2,…

数学建模Matlab之评价类方法

大部分方法来自于http://t.csdnimg.cn/P5zOD 层次分析法 层次分析法&#xff08;Analytic Hierarchy Process, AHP&#xff09;是一种结构决策的定量方法&#xff0c;主要用于处理复杂问题的决策分析。它将问题分解为目标、准则和方案等不同层次&#xff0c;通过成对比较和计算…

软件设计模式系列之二十——备忘录模式

备忘录模式目录 1 模式的定义2 举例说明3 结构4 实现步骤5 代码实现6 典型应用场景7 优缺点8 类似模式9 小结 备忘录模式是一种行为型设计模式&#xff0c;它允许我们在不暴露对象内部细节的情况下捕获和恢复对象的内部状态。这个模式非常有用&#xff0c;因为它可以帮助我们实…

HTML——列表,表格,表单内容的讲解

文章目录 一、列表1.1无序&#xff08;unorder&#xff09;列表1.2 有序&#xff08;order&#xff09;列表1.3 定义列表 二、表格**2.1 基本的表格标签2.2 演示 三、表单3.1 form元素3.2 input元素3.2.1 单选按钮 3.3 selcet元素 基础部分点击&#xff1a; web基础 一、列表 …

全面解析‘msvcp140.dll丢失的解决方法’这个问题

msvcp140.dll 是什么东西&#xff1f; msvcp140.dll 是 Microsoft Visual C 2015 Redistributable Package 中的一个动态链接库文件。它包含了 C运行时库中的函数和类&#xff0c;这些函数和类在开发 C应用程序时被广泛使用。msvcp140.dll 的主要作用是在 Windows 操作系统中提…