【前端知识】常用CSS样式举例

文章目录

    • 一、Flex盒子布局
      • 1. Flexbox 的基本概念
      • 2. Flex 容器的属性
        • 2.1 `display`
        • 2.2 `flex-direction`
        • 2.3 `flex-wrap`
        • 2.4 `justify-content`
        • 2.5 `align-items`
        • 2.6 `align-content`
      • 3. Flex 项目的属性
        • 3.1 `order`
        • 3.2 `flex-grow`
        • 3.3 `flex-shrink`
        • 3.4 `flex-basis`
        • 3.5 `flex`
        • 3.6 `align-self`
      • 4. 示例
      • 5. 总结
    • 二、Position位置
      • 1. `static`(默认值)
      • 2. `relative`
      • 3. `absolute`
      • 4. `fixed`
      • 5. `sticky`
      • 总结
      • 注意事项
    • 三、Padding和Margin空白
    • 1. **`padding`(内边距)**
      • 属性值
      • 单独设置某个方向的内边距
      • 示例
    • 2. **`margin`(外边距)**
      • 属性值
      • 单独设置某个方向的外边距
      • 特殊值
      • 示例
    • 3. **`padding` 和 `margin` 的区别**
    • 4. **盒子模型(Box Model)**
      • 示例
    • 5. **注意事项**
    • 四、文字样式
    • 1. **字体相关属性**
      • 1.1 `font-family`
      • 1.2 `font-size`
      • 1.3 `font-weight`
      • 1.4 `font-style`
      • 1.5 `font-variant`
      • 1.6 `font`(简写属性)
    • 2. **文字颜色**
      • 2.1 `color`
    • 3. **文字对齐与装饰**
      • 3.1 `text-align`
      • 3.2 `text-decoration`
      • 3.3 `text-transform`
    • 4. **文字间距**
      • 4.1 `letter-spacing`
      • 4.2 `word-spacing`
      • 4.3 `line-height`
    • 5. **其他文字样式**
      • 5.1 `text-shadow`
      • 5.2 `white-space`
    • 五、伪类和伪元素
      • 一、伪类(Pseudo-classes)
        • 常见的伪类包括:
      • 二、伪元素(Pseudo-elements)
        • 常见的伪元素包括:
      • 三、伪类与伪元素的区别
    • 六、动画相关样式
      • 一、`transition`属性
      • 二、`transform`属性
      • 三、`@keyframes`规则
      • 四、`animation`属性
    • 七、待补充

一、Flex盒子布局

CSS Flexbox(弹性盒子布局)是一种用于页面布局的一维布局模型,旨在更高效地分配容器内的空间和对齐项目。它特别适合处理不同屏幕尺寸和设备上的布局问题。

1. Flexbox 的基本概念

Flexbox 布局涉及两个主要概念:

  • Flex 容器(Flex Container):应用 display: flexdisplay: inline-flex 的元素,其子元素成为 Flex 项目。
  • Flex 项目(Flex Items):Flex 容器的直接子元素。

2. Flex 容器的属性

2.1 display

定义容器为 Flex 容器:

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

定义主轴方向(即项目的排列方向):

.container {flex-direction: row | row-reverse | column | column-reverse;
}
  • row(默认):水平排列,从左到右。
  • row-reverse:水平排列,从右到左。
  • column:垂直排列,从上到下。
  • column-reverse:垂直排列,从下到上。
2.3 flex-wrap

定义项目是否换行:

.container {flex-wrap: nowrap | wrap | wrap-reverse;
}
  • nowrap(默认):不换行。
  • wrap:换行,第一行在上方。
  • wrap-reverse:换行,第一行在下方。
2.4 justify-content

定义项目在主轴上的对齐方式:

.container {justify-content: flex-start | flex-end | center | space-between | space-around | space-evenly;
}
  • flex-start(默认):左对齐。
  • flex-end:右对齐。
  • center:居中对齐。
  • space-between:两端对齐,项目之间的间隔相等。
  • space-around:每个项目两侧的间隔相等。
  • space-evenly:项目之间的间隔相等。
2.5 align-items

定义项目在交叉轴上的对齐方式:

.container {align-items: flex-start | flex-end | center | baseline | stretch;
}
  • flex-start:顶部对齐。
  • flex-end:底部对齐。
  • center:居中对齐。
  • baseline:基线对齐。
  • stretch(默认):拉伸以填充容器。
2.6 align-content

定义多根轴线的对齐方式(适用于多行 Flex 容器):

.container {align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
  • flex-start:顶部对齐。
  • flex-end:底部对齐。
  • center:居中对齐。
  • space-between:两端对齐,轴线之间的间隔相等。
  • space-around:每根轴线两侧的间隔相等。
  • stretch(默认):轴线拉伸以填充容器。

3. Flex 项目的属性

3.1 order

定义项目的排列顺序:

.item {order: <integer>; /* 默认值为 0 */
}

数值越小,排列越靠前。

3.2 flex-grow

定义项目的放大比例:

.item {flex-grow: <number>; /* 默认值为 0 */
}

如果所有项目的 flex-grow 都为 1,它们将等分剩余空间。如果一个项目的 flex-grow 为 2,它将占据更多空间。

3.3 flex-shrink

定义项目的缩小比例:

.item {flex-shrink: <number>; /* 默认值为 1 */
}

如果空间不足,项目将缩小。值为 0 时,项目不缩小。

3.4 flex-basis

定义项目在分配多余空间之前的主轴尺寸:

.item {flex-basis: <length> | auto; /* 默认值为 auto */
}

可以设置为固定长度(如 200px)或 auto

3.5 flex

flex-growflex-shrinkflex-basis 的简写:

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

默认值为 0 1 auto

3.6 align-self

定义单个项目在交叉轴上的对齐方式,覆盖 align-items

.item {align-self: auto | flex-start | flex-end | center | baseline | stretch;
}
  • auto(默认):继承容器的 align-items
  • 其他值与 align-items 相同。

4. 示例

<div class="container"><div class="item">1</div><div class="item">2</div><div class="item">3</div>
</div>
.container {display: flex;flex-direction: row;justify-content: space-between;align-items: center;height: 200px;border: 1px solid #000;
}.item {flex: 1;margin: 10px;background-color: lightblue;text-align: center;line-height: 100px;
}

5. 总结

Flexbox 提供了一种灵活的方式来布局和对齐项目,特别适合响应式设计。通过掌握 Flex 容器和 Flex 项目的属性,可以轻松实现复杂的布局需求。

二、Position位置

CSS 中的 position 属性用于控制元素的定位方式。它有五个主要值:staticrelativeabsolutefixedsticky。每个值决定了元素在文档中的定位行为。

1. static(默认值)

  • 描述:元素按照正常的文档流进行排列,toprightbottomleftz-index 属性无效。
  • 示例
    div {position: static;
    }
    

2. relative

  • 描述:元素相对于其正常位置进行定位。可以使用 toprightbottomleft 属性调整位置,但不会影响其他元素的布局。
  • 示例
    div {position: relative;top: 10px;left: 20px;
    }
    

3. absolute

  • 描述:元素相对于最近的已定位(非 static)祖先元素进行定位。如果没有这样的祖先元素,则相对于初始包含块(通常是 <html> 元素)。元素会脱离文档流,不占据空间。
  • 示例
    div {position: absolute;top: 50px;left: 100px;
    }
    

4. fixed

  • 描述:元素相对于视口进行定位,即使页面滚动,元素也会固定在指定位置。常用于创建固定导航栏或页脚。
  • 示例
    div {position: fixed;bottom: 0;right: 0;
    }
    

5. sticky

  • 描述:元素根据用户的滚动行为在 relativefixed 之间切换。当元素在视口中时,表现为 relative;当元素滚动到指定位置时,表现为 fixed
  • 示例
    div {position: sticky;top: 0;
    }
    

总结

  • static:默认定位,元素按正常文档流排列。
  • relative:相对自身正常位置定位。
  • absolute:相对最近的已定位祖先元素定位。
  • fixed:相对视口定位,固定不动。
  • sticky:根据滚动行为在 relativefixed 之间切换。

注意事项

  • 使用 absolutefixed 定位时,元素会脱离文档流,可能影响其他元素的布局。
  • sticky 定位需要指定 toprightbottomleft 中的一个或多个值,否则行为与 relative 相同。

通过合理使用 position 属性,可以实现复杂的布局效果。

三、Padding和Margin空白

paddingmargin 是 CSS 中用于控制元素内外边距的两个重要属性。它们分别用于调整元素内容与边框之间的距离(padding)以及元素与其他元素之间的距离(margin)。


1. padding(内边距)

padding 是元素内容与边框之间的空间。它位于元素的内容区域和边框之间,背景颜色或背景图片会覆盖 padding 区域。

属性值

  • 单个值:设置所有四个方向的内边距。
    padding: 10px; /* 上下左右均为 10px */
    
  • 两个值:第一个值设置上下内边距,第二个值设置左右内边距。
    padding: 10px 20px; /* 上下 10px,左右 20px */
    
  • 三个值:第一个值设置上内边距,第二个值设置左右内边距,第三个值设置下内边距。
    padding: 10px 20px 30px; /* 上 10px,左右 20px,下 30px */
    
  • 四个值:分别设置上、右、下、左的内边距(顺时针方向)。
    padding: 10px 20px 30px 40px; /* 上 10px,右 20px,下 30px,左 40px */
    

单独设置某个方向的内边距

  • padding-top:上内边距
  • padding-right:右内边距
  • padding-bottom:下内边距
  • padding-left:左内边距

示例

div {padding: 20px 30px; /* 上下 20px,左右 30px */background-color: lightblue;
}

2. margin(外边距)

margin 是元素与其他元素之间的空间。它位于元素边框之外,背景颜色或背景图片不会覆盖 margin 区域。

属性值

  • 单个值:设置所有四个方向的外边距。
    margin: 10px; /* 上下左右均为 10px */
    
  • 两个值:第一个值设置上下外边距,第二个值设置左右外边距。
    margin: 10px 20px; /* 上下 10px,左右 20px */
    
  • 三个值:第一个值设置上外边距,第二个值设置左右外边距,第三个值设置下外边距。
    margin: 10px 20px 30px; /* 上 10px,左右 20px,下 30px */
    
  • 四个值:分别设置上、右、下、左的外边距(顺时针方向)。
    margin: 10px 20px 30px 40px; /* 上 10px,右 20px,下 30px,左 40px */
    

单独设置某个方向的外边距

  • margin-top:上外边距
  • margin-right:右外边距
  • margin-bottom:下外边距
  • margin-left:左外边距

特殊值

  • auto:常用于水平居中。
    margin: 0 auto; /* 上下 0,左右自动(水平居中) */
    
  • 0:取消外边距。
  • 负值:允许元素与其他元素重叠。
    margin-top: -10px; /* 向上移动 10px */
    

示例

div {margin: 20px 30px; /* 上下 20px,左右 30px */background-color: lightgreen;
}

3. paddingmargin 的区别

特性padding(内边距)margin(外边距)
位置内容与边框之间边框与其他元素之间
背景覆盖背景颜色或图片会覆盖 padding 区域背景颜色或图片不会覆盖 margin 区域
影响尺寸增加 padding 会增加元素的实际尺寸margin 不会影响元素的实际尺寸
负值不支持负值支持负值
默认值通常为 0通常为 0,但某些元素有默认外边距

4. 盒子模型(Box Model)

paddingmargin 是盒子模型的重要组成部分。盒子模型包括:

  • 内容区域(Content):元素的实际内容。
  • 内边距(Padding):内容与边框之间的空间。
  • 边框(Border):围绕内容和内边距的边框。
  • 外边距(Margin):边框与其他元素之间的空间。

示例

div {width: 200px;height: 100px;padding: 20px;border: 5px solid black;margin: 30px;
}
  • 元素的总宽度 = width + padding + border + margin = 200px + 40px (20px*2) + 10px (5px*2) + 60px (30px*2) = 310px

5. 注意事项

  • 外边距折叠(Margin Collapse):当两个垂直相邻的元素都有外边距时,它们的外边距会合并为一个较大的外边距。
  • box-sizing 属性:默认情况下,paddingborder 会增加元素的总尺寸。可以通过 box-sizing: border-boxpaddingborder 包含在元素尺寸内。
    div {box-sizing: border-box;width: 200px;padding: 20px; /* 不会增加元素的总宽度 */
    }
    

通过合理使用 paddingmargin,可以更好地控制元素的布局和间距,提升页面的视觉效果和用户体验。

四、文字样式

CSS 提供了丰富的属性来控制文字的样式,包括字体、大小、颜色、对齐方式、间距等。以下是常用的文字相关样式及其详细说明:


1. 字体相关属性

1.1 font-family

  • 作用:设置文字的字体。
  • 语法
    font-family: "字体名称", 备用字体, 通用字体;
    
  • 示例
    p {font-family: "Arial", "Helvetica", sans-serif;
    }
    
    • 如果用户设备上没有 Arial 字体,则会尝试使用 Helvetica,最后使用通用的 sans-serif 字体。

1.2 font-size

  • 作用:设置文字的大小。
  • 语法
    font-size:;
    
  • 常用单位
    • px:像素(绝对单位)。
    • em:相对于父元素字体大小的倍数。
    • rem:相对于根元素(<html>)字体大小的倍数。
    • %:相对于父元素字体大小的百分比。
  • 示例
    p {font-size: 16px;
    }
    

1.3 font-weight

  • 作用:设置文字的粗细。
  • 语法
    font-weight:;
    
  • 常用值
    • normal:正常(默认值)。
    • bold:加粗。
    • bolder:更粗。
    • lighter:更细。
    • 数字值:100900400 相当于 normal700 相当于 bold)。
  • 示例
    p {font-weight: bold;
    }
    

1.4 font-style

  • 作用:设置文字的样式。
  • 语法
    font-style:;
    
  • 常用值
    • normal:正常(默认值)。
    • italic:斜体。
    • oblique:倾斜(类似于斜体)。
  • 示例
    p {font-style: italic;
    }
    

1.5 font-variant

  • 作用:设置小型大写字母。
  • 语法
    font-variant:;
    
  • 常用值
    • normal:正常(默认值)。
    • small-caps:小型大写字母。
  • 示例
    p {font-variant: small-caps;
    }
    

1.6 font(简写属性)

  • 作用:简写形式设置字体样式。
  • 语法
    font: font-style font-variant font-weight font-size/line-height font-family;
    
  • 示例
    p {font: italic small-caps bold 16px/1.5 "Arial", sans-serif;
    }
    

2. 文字颜色

2.1 color

  • 作用:设置文字的颜色。
  • 语法
    color: 颜色值;
    
  • 颜色值
    • 颜色名称:如 redblue
    • 十六进制值:如 #ff0000
    • RGB/RGBA:如 rgb(255, 0, 0)rgba(255, 0, 0, 0.5)
    • HSL/HSLA:如 hsl(0, 100%, 50%)hsla(0, 100%, 50%, 0.5)
  • 示例
    p {color: #333;
    }
    

3. 文字对齐与装饰

3.1 text-align

  • 作用:设置文字的水平对齐方式。
  • 语法
    text-align:;
    
  • 常用值
    • left:左对齐(默认值)。
    • right:右对齐。
    • center:居中对齐。
    • justify:两端对齐。
  • 示例
    p {text-align: center;
    }
    

3.2 text-decoration

  • 作用:设置文字的装饰线。
  • 语法
    text-decoration:;
    
  • 常用值
    • none:无装饰(默认值)。
    • underline:下划线。
    • overline:上划线。
    • line-through:删除线。
    • underline overline:组合使用。
  • 示例
    p {text-decoration: underline;
    }
    

3.3 text-transform

  • 作用:设置文字的大小写转换。
  • 语法
    text-transform:;
    
  • 常用值
    • none:无转换(默认值)。
    • uppercase:全部大写。
    • lowercase:全部小写。
    • capitalize:首字母大写。
  • 示例
    p {text-transform: uppercase;
    }
    

4. 文字间距

4.1 letter-spacing

  • 作用:设置字符之间的间距。
  • 语法
    letter-spacing:;
    
  • 常用单位pxem
  • 示例
    p {letter-spacing: 2px;
    }
    

4.2 word-spacing

  • 作用:设置单词之间的间距。
  • 语法
    word-spacing:;
    
  • 常用单位pxem
  • 示例
    p {word-spacing: 5px;
    }
    

4.3 line-height

  • 作用:设置行高(行间距)。
  • 语法
    line-height:;
    
  • 常用值
    • 无单位数字:相对于当前字体大小的倍数。
    • 固定值:如 20px
  • 示例
    p {line-height: 1.5;
    }
    

5. 其他文字样式

5.1 text-shadow

  • 作用:为文字添加阴影效果。
  • 语法
    text-shadow: 水平偏移 垂直偏移 模糊半径 颜色;
    
  • 示例
    p {text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    }
    

5.2 white-space

  • 作用:控制空白符的处理方式。
  • 语法
    white-space:;
    
  • 常用值
    • normal:合并空白符,自动换行(默认值)。
    • nowrap:合并空白符,不换行。
    • pre:保留空白符,不换行。
    • pre-wrap:保留空白符,自动换行。
    • pre-line:合并空白符,自动换行。
  • 示例
    p {white-space: nowrap;
    }
    

通过合理使用这些文字样式属性,可以轻松实现丰富的文字效果,提升页面的可读性和美观性。

五、伪类和伪元素

CSS中的伪类和伪元素是两种用于选择特定元素或元素部分并为其应用样式的重要机制。以下是关于CSS伪类和伪元素的详细说明:

一、伪类(Pseudo-classes)

伪类用于选择文档的特定状态或位置的元素。它们以冒号(:)开头,后面跟伪类名称。伪类不对应于任何实际的DOM元素,而是基于元素的当前状态或位置来选择元素。

常见的伪类包括:
  1. 用户交互伪类

    • :hover:当用户将鼠标悬停在元素上时应用样式。
    • :active:当元素被激活时(如被点击)应用样式。
    • :focus:当元素获得焦点时应用样式。
  2. 结构性伪类

    • :first-child:选择属于其父元素的第一个子元素的每个元素。
    • :last-child:选择属于其父元素的最后一个子元素的每个元素。
    • :nth-child(n):选择属于其父元素的第n个子元素的每个元素,n可以是数字、关键字(even、odd)或表达式(如2n+1)。
    • :only-child:选择属于其父元素的唯一子元素的每个元素。
    • :empty:选择没有子元素(包括文本节点)的元素。
    • :root:选择文档的根元素,通常是<html>元素。
  3. 否定伪类

    • :not(selector):选择不匹配给定选择器的元素。
  4. 表单伪类

    • :checked:匹配每个当前被选中的<input>元素。
    • :disabled:匹配每个当前被禁用的<input>元素。
    • :enabled:匹配每个当前被启用的<input>元素。
    • :indeterminate:匹配每个处于不确定状态的<input>元素。
    • :valid:invalid:分别匹配有效和无效的表单元素。
  5. 其他伪类

    • :link:visited:分别匹配未访问和已访问的链接。
    • :target:匹配当前URL片段标识符的目标元素。
    • :scope:匹配当前样式作用域内的元素。
    • :dir(ltr|rtl):选择具有特定书写方向的元素。

二、伪元素(Pseudo-elements)

伪元素用于选择元素的一部分内容,并为这部分内容设置样式。伪元素在文档树中并不真正存在,但可以被样式化。在CSS3中,伪元素使用双冒号(::)语法来区分它们与伪类。

常见的伪元素包括:
  1. ::before:在元素内容的前面插入生成的内容。通常与content属性一起使用来指定要插入的内容。

  2. ::after:在元素内容的后面插入生成的内容。同样与content属性一起使用。

  3. ::first-line:用于选择块级元素的首行文本,并为它设置样式。

  4. ::first-letter:用于选择块级元素的首字母,并为它设置样式。

  5. ::selection:用于匹配用户高亮(选中)的部分,并为它设置样式。需要注意的是,::selection伪元素只能用于设置一些有限的CSS属性,如colorbackground等。

  6. ::placeholder:用于匹配<input><textarea>元素的占位符文本,并为它设置样式。

三、伪类与伪元素的区别

  • 作用对象:伪类用于选择元素的特定状态或位置,而伪元素用于选择元素的一部分内容。
  • 语法:伪类以单冒号(:)开头,而伪元素在CSS3中以双冒号(::)开头(尽管在CSS2.1及更早版本中,伪元素也使用单冒号)。
  • 功能:伪类基于元素的当前状态或位置来选择元素,而伪元素则插入或选择元素的一部分内容来进行样式化。

综上所述,CSS伪类和伪元素提供了强大的选择机制,使得开发者能够为文档的特定部分或状态应用样式,从而实现更丰富的视觉效果和用户体验。

六、动画相关样式

CSS动画相关样式主要包括transition属性、transform属性、@keyframes规则以及animation属性。以下是对这些动画相关样式的详细说明:

一、transition属性

transition属性用于实现元素的渐变动画,它允许元素在某些CSS属性发生变化时,以平滑过渡的方式展现这些变化。

  • 语法transition: property duration timing-function delay;

  • 参数

    • property:指定需要进行过渡的CSS属性,如widthheightbackground-color等。
    • duration:过渡动画的持续时间,即动画从开始到结束所需的时间。
    • timing-function:缓动函数,用于指定动画的速度曲线。常见的值有easeease-inease-outease-in-outlinear等。
    • delay:动画开始前的延迟时间。

二、transform属性

transform属性用于对元素进行2D或3D转换,包括旋转、缩放、倾斜和移动等操作。

  • 旋转(rotate)transform: rotate(angle);。其中angle为旋转角度,正数表示顺时针旋转,负数表示逆时针旋转。
  • 缩放(scale)transform: scale(x, y);。其中xy分别为水平和垂直方向的缩放比例。如果只指定一个值,则两个方向使用相同的缩放比例。
  • 倾斜(skew)transform: skew(x-angle, y-angle);。其中x-angley-angle分别为水平和垂直方向的倾斜角度。
  • 移动(translate)transform: translate(x, y);。其中xy分别为水平和垂直方向的移动距离。也可以使用百分比形式,相对于元素自身的宽高进行平移。

此外,transform属性还支持3D转换,如rotateXrotateYrotateZ进行3D旋转,以及scale3dtranslate3d进行3D缩放和移动。

三、@keyframes规则

@keyframes规则用于定义动画序列中的关键帧样式。通过指定动画开始、结束以及中间点的样式,可以创建复杂的动画效果。

  • 语法@keyframes animation-name { keyframe-selector { css-styles; } }

  • 参数

    • animation-name:关键帧列表的名字,要保证全局且唯一。
    • keyframe-selector:关键帧选择器,用于选择触发关键帧的时间点。通常使用百分比来指定,如0%表示动画开始时,100%表示动画结束时。也可以使用fromto来分别代替0%100%
    • css-styles:关键帧改变的样式。

四、animation属性

animation属性用于将关键帧动画应用到元素上,并指定动画的一些行为和细节。

  • 语法animation: name duration timing-function delay iteration-count direction fill-mode play-state;

  • 参数

    • name:指定由@keyframes描述的关键帧名称。
    • duration:设置动画一个周期的时长。
    • timing-function:缓动函数,用于指定动画在关键帧之间的速度曲线。
    • delay:设置动画开始前的延迟时间。
    • iteration-count:动画播放的次数,可以使用infinite表示无限次循环。
    • direction:动画播放的方向。常见的值有normal(正常播放)、reverse(反向播放)、alternate(正反交替播放)和alternate-reverse(反正交替播放)。
    • fill-mode:指定动画执行前后如何为目标元素应用样式。常见的值有none(默认值,动画前后不应用关键帧样式)、forwards(动画结束后保留最后一帧的样式)、backwards(动画开始前应用第一帧的样式)和both(同时具有forwardsbackwards的特点)。
    • play-state:动画播放的状态,可以是paused(暂停)或running(播放)。

综上所述,CSS动画相关样式提供了丰富的功能,允许开发者创建各种复杂的动画效果。通过合理使用这些样式,可以为网页增添生动的视觉效果,提升用户体验。

七、待补充

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

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

相关文章

【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.5 高级索引应用:图像处理中的区域提取

2.5 高级索引应用&#xff1a;图像处理中的区域提取 目录/提纲 #mermaid-svg-BI09xc20YqcpUam7 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-BI09xc20YqcpUam7 .error-icon{fill:#552222;}#mermaid-svg-BI09xc20…

[免费]微信小程序智能商城系统(uniapp+Springboot后端+vue管理端)【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的微信小程序智能商城系统(uniappSpringboot后端vue管理端)&#xff0c;分享下哈。 项目视频演示 【免费】微信小程序智能商城系统(uniappSpringboot后端vue管理端) Java毕业设计_哔哩哔哩_bilibili 项目介绍…

本地部署DeepSeek-R1保姆级教程

近期&#xff0c;我国一款开源模型 DeepSeek-R1以低成本和高性能震撼了全球科技界。该模型的开源性使开发者能够在本地环境中部署和运行&#xff0c;提供了更高的灵活性和控制力。如果你也想在本地部署 DeepSeek-R1&#xff0c;可以参考以下完整的教程&#xff0c;涵盖Mac 版本…

仿真设计|基于51单片机的贪吃蛇游戏

目录 具体实现功能 设计介绍 51单片机简介 资料内容 仿真实现&#xff08;protues8.7&#xff09; 程序&#xff08;Keil5&#xff09; 全部内容 资料获取 具体实现功能 利用单片机8*8点阵实现贪吃蛇游戏的控制。 仿真演示视频&#xff1a; 51-基于51单片机的贪吃蛇游…

【4Day创客实践入门教程】Day2 探秘微控制器——单片机与MicroPython初步

Day2 探秘微控制器——单片机与MicroPython初步 目录 Day2 探秘微控制器——单片机与MicroPython初步MicroPython语言基础开始基础语法注释与输出变量模块与函数 单片机基础后记 Day0 创想启程——课程与项目预览Day1 工具箱构建——开发环境的构建Day2 探秘微控制器——单片机…

ubuntu 下使用deepseek

安装Ollama sudo snap install ollama 执行 ollama run deepseek-coder 然后进行等待。。。

消息队列应用示例MessageQueues-STM32CubeMX-FreeRTOS《嵌入式系统设计》P343-P347

消息队列 使用信号量、事件标志组和线标志进行任务同步时&#xff0c;只能提供同步的时刻信息&#xff0c;无法在任务之间进行数据传输。要实现任务间的数据传输&#xff0c;一般使用两种方式&#xff1a; 1. 全局变量 在 RTOS 中使用全局变量时&#xff0c;必须保证每个任务…

本地缓存~

前言 Caffeine是使用Java8对Guava缓存的重写版本&#xff0c;在Spring Boot 2.0中取而代之&#xff0c;基于LRU算法实现&#xff0c;支持多种缓存过期策略。 以下摘抄于https://github.com/ben-manes/caffeine/wiki/Benchmarks-zh-CN 基准测试通过使用Java microbenchmark ha…

Unity Shader Graph 2D - 角色身体电流覆盖效果

在游戏中,通常会有游戏角色受到“电击”的效果,此时游戏角色身体上会覆盖有电流,该效果能表明游戏角色的当前状态,让玩家能够获得更直观更好的体验。 那么如何实现呢 首先创建一个ShaderGraph文件,命名为Current,再创建对应的材质球M_Current。 基础的资源显示 老规矩,…

【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.9 广播陷阱:形状不匹配的深层隐患

2.9 广播陷阱&#xff1a;形状不匹配的深层隐患 目录 #mermaid-svg-F0AgBChfSCGzOqa7 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-F0AgBChfSCGzOqa7 .error-icon{fill:#552222;}#mermaid-svg-F0AgBChfSCGzOqa7 …

解锁豆瓣高清海报(二) 使用 OpenCV 拼接和压缩

解锁豆瓣高清海报(二): 使用 OpenCV 拼接和压缩 脚本地址: 项目地址: Gazer PixelWeaver.py pixel_squeezer_cv2.py 前瞻 继上一篇“解锁豆瓣高清海报(一) 深度爬虫与requests进阶之路”成功爬取豆瓣电影海报之后&#xff0c;本文将介绍如何使用 OpenCV 对这些海报进行智…

vue入门到实战 二

目录 2.1 计算属性computed 2.1.1什么是计算属性 2.1.2 只有getter方法的计算属性 2.1.3 定义有getter和setter方法的计算属性 2.1.4 计算属性和methods的对比 2.2 监听器属性watch 2.2.1 watch属性的用法 2.2.2 computed属性和watch属性的对比 2.1 计算属性computed…

【DeepSeek】本地快速搭建DeepSeek

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 博客内容主要围绕&#xff1a; 5G/6G协议讲解 高级C语言讲解 Rust语言讲解 文章目录 本地快速搭建DeepSeek一、安装及配置ollama二、DeepSeek模型…

Spring WebFlux揭秘:下一代响应式编程框架,与Spring MVC有何不同?

Spring WebFlux和Spring MVC都是Spring家族里的成员&#xff0c;它们都能帮助我们开发Web应用&#xff0c;但工作方式有所不同。 可以把Spring MVC想象成一个服务员&#xff0c;每次有客人&#xff08;请求&#xff09;来&#xff0c;它就会专门找一个服务员&#xff08;线程&a…

基于微信小程序的实习记录系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…

MySQL5.5升级到MySQL5.7

【卸载原来的MySQL】 cmd打开命令提示符窗口&#xff08;管理员身份&#xff09;net stop mysql&#xff08;先停止MySQL服务&#xff09; 3.卸载 切换到原来5.5版本的bin目录&#xff0c;输入mysqld remove卸载服务 测试mysql -V查看Mysql版本还是5.5 查看了环境变量里的…

TensorFlow 简单的二分类神经网络的训练和应用流程

展示了一个简单的二分类神经网络的训练和应用流程。主要步骤包括&#xff1a; 1. 数据准备与预处理 2. 构建模型 3. 编译模型 4. 训练模型 5. 评估模型 6. 模型应用与部署 加载和应用已训练的模型 1. 数据准备与预处理 在本例中&#xff0c;数据准备是通过两个 Numpy 数…

使用朴素贝叶斯对散点数据进行分类

本文将通过一个具体的例子&#xff0c;展示如何使用 Python 和 scikit-learn 库中的 GaussianNB 模型&#xff0c;对二维散点数据进行分类&#xff0c;并可视化分类结果。 1. 数据准备 假设我们有两个类别的二维散点数据&#xff0c;每个类别包含若干个点。我们将这些点分别存…

AI视频编码器(3.2) 《Swin Transformer V2: Scaling Up Capacity and Resolution》

arxiv链接自监督训练用到了SimMIM 论文链接。我觉得,SimMIM与MAE的区别在于,前者只是一个1-layer的prediction head,而后者是多层transformer结构的decoder。可参考Swin Transformer V2(CVPR 2022)论文与代码解读。总结 图中展示了三个创新,从左到右有三处红色结构,分别…

前端进阶:深度剖析预解析机制

一、预解析是什么&#xff1f; 在前端开发中&#xff0c;我们常常会遇到一些看似不符合常规逻辑的代码执行现象&#xff0c;比如为什么在变量声明之前访问它&#xff0c;得到的结果是undefined&#xff0c;而不是报错&#xff1f;为什么函数在声明之前就可以被调用&#xff1f…