2、实用胜过完美。有些时候,你可能会发现自己违背了这里所描述的规则。如果感觉自己的方式有道理,感觉很正确,那就继续做吧。编写代码从来都不是一家之言。
(1)受 CSS Guidelines 所启发
// Yep .foo { display: block; overflow: hidden; padding: 0 1em; } // Nope .foo { display: block; overflow: hidden; padding: 0 1em; }
(2)当几个开发者在同一项目中编写 CSS 时,迟早会陷入各自为政的境地。编码样式指南通过规范统一的样式,不仅防止了这种混乱现象,也减轻了阅读和维护代码的难度。不过具体格式规范看个人喜好,也以公司要求为准。
编码:@charset ‘utf-8‘;
引用(引号 ‘或"): Sass 中字符串应该始终被单引号(‘)或(")所包裹
// Yes
$direction: ‘left‘;
// No
$direction: left;
无须引用:
initial
或 sans-serif
的标识符无须引用起来。事实上,font-family: ‘sans-serif‘
该声明是错误的,因为 CSS 希望获得的是一个标识符,而不是一个字符串。因此,我们无须引用这些值。// Yep
$font-type: sans-serif;
// Nope
$font-type: ‘sans-serif‘;
包含引号的字符串
// Okay
@warn ‘You can\‘t do that.‘;
// Okay
@warn "You can‘t do that.";
// Yep .foo { background-image: url(‘/images/kittens.jpg‘); } // Nope .foo { background-image: url(/images/kittens.jpg); }
Sass 中,数字类型包括了长度、持续时间、频率、角度等等无单位数字类型。
零值:当数字小于 1
时,应该在小数点前写出 0.
永远不要显示小数尾部的 0
。
// Yep .foo { padding: 2em; opacity: 0.5; } // Nope .foo { padding: 2.0em; opacity: .5; }
单位:当定义长度时,0
后面不需要加单位。
// Yep
$length: 0;
// Nope
$length: 0em;
该建议只是针对于长度而言,对于类似 transition-delay
的时间属性就是不适合的。简而言之:只有长度可以使用无单位的 0 作为属性值。
添加单位:将一个单位添加给数字的时候,实际上是让该数值乘以1
个单位。
$value: 42;
// Yep
$length: $value * 1px;
// Nope
$length: $value + px;
删除单位:要删除一个值的单位,你需要除以相同类型的 1
单位。
$length: 42px;
// Yep
$value: $length / 1px;
// Nope
$value: str-slice($length + unquote(‘‘), 1, 2);
原文:http://www.cnblogs.com/zxjwlh/p/6240916.html