# 代码规范

# 层级

  1. z-index 不要使用123456这种 单位数增加,因为层级关系如果复杂的话 你将无法在3和4之间插入一个层,而且你还需要去改动所有的层级关系。
  使用 1 9 10 11 99 100 101 这种位数递增
1

# 简写

  1. 代码书写顺序建议: 布局样式 > 自身样式 > 文本样式 > 其他样式
  • 布局样式:position、display、float
  • 自身样式:width、height、margin、padding、border、background
  • 文本样式:text-align、text-indent、line-height、font、color
  • 其他样式:content、cursor、border-radius、box-shadow
  1. 属性尽量使用简写形式,如font、padding、background 等
/* bad */
font-style: italic;
font-weight: bold;
font-size: .8em;
line-height: 1.2;
font-family: Arial, sans-serif;
padding-bottom: 2em;
padding-left: 1em;
padding-right: 1em;
padding-top: 0;

/* good */
font: italic bold .8em/1.2 Arial, sans-serif;
padding: 0 1em 2em;
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 缩进

  1. 使用 2 个空格做为一个缩进层级, vscode设置Tab Size
.demo {
  font-size: 18px;
  line-height: 1.2;
}
1
2
3
4

# 空格

  1. 以下情况不需要空格:
  • 属性名 与之后的 : 之间
  • 多个规则的分隔符','前
  • 行末不要有多余的空格
/* not good */
.demo {
  color :red;
}

/* not good */
.demo ,
.dialog{
  ...

}
1
2
3
4
5
6
7
8
9
10
11
  1. 以下情况需要空格:
  • 注释 (/*)后和(*/) 前
  • 选择器 与 { 之间必须包含空格。
  • : 与 属性值 之间必须包含空格
  • 选择器'>', '+', '~'前后
  • 属性值 书写在简写时
/* good */
.demo {
  ...
}
/* good */
.demo {
  margin: 0;
}
/* good */
.demo > .dialog {
  ...
}

/* good */
.demo {
  font: italic bold .8em/1.2 Arial, sans-serif;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# 换行

  1. 多个规则的分隔符(,)后
/* good */
.user,
.list,
.content {
  color: red;
}

/* bad */
.user, .list, .content {
  color: red;
}
1
2
3
4
5
6
7
8
9
10
11
  1. 属性定义
/* good */
.demo {
  margin: 0;
  padding: 0;
}

/* bad */
.demo { margin: 0; padding: 0; }
1
2
3
4
5
6
7
8

# 分号

  1. 每个属性末尾后面都要加分号
.demo {
  width: 20px;
  height: 20px;
}
1
2
3
4
  1. 当数值为 0 - 1 之间的小数时,省略整数部分的 0。
/* good */
.demo {
  opacity: .1;
}

/* bad */
.demo {
  opacity: 0.1;
}
1
2
3
4
5
6
7
8
9
  1. 长度为 0 省略单位
/* bad */
margin: 0px;

/* bad */
margin: 0;
1
2
3
4
5
  1. 属性值十六进制数值能用简写的尽量用简写
/* bad */
.demo {
  color: #ffffff;
}

/* good */
.demo {
  color: #fff;
}
1
2
3
4
5
6
7
8
9

# 引号

  1. 统一使用双引号
/* bad */
a[href^='#'] {
  background-color: gold;
}

/* good */
a[href^="#"] {
  background-color: gold;
}

/* bad */
.demo:after {
  content: ''
}

/* good */
.demo:after {
  content: ""
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Last Updated: 2/18/2021, 11:02:52 PM