CSS规范

news2025/2/3 4:06:42

CSS规范

命名规范

页面外围控制整体布局宽度:wrapper、页头:header、页面主体:main、内容:content、页脚:footer、导航:nav、主导航:mainbav、子导航:subnav、顶导航:topnav、边导航:sidebar、左导航:leftsidebar、右导航:rightsidebar、菜单:menu、子菜单:submenu、搜索:search、栏目:column、侧栏:sidebar、功能区(商品模块):shop、左右中:left right center、登录:login、登录条:loginbar、注册:regsiter、标志:logo、横幅广告:banner、热点:hot、新闻:news、按钮:btn、滚动:scroll、标签页:tab、文章列表:list、 标题:title、摘要:summary、提示信息:msg、小技巧:tips、图标:icon、下载:download、加入我们:joinus、注释:note、指南:guild、服务:service、状态:status、投票:vote、合作伙伴:partner、链接:link、友情链接:friendlink、版权:copyright

Ⅰ- 常见语法规范

1、常见语法规范总结

常见语法规范
  1. 两个空格来代替tab – 这是唯一能保证在所有环境下获得一致展现的方法。
  2. 为选择器分组时,将单独的选择器单独放在一行。
  3. 为了代码的易读性,在每个声明块的左花括号前添加一个空格。
  4. 声明块的右花括号应当单独成行。
  5. 每条声明语句的 : 后应该插入一个空格。
  6. 为了获得更准确的错误报告,每条声明都应该独占一行。
  7. 所有声明语句都应当以分号结尾。最后一条声明语句后面的分号是可选的,但是,如果省略这个分号,你的代码可能更易出错。
  8. 对于以逗号分隔的属性值,每个逗号后面都应该插入一个空格(例如,box-shadow)。
  9. 不要在 rgb()rgba()hsl()hsla()rect() 值的内部的逗号后面插入空格。这样利于从多个属性值(既加逗号也加空格)中区分多个颜色值(只加逗号,不加空格)。
  10. 对于属性值或颜色参数,省略小于 1 的小数前面的 0 (例如,.5 代替 0.5-.5px 代替 -0.5px)。
  11. 十六进制值应该全部小写,例如,#fff。在扫描文档时,小写字符易于分辨,因为他们的形式更易于区分。
  12. 尽量使用简写形式的十六进制值,例如,用 #fff 代替 #ffffff
  13. 为选择器中的属性添加双引号,例如,input[type="text"]。只有在某些情况下是可选的,但是,为了代码的一致性,建议都加上双引号。
  14. 避免为 0 值指定单位,例如,用 margin: 0; 代替 margin: 0px;
直接上例子
/************************** 不好的CSS 写法 **********************************/
.selector, .selector-secondary, .selector[type=text] {
padding:15px;
 /* 避免为 0 值指定单位,例如,用 `margin: 0;` 代替 `margin: 0px;` */
margin:0px 0px 15px;
background-color:rgba(0, 0, 0, 0.5);
/* 十六进制值应该全部小写,同时尽量使用简写形式的十六进制值  */  
box-shadow:0px 1px 2px #CCC,inset 0 1px 0 #FFFFFF  
}

/************************** 好的 CSS 写法 ***************************************/
.selector,                           -->为选择器分组时,将单独的选择器单独放在一行
.selector-secondary,
.selector[type="text"] {             -->建议为选择器中的属性 `[type="text"]` 添加双引号
padding: 15px; 				    -->每条声明语句的 `:` 后应该插入一个空格
margin-bottom: 15px; 
/* 
  不要在 `rgb()`、`rgba()`、`hsl()`、`hsla()` 或 `rect()` 值的内部的逗号后面插入空格
  对于属性值或颜色参数,省略小于 1 的小数前面的 0
  */  
background-color: rgba(0,0,0,.5);
/* 
  所有声明语句都应当以分号结尾.后一条声明语句后面的分号是可选的,但略这个分号,你的代码可能更易出错
  对于以逗号分隔的属性值,每个逗号后面都应该插入一个空格
 */
box-shadow: 0 1px 2px #ccc, inset 0 1px 0 #fff; 
}    							   -->声明块的右花括号应当单独成行

2、声明顺序

相关的属性声明应当归为一组,并按照下面的顺序排列:

  1. Positioning -->由于定位(positioning)可以从正常的文档流中移除元素,并且还能覆盖盒模型(box model)相关的样式,因此排在首位
  2. Box model -->盒模型排在第二位,因为它决定了组件的尺寸和位置。
  3. Typographic -->文字类
  4. Visual -->其他属性只是影响组件的*内部(inside)*或者是不影响前两组属性,因此排在后面。
.declaration-order {
/* Positioning 定位之类*/
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 100;

/* Box-model 盒模型*/
display: block;
float: right;
width: 100px;
height: 100px;

/* Typography 排版印刷类 */
font: normal 13px "Helvetica Neue", sans-serif;
line-height: 1.5;
color: #333;
text-align: center;

/* Visual 视觉类 */
background-color: #f5f5f5;
border: 1px solid #e5e5e5;
border-radius: 3px;

/* Misc 其他混杂类 */
opacity: 1;
}

3、尽量不要使用 @import 引入css文件

<link> 标签相比,@import 指令要慢很多,不光增加了额外的请求次数,还会导致不可预料的问题。替代办法有以下几种:

  • 使用多个 <link> 元素
  • 通过 Sass 或 Less 类似的 CSS 预处理器将多个 CSS 文件编译为一个文件
  • 通过 Rails、Jekyll 或其他系统中提供过 CSS 文件合并功能
<!-- 使用 link 元素 -->
<link rel="stylesheet" href="core.css">

<!-- 应避免的 @imports -->
<style>
@import url("more.css");
</style>

4、媒体查询(Media query)的位置

将媒体查询放在尽可能相关规则的附近。不要将他们打包放在一个单一样式文件中或者放在文档底部。如果你把他们分开了,将来只会被大家遗忘(同时也会增大维护力度)

5、带前缀的属性

当使用特定厂商的带有前缀的属性时,通过缩进的方式,让每个属性的值在垂直方向对齐,这样便于多行编辑。

/* 带前缀的属性 */
.selector {
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.15);
box-shadow: 0 1px 2px rgba(0,0,0,.15);
}

6、单行规则声明

对于只包含一条声明的样式,为了易读性和便于快速编辑,建议将语句放在同一行。对于带有多条声明的样式,还是应当将声明分为多行。

这样做的关键因素是为了错误检测 –-> 例如,CSS 校验器指出在 xxx 行有语法错误。如果是单行单条声明,你就不会忽略这个错误;如果是单行多条声明的话,你就要仔细分析避免漏掉错误了。

/* 一行上的单个声明,这种直接放在一行即可 */
.span1 { width: 60px; }
.span2 { width: 140px; }
.span3 { width: 220px; }
.icon           { background-position: 0 0; }
.icon-home      { background-position: 0 -20px; }
.icon-account   { background-position: 0 -40px; }

/* 多个声明,需要将样式分行 */
.sprite {
display: inline-block;
width: 16px;
height: 15px;
background-image: url(./hong.png);
}

7、简写形式的属性

在需要显示地设置所有值的情况下,应当尽量限制使用简写形式的属性声明。常见的滥用简写属性声明的情况如下

  • padding
  • margin
  • font
  • background
  • border
  • border-radius

大部分情况下,我们不需要为简写形式的属性声明指定所有值。例如,HTML 的 heading 元素只需要设置上、下边距(margin)的值,因此,在必要的时候,只需覆盖这两个值就可以。过度使用简写形式的属性声明会导致代码混乱,并且会对属性值带来不必要的覆盖从而引起意外的副作用。

/* 不好的例子 */
.element {
margin: 0 0 10px;  --> 实际上只要 单独指定 `margin-bottom: 10px` 即可;这样可能会导致覆盖上、水平方向的样式被覆盖
background: red;
background: url("image.jpg");
border-radius: 3px 3px 0 0;  --有时候简化实际上反而不易理解,像这种可以不简化
}

/* 好的例子 */
.element {
margin-bottom: 10px;
background-color: red;
background-image: url("image.jpg");
border-top-left-radius: 3px;
border-top-right-radius: 3px;
}

**正好趁着这个机会补充梳理下简写属性的知识点 ** -->查阅资料 : MDN的CSS 的简写属性;

①简写属性 的举🌰

  1. background 属性就是一个简写属性,它可以定义
  • background-color
  • background-image
  • background-repeat
  • background-position
  1. 类似地,最常见的字体相关的属性可以使用 font 的简写,
  2. 盒子(box)各方向的外边距(margin) 可以使用 margin 这个简写。

② 棘手的边界情况

虽然它们使用起来非常方便,但在使用时,仍需牢记一些边界情况:

a) 没有指定的值会被设置为它的初始值,实际上将会覆盖之前设置的值

没有指定的值会被设置为它的初始值。这听起来似乎本来就很合理的样子,但这确实意味着,它将会覆盖之前设置的值。因此:

background-color: red;
background: url(images/bg.gif) no-repeat top right;

以上样式是将 [ background-color ] 的默认值 transparent,而不会将 background 的 color 值设置为 red

因为第二条规则优先。

b) 关键词 inherit 只可以应用于单独属性
  • 关键词 inherit 只可以应用于单独属性(individual properties)
  • 如果应用于一个简写属性(shorthand property),则必须整体应用,而能对简写属性值的每一个部分单独应用。
  • 由于单独属性的漏掉的值会被它们的初始值(initial value)替代,因此不可能允许单个属性通过省略继承的 。
  • 这意味着让一个属性的值使用继承值的唯一方法就是使用值是 inherit 的普通属性(longhand property)。
c) 简写属性不试图强制它们替代属性的值的特定顺序
  1. 简写属性不试图强制它们替代属性的值的特定顺序。
  2. 这适用于当这些属性使用不同类型的值时,因为这个时候顺序并不重要。
  3. 但当几个属性可以设置相同值的时候,就没那么简单了。处理这些情况分以下几种类型:
处理和盒子(box)边界(edge)相关的属性时,比如 border-stylemargin 或者 padding
  • 1个值的语法:border-width: 1em —> 这一个值表示所有的边框宽度,margin、padding同理
  • 2个值的语法:border-width: 1em 2em — 第一个值表示垂直方向的,即 top 和 bottom;第二个值表示水平方向的,即 left 和 right
  • 3个值的语法:border-width: 1em 2em 3em — 第一个值表示 top;第二个值表示水平方向的,即 left 和 right; 第三个值表示 bottom
  • 4个值的语法:border-width: 1em 2em 3em 4em — 这四个值分别表示 top、right、bottom、left,总是按此顺序,即从 top 开始的顺时针顺序(Top-Right-Bottom-Left 首字母与英文单词 trouble 的顺序一致:TRBL)
  • 可以发现,实际上1~4个参数不同时,代表的含义完全不同
同样,在处理和盒子的角相关的属性时,比如 border-radius
  • 1个值的语法:border-radius: 1em — 这一个值表示所有的表框角度的半径
  • 2个值的语法:border-radius: 1em 2em — 第一个值表示 top-left 和 bottom-right 方向的角;第二个值表示 top-right 和 bottom-left 方向的角
  • 3个值的语法:border-radius: 1em 2em 3em — 第一个值表示 top-left 方向的角 ,第二个值表示top-right 和 bottom-left 方向的角,第三个值表示 bottom-right 方向的角
  • 4个值的语法:border-radius: 1em 2em 3em 4em — 这四个值分别表示top-left、 top-right、 bottom-right 、bottom-left 方向的角。总是按此顺序,即从top-left开始的顺时针顺序

③ Background 属性

background 有以下属性:

background-color: #000;
background-image: url(images/bg.gif);
background-repeat: no-repeat;
background-position: top right;

可以简写成一行声明:

background: #000 url(images/bg.gif) no-repeat top right;

简写的形式实际上等价于以上普通属性再加上 background-attachment: scroll 以及 CSS3 中的一些附加属性。

④ Font 属性

下面的声明:

font-style: italic;
font-weight: bold;
font-size: .8em;
line-height: 1.2;
font-family: Arial, sans-serif;

可以简写成下面的:

font: italic bold .8em/1.2 Arial, sans-serif;

这个简写声明实际上等价于以上普通属性再加上 font-variant: normalfont-size-adjust: none (CSS2.0 / CSS3),font-stretch: normal (CSS3)。

⑤ Border 属性

对于 border 来说,宽度、颜色和类型是可以被简写到一个声明里的。比如:

border-width: 1px;
border-style: solid;
border-color: #000;

可以简写成:

border: 1px solid #000;

⑥ Margin 和 Padding 属性

margin 和 padding 值的简写版本类似。下面的 CSS 声明:

margin-top: 10px;
margin-right: 5px;
margin-bottom: 10px;
margin-left: 5px;

和下面的声明是一样的(注意,值是从 top 顺时针开始的:top、right、bottom、接着是 left)

margin: 10px 5px 10px 5px;
Margin 对于多个值有以下的简写规则: 重要
  • 当只有一个值声明时,该值会用于所有四个值。
  • 当只有两个值声明时,第一个值用于上边距下边距,第二个值用于左边距右边距
  • 当有三个值声明时,第一个值用于上边距,第二个值用于左边距右边距,第三个值用于下边距。
  • 当有四个值声明时,其会按顺序用于上、右、下、左边距(按顺时针)。

8、注释

  • 代码是写给自己看的,同时也是写给同事看的. 我们要确保我们的代码能够自描述、注释良好并且易于他人理解
  • 好的代码注释应该是能够传达上下文关系以及代码目的的
  • 而不是一味地重申一下类名或者模块名,说的就是你啊 铁子
  • 对于较长的注释,务必书写完整的句子;对于一般性注解,可以书写简洁的短语。
/* 不好的栗子 */
/* Modal header */
.modal-header {
...
}

/* 好的栗子 */
/* 为.modal-title和.modal-close包装元素  */
.modal-header {
...
}
一个推荐的注释写法
/* Header */
内容区
/* End Header */

9、class命名

  • class 名称中只能出现小写字符和破折号(dashe)(不是下划线,也不是驼峰命名法)。破折号应当用于相关 class 的命名(类似于命名空间)(例如,.btn.btn-danger)。
  • 避免过度任意的简写。.btn 代表 button,但是 .s 不能表达任何意思。
  • class 名称应当尽可能短,并且意义明确。
  • 使用有意义的名称。使用有组织的或目的明确的名称,不要使用表现形式的名称。
  • 基于最近的父 class 或基本(base) class 作为新 class 的前缀。
  • 使用 .js-* class 来标识行为(与样式相对),并且不要将这些 class 包含到 CSS 文件中。
/* 不好的🌰 */
.t { ... }
.red { ... }
.header { ... }

/* 好的🌰 */
.tweet { ... }
.important { ... }
.tweet-header { ... }

10、选择器

  • 对于通用元素使用 class ,这样利于渲染性能的优化。
  • 对于经常出现的组件,避免使用属性选择器(例如,[class^="..."])。浏览器的性能会受到这些因素的影响。
  • 选择器要尽可能短,并且尽量限制组成选择器的元素个数,建议不要超过 3 。
  • 只有在必要的时候才将 class 限制在最近的父元素内(也就是后代选择器)(例如,不使用带前缀的 class 时 – 前缀类似于命名空间)。
/* 不好的🌰 */
span { ... }
.page-container #stream .stream-item .tweet .tweet-header .username { ... }
.avatar { ... }

/* 好的🌰 */
.avatar { ... }
.tweet-header .username { ... }
.tweet .avatar { ... }

11、代码组织

  • 以组件为单位组织代码段。
  • 制定一致的注释规范。
  • 使用一致的空白符将代码分隔成块,这样利于扫描较大的文档。
  • 如果使用了多个 CSS 文件,将其按照组件而非页面的形式分拆,因为页面会被重组,而组件只会被移动。

12、编辑器配置

将你的编辑器按照下面的配置进行设置,以避免常见的代码不一致和差异:

  • 用两个空格代替制表符(soft-tab 即用空格代表 tab 符)。
  • 保存文件时,删除尾部的空白符。
  • 设置文件编码为 UTF-8。
  • 在文件结尾添加一个空白行。

Ⅱ - 一些关于W3C CSS标准的经验总结

  1. 少用偏门。类似break-word断行,z-index手动分层,还有像垂直对齐等等这些偏门CSS最好少用,由于不一定所有浏览器都支持,而且极难通过W3C检测。
  2. center不是float的值。很多老手都会把center误认为是float的值,而偏偏不是如此。center只是text-align的值。
  3. 对齐不能包括两个值。很多老手会在float或者text-align中填写两个值,比如:float:left top。这是不允许的,浏览器也无法识别。
  4. 滚动条颜色最好不要自定义。很多浏览器不能正常识别自定义颜色的滚动条,况且很多自定义颜色都不能通过W3C。
  5. 单独滚动条设置。如今经常使用overflow-x(横向滚动条)或者overflow-y(纵向滚动条),在设置这个的时候经常会发现并不是所有的客户端上都无效果,大家在设置的时候最好在body和html同时进行设置。然而这个CSS也不是CSS2.1支持的(CSS2.1支持overflow,同时定义横纵滚动条),直到CSS3才支持这种定义方式。尽量少用。
  6. background和color颜色相反会遭到警告。

Ⅲ - 一些容易忽略的细节

1、连字符CSS选择器命名规范

1.长名称或词组可以使用中横线来为选择器命名。

2.不建议使用“_”下划线来命名CSS选择器,为什么呢?

  • 输入的时候少按一个shift键;
  • 浏览器兼容问题 (比如使用_tips的选择器命名,在IE6是无效的)
  • 能良好区分JavaScript变量命名(JS变量命名是用“_”)

这里有一篇破折号与下划线的详细讨论 中文篇:点击查看

2、不要随意使用Id

  • id在JS是唯一的,不能多次使用
  • 而使用class类选择器却可以重复使用,另外id的优先级优先与class
  • 所以id应该按需使用,而不能滥用。

3、可以为选择器添加状态前缀

有时候可以给选择器添加一个表示状态的前缀,让语义更明了,比如下面是添加了“.is-”前缀。

.widthView {}
/* 可以加个状态 */
.is-widthView {}

Ⅳ - CSS命名规范

命名永远是程序员的痛啊!!! 面对如山海般的代码,每天命名那么多变量名,实在词穷,所以就有一些’不法分子’取了各种稀奇古怪的名字,实在是让代码阅读性一降再降

这里也只能罗列出一些常见命名规则,多少能在命名的时候有所参照,防止一个意思取出了十几种名字

1、常见的CSS命名规则

  • 头:header
  • 内容:content/container
  • 尾:footer
  • 导航:nav
  • 侧栏:sidebar
  • 栏目:column
  • 页面外围控制整体佈局宽度:wrapper
  • 左右中:left right center
  • 登录条:loginbar
  • 标志:logo
  • 广告:banner
  • 页面主体:main
  • 热点:hot
  • 新闻:news
  • 下载:download
  • 子导航:subnav
  • 菜单:menu
  • 子菜单:submenu
  • 搜索:search
  • 友情链接:friendlink
  • 页脚:footer
  • 版权:copyright
  • 滚动:scroll
  • 内容:content
  • 标签:tags
  • 文章列表:list
  • 提示信息:msg
  • 小技巧:tips
  • 栏目标题:title
  • 加入:joinus
  • 指南:guide
  • 服务:service
  • 注册:regsiter
  • 状态:status
  • 投票:vote
  • 合作伙伴:partner

2、Id的命名

页面结构

  • 容器: container
  • 页头:header
  • 内容:content/container
  • 页面主体:main
  • 页尾:footer
  • 导航:nav
  • 侧栏:sidebar
  • 栏目:column
  • 页面外围控制整体布局宽度:wrapper
  • 左右中:left right center

② 导航

  • 导航:nav

  • 主导航:mainnav

  • 子导航:subnav

  • 顶导航:topnav

  • 边导航:sidebar

  • 左导航:leftsidebar

  • 右导航:rightsidebar

  • 菜单:menu

  • 子菜单:submenu

  • 标题: title

  • 摘要: summary

功能

  • 标志:logo
  • 广告:banner
  • 登陆:login
  • 登录条:loginbar
  • 注册:register
  • 搜索:search
  • 功能区:shop
  • 标题:title
  • 加入:joinus
  • 状态:status
  • 按钮:btn
  • 滚动:scroll
  • 标签页:tab
  • 文章列表:list
  • 提示信息:msg
  • 当前的: current
  • 小技巧:tips
  • 图标: icon
  • 注释:note
  • 指南:guild
  • 服务:service
  • 热点:hot
  • 新闻:news
  • 下载:download
  • 投票:vote
  • 合作伙伴:partner
  • 友情链接:link
  • 版权:copyright

3、注意事项

  1. 一律小写;
  2. 尽量用英文;
  3. 不加下划线;
  4. 尽量不缩写,除非一看就明白的单词。

4、CSS样式表文件命名

  • 主要的 master.css
  • 模块 module.css
  • 基本共用 base.css
  • 布局、版面 layout.css
  • 主题 themes.css
  • 专栏 columns.css
  • 文字 font.css
  • 表单 forms.css
  • 补丁 mend.css
  • 打印 print.css

Ⅴ- CSS书写顺序

让浏览器执行效率更高

  1. 浮动 / display
  2. 盒子模型: margin border padding 宽高背景颜色
  3. 文字样式

Ⅵ - 类名连接符规范

类名之间的链接符可以下划线 _ 或者 中横线 -

有以下几种机制规定

  1. 个人的编码习惯是使用 中横线 作为类名之间的连接符,不同的人有着不同的习惯。
  2. 公司规定的连接符(下划线、中横线)

中横线的列子

使用属性选择器,语法规则如下:

Element[att |= "values"]{ sRules}

说明:选择具有att属性(也就是哪种选择器)且属性值为以values开头并用连接符-分隔的字符串的Element元素,如果属性值仅为val,也将被选择。

HTML

<head>
    <meta charset="UTF-8">
    <title>css规范</title>
    <style>
        li[class|="test3"] {
            color: #f00;
            list-style: none;
        }
    </style>
</head>
<body>
    <ul>
        <li class="test1-abc">列表项目</li>
        <li class="test3">列表项目</li>
        <li class="test3-abc-def">列表项目</li>
        <li class="test3-abc">列表项目</li>
        <li class="test4-abc">列表项目</li>
        <li class="test5-abc">列表项目</li>
        <li class="test6-abc">列表项目</li>
    </ul>
</body>

如此一来 第 2、3、4 个列表就是红色并且没有前面的 圆点

image-20221220124740584

择具有att属性(也就是哪种选择器)且属性值为以values开头并用连接符-分隔的字符串的Element元素,如果属性值仅为val,也将被选择。

HTML

<head>
    <meta charset="UTF-8">
    <title>css规范</title>
    <style>
        li[class|="test3"] {
            color: #f00;
            list-style: none;
        }
    </style>
</head>
<body>
    <ul>
        <li class="test1-abc">列表项目</li>
        <li class="test3">列表项目</li>
        <li class="test3-abc-def">列表项目</li>
        <li class="test3-abc">列表项目</li>
        <li class="test4-abc">列表项目</li>
        <li class="test5-abc">列表项目</li>
        <li class="test6-abc">列表项目</li>
    </ul>
</body>

如此一来 第 2、3、4 个列表就是红色并且没有前面的 圆点

[外链图片转存中…(img-KDT9easI-1671521439403)]

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

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

相关文章

利用FormData上传本地文件

前言 最近接了个小项目&#xff0c;有个用客户端本地文件的需求。 正常这种需求都是前台传文件&#xff0c;后台去解析。 但这次C的老哥非让我给文件路径&#xff0c;说公司平台有解析文件的能力。 我说web不是桌面端&#xff0c;拿不到真实路径&#xff0c;他还不信&#…

已解决1. Downgrade the protobuf package to 3.20.x or lower.

已解决TypeError: Descriptors cannot not be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc > 3.1.0If you cannot immediately regenerate your protos, some other possible worka…

【Ctfer训练计划】——(二)

作者名&#xff1a;Demo不是emo 主页面链接&#xff1a;主页传送门创作初心&#xff1a;舞台再大&#xff0c;你不上台&#xff0c;永远是观众&#xff0c;没人会关心你努不努力&#xff0c;摔的痛不痛&#xff0c;他们只会看你最后站在什么位置&#xff0c;然后羡慕或鄙夷座右…

kubernetes管理应用配置之ConfigMap和Secret

目录 一、ConfigMap 二、Secret 一、ConfigMap 应用部署的一个最佳实践是将应用所需的配置信息与程序进行分离&#xff0c;这样可以使得应用程序被更好地复用&#xff0c;通过不同的配置也能实现更灵活的功能。 将应用打包为容器镜像后&#xff0c;可以通过环境变量或者外挂文…

【MySQL】3.MySQL表操作

文章目录1.0 MySQL表操作详解1.1 MySQL创建表1.2 MySQL查看表结构1.3 MySQL修改表1.0 MySQL表操作详解 1.1 MySQL创建表 指令:create table table_name(field1 datatype, field2 datatype) character collate engine; 后面三个参数可以省略&#xff0c;MySQL会自动调用默认…

开源绘图神器,Labplot的初步使用

文章目录数据生成图像定制多图绘制Labplot是一款开源且免费的科学绘图软件&#xff0c;除了Windows外&#xff0c;对Linux的Debian、Ubuntu、Fedora等发行版均有着良好的支持。 其下载地址为&#xff1a;LabPlot2下载&#xff0c;安装过程注意选择中文。 数据生成 打开软件后…

新版以太坊Ethereum库ethersV5.0配合后端Golang1.18实时链接区块链钱包(Metamask/Okc)以及验签操作

区块链去中心化思想无处不在&#xff0c;比如最近使用个体抗原自检替代大规模的中心化核酸检测&#xff0c;就是去中心化思想的落地实践&#xff0c;避免了大规模聚集导致的交叉感染&#xff0c;提高了检测效率&#xff0c;本次我们使用Ethereum最新的ethersV5.0以上版本链接去…

XXL-JOB架构篇 - 初识分布式任务调度XXL-JOB

任务调度 一、什么时候需要任务调度&#xff1f; 基于时间的任务 批量数据的处理 异步解耦&#xff08;比如先做任务A&#xff0c;再做任务B&#xff09; 二、任务调度的基本需求有哪些&#xff1f; 可以定义触发的规则&#xff0c;比如基于时刻、时间间隔、表达式。 可以定义…

5G无线技术基础自学系列 | RF优化概述

素材来源&#xff1a;《5G无线网络规划与优化》 一边学习一边整理内容&#xff0c;并与大家分享&#xff0c;侵权即删&#xff0c;谢谢支持&#xff01; 附上汇总贴&#xff1a;5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 随着5G商用网络的陆续建设&#xff0c;…

疫情抑制珠宝消费增长,珠宝主要市场需求萎缩

一、我国珠宝行业市场规模持续增长 根据观研报告网发布的《2022年中国珠宝行业分析报告-行业现状与发展趋势分析》显示&#xff0c;2021年上半年&#xff0c;中国金饰需求增长强劲&#xff0c;中国金饰消费量在2021年第二季度趋于稳定&#xff0c;使上半年金饰总需求达到338吨…

chatGPT接口,不需要科学上网就可以调用的OPENAI接口

最近很多国产版本的chatGPT出现了 查找了一圈发现调用的openai 的一个接口 测试了一下效果还算可以吧 视频教程 链接: 视频教程 用接口自己写了一个测试的网页 日常使用应该是不成问题 接口整理好了在这&#xff1a; 请求接口&#xff1a; URL:-POST https://api.openai.…

m基于RBF神经网络和BP神经网络的信道估计误码率matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 在无线通信系统中&#xff0c;从发射端发射的信号&#xff0c;经过直射、反射、散射等路径到达接收端。在ofdm系统中&#xff0c;为了获取更好的性能&#xff0c;需要进行信道估计获取信道的状态…

Diffusion Model合集 part1

扩散模型原理介绍1一&#xff0c;条件概率公式与高斯分布的KL散度重参数技巧二&#xff0c;VAE和多层VAE回顾单层VAE的原理公式与置信下界多层VAE的原理公式与置信下界三&#xff0c;Diffusion Model 图示四&#xff0c;扩散过程(Diffusion Process)与VAE的区别&#xff1a;如何…

腾讯云weda低代码让别人能看到发布的应用

我们先登录低代码的平台 腾讯云-控制台 (tencent.com) 我们从创建应用开始讲起&#xff0c;点击新建门户应用&#xff1a; 点击确定 我们先把这个应用发布。 确认发布。 显示出&#xff0c;下面这个已经发布成功后&#xff0c;我们就返回到主页面。 返回主界面&#xff0c;点…

《Docker系列》Docker安装MySQL 5.7

Docker安装MySQL 5.7 一、docker拉取MySQL 5.7镜像 docker pull mysql 拉取最新MySQL docker pull mysql:5.7 拉取指定版本MySQL 1 拉取mysql 5.7镜像 [rootzxy_master ~]# docker pull mysql:5.7 5.7: Pulling from library/mysql d26998a7c52d: Pull complete 4a9d8a356…

JavaWeb之Servelt学习

1.Servlet 概念&#xff1a;运行在服务端的小程序 Servlet就是一个接口&#xff0c;定义了java类被浏览器访问到&#xff08;tomcat识别&#xff09;的规则 将来我们自定义一个类&#xff0c;实现Servlet接口&#xff0c;复写方法 1.1快速入门 1.创建javaEE项目 2.定义类实…

DFS——连通性和搜索顺序(回溯)

文章目录概述连通性问题模板思考迷宫红与黑搜索顺序(回溯)模板思考马走日单词接龙分成互质组总结概述 定义 在深度优先搜索中&#xff0c;对于最新发现的顶点&#xff0c;如果它还有以此为顶点而未探测到的边&#xff0c;就沿此边继续探测下去&#xff0c;当顶点v的所有边都已…

JavaScript刷LeetCode拿offer-滑动窗口

一、前言 《JavaScript刷LeetCode拿offer-双指针技巧》中&#xff0c;简单地介绍了双指针技巧相比较单指针的优点&#xff0c;以及结合 Easy 难度的题目带大家进一步了解双指针的应用。 进入 Medium 难度之后&#xff0c;解题的关键在于如何构造双指针以及确定指针移动的规则…

从 0 开始学 Python 自动化测试开发(二):环境搭建

本文是「从 0 开始学 Python 自动化测试开发」专题系列文章第二篇 —— 环境搭建篇&#xff0c;适合零基础入门的同学。没有阅读过上一篇的同学&#xff0c;请戳主页看上一篇噢。作者方程老师&#xff0c;是前某跨国通信公司高级测试经理&#xff0c;目前为某互联网名企资深测试…

常见管理网络的net命令

目录1 简介2 常用命令2.1 net view2.2 net user2.3 net use2.4 net start2.5 net stop2.6 net share1 简介 net 命令是一种基于网络的命令&#xff0c;该命令包含了管理网络环境、服务、用户、登录等大部分重要的管理功能。 2 常用命令 2.1 net view 作用&#xff1a;显示域…