CSS LESS 开发规范

3 值与单位

3.1 文本

[必须] 文本内容必须用双引号包围。

解释:

文本类型的内容可能在选择器、属性值等内容中。

示例:

/* good */
html[lang|="zh"] q:before {
    font-family: "Microsoft YaHei", sans-serif;
    content: "“";
}

html[lang|="zh"] q:after {
    font-family: "Microsoft YaHei", sans-serif;
    content: "”";
}

/* bad */
html[lang|=zh] q:before {
    font-family: 'Microsoft YaHei', sans-serif;
    content: '“';
}

html[lang|=zh] q:after {
    font-family: "Microsoft YaHei", sans-serif;
    content: "”";
}

3.2 数值

[必须] 当数值为 0 - 1 之间的小数时,省略整数部分的 0

示例:

/* good */
panel {
    opacity: .8
}

/* bad */
panel {
    opacity: 0.8
}

3.3 url()

[必须] url() 函数中的路径加双引号。

示例:

body {
    background: url("bg.png");
}

[必须] url() 函数中的绝对路径可省去协议名。

示例:

body {
    background: url("//baidu.com/img/bg.png") no-repeat 0 0;
}

3.4 长度

[必须] 长度为 0 时须省略单位。 (也只有长度单位可省)

示例:

/* good */
body {
    padding: 0 5px;
}

/* bad */
body {
    padding: 0px 5px;
}

3.5 颜色

[必须] RGB颜色值必须使用十六进制记号形式 #rrggbb

解释:

带有alpha的颜色信息可以使用 rgba()。使用 rgba() 时每个逗号后必须保留一个空格。

示例:

/* good */
.success {
    box-shadow: 0 0 2px rgba(0, 128, 0, .3);
    border-color: #008000;
}

/* bad */
.success {
    box-shadow: 0 0 2px rgba(0,128,0,.3);
    border-color: rgb(0, 128, 0);
}

[必须] 颜色值可以缩写时,必须使用缩写形式。

示例:

/* good */
.success {
    background-color: #aca;
}

/* bad */
.success {
    background-color: #aaccaa;
}

[必须] 颜色值不允许使用命名色值。

示例:

/* good */
.success {
    color: #90ee90;
}

/* bad */
.success {
    color: lightgreen;
}

[建议] 颜色值中的英文字符采用小写。如不用小写也需要保证同一项目内保持大小写一致。

示例:

/* good */
.success {
    background-color: #aca;
    color: #90ee90;
}

/* good */
.success {
    background-color: #ACA;
    color: #90EE90;
}

/* bad */
.success {
    background-color: #ACA;
    color: #90ee90;
}

3.6 2D 位置

[必须] 必须同时给出水平和垂直方向的位置。

解释:

2D 位置初始值为 0% 0%,但在只有一个方向的值时,另一个方向的值会被解析为 center。为避免理解上的困扰,应同时给出两个方向的值。background-position属性值的定义

示例:

/* good */
body {
    background-position: center top; /* 50% 0% */
}

/* bad */
body {
    background-position: top; /* 50% 0% */
}