1 前言
CSS作为网页样式的描述语言,在百度一直有着广泛的应用。本文档的目标是使CSS代码风格保持一致,容易被理解和被维护。
虽然本文档是针对CSS设计的,但是在使用各种CSS的预编译器(如less、sass、stylus等)时,适用的部分也应尽量遵循本文档的约定。
2 代码风格
2.1 文件
[建议]CSS文件使用无BOM的UTF-8编码。
解释:
UTF-8 编码具有更广泛的适应性。BOM 在使用程序或工具处理文件时可能造成不必要的干扰。
2.2 缩进
[强制] 使用4个空格做为一个缩进层级,不允许使用2个空格 或tab字符。
示例:

2.3 空格
[强制]选择器与{之间必须包含空格。
示例:

[强制]属性名与之后的:之间不允许包含空格,:与属性值之间必须包含空格。
示例:

[强制]列表型属性值书写在单行时,,后必须跟一个空格。
示例:

2.4 行长度
[强制] 每行不得超过120个字符,除非单行不可分割。
解释:
常见不可分割的场景为URL超长。
[建议] 对于超长的样式,在样式值的空格处或,后换行,建议按逻辑分组。
示例:

2.5 选择器
[强制] 当一个 rule 包含多个 selector 时,每个选择器声明必须独占一行。
示例:

[强制]>、+、~选择器的两边各保留一个空格。
示例:
