1.名前は可能な限り短くする

可能な限り短いid/class名にする。また、名前でどういう要素か判断できるとベストです。
ただし、短くし過ぎて意味がわからなくなるのもNG

悪い例
#wrapper{
    width: 960px;
}

.btm{
    margin: 0 0 20px;
}
良い例
#wrap{
    width: 960px;
}

.bottom{
    margin: 0 0 20px;
}

理由として
id/class名が長すぎると全体的にソースコードが長くなり綺麗なソースコードではなくなるため

2.単語区切りの繋ぎのルールを統一する

id/class名の単語区切りは、統一するようにしましょう。
繋ぎ方は、「-(ハイフン)」「_(アンダーバー)」「キャメルケース」などがあります。

悪い例
#headerInner{
    width: 960px;
}

#main-inner{
    width: 960px;
}

#footer_inner{
    width: 960px;
}
良い例
#header-inner{
    width: 960px;
}

#main-inner{
    width: 960px;
}

#footer-inner{
    width: 960px;
}

理由として
id/class名を統一するためのルール

3.id/class名にはタグの指定をしない

id/class名でCSSを定義する場合は、タグの指定はしないでください。

悪い例
div#main-contents{
    width: 960px;
}

p.red{
    color: #f00;
}
良い例
#main-contents{
    width: 960px;
}

.red{
    color: #f00;
}

理由として
cssのコードを短くするため

4.数値を使用する場合は、ゼロから

連番で数値を指定するCSSを提示する場合は、ゼロから開始してください。

悪い例
.bnr1{
    width: 100px;
}

.bnr2{
    width: 120px;
}

.bnr3{
    width: 140px;
}
良い例
.bnr0{
    width: 100px;
}

.bnr1{
    width: 120px;
}

.bnr2{
    width: 140px;
}

理由として
プログラムの観点に合わせましょう。

5.できる限りid/class名を追加しないようにする

親要素のid名などからの参照でCSSの定義ができるのであれば、その参照を優先する。
(無駄にid/class名を増やさない。)

悪い例
htmlコード
<div id="main-contents">
<p class="txt">綺麗なcssコードを</p>
</div>

cssコード
.txt{
    font-size: 14px;
}
良い例
htmlコード
<div id="main-contents">
<p>綺麗なcssコードを</p>
</div>

cssコード
#main-contents p{
    font-size: 14px;
}

理由として
全体的にソースコードが長くなり綺麗なソースコードではなくなるため

6.できる限り短い定義でプロパティを指定する

分割できるプロパティがいくつかありますが、できるだけ短く定義しましょう。

悪い例
.box{
    padding-top: 10px;
    padding-left: 11px;
    padding-bottom: 12px;
    padding-right: 13px;
}
良い例
.box{
    padding: 10px 11px 12px 13px;
}

理由として
ソースコードの統一のため

7.色定義は3桁で指定する

6桁必要な場合もありますが、3桁で指定できるものは3桁で指定しましょう。

悪い例
.red{
    color: #ff0000;
}
良い例
.red{
    color: #f00;
}

理由として
ソースコードの統一のため

8.プロパティの指定順を統一する

1.位置情報系(position, top, bottom, left, right, z-index, display, float 等)
2.レイアウト系(overflow, width, height, min-width, min-height, padding, margin 等)
3.文字系(font, line-height, letter-spacing, color, text-align 等)
4.背景・ボーダー(background, border 等)
5.その他(animation, transition 等)

悪い例
.box{
    font-size: 12px;
    margin: 0 0 0 10px;
    color: #f00;
    padding: 0 0 0 10px;
}
良い例
.box{
    margin: 0 0 0 10px;
    padding: 0 0 0 10px;
    color: #f00;
    font-size: 12px;
}

理由として
ソースコードの統一のため

9.ブロック開始位置を統一する

悪い例
.box
{
    margin: 10px 0 0 10px;
}

.txt {
    font-size: 12px;
    color: #f00;
}
良い例
.box{
    margin: 10px 0 0 10px;
}

.txt{
    font-size: 12px;
    color: #f00;
}

理由として
ソースコードの統一のため

10.別のセレクタとの記述ルール

別のセレクタを改行するのか、半角スペースを入れて続けて記述するのか、統一する。

悪い例
.box,
.txt,
.line,
.tit{
    margin: 10px 0 0 10px;
}

.img, .txt, .menu, .side{
    padding: 10px 0 0 10px;
}
良い例
.box,
.txt,
.line,
.tit{
    margin: 10px 0 0 10px;
}

.img,
.txt,
.menu,
.side{
    padding: 10px 0 0 10px;
}

理由として
ソースコードの統一のため

11.別のCSS定義との記述ルール

改行を入れ1行空けてから記述する。

悪い例
.box{
    margin: 10px 0 0 10px;
}
.txt {
    font-size: 12px;
    color: #f00;
}
良い例
.box{
    margin: 10px 0 0 10px;
}

.txt {
    font-size: 12px;
    color: #f00;
}

理由として
ソースコードの統一のため

12.プロパティと値の記述ルール

プロパティと値の間に半角スペースを入れる。

悪い例
.box{
    margin:10px 9px 8px 7px;
}
良い例
.box{
    margin: 10px 9px 8px 7px;
}

理由として
ソースコードの統一のため

13.カテゴリ・エリア毎にコメントで区切りを記述する

ページカテゴリ毎・エリア毎に、コメントで区切りを作り、解読性を高める。

コメントの記述例
/* HEADER STYLES
------------------------------------ */
#header{
    width: 960px;
    text-align: left;
}

/* MAIN STYLES
------------------------------------ */
#main{
    width: 960px;
    text-align: left;
}

/* FOOTER STYLES
------------------------------------ */
#footer{
    width: 960px;
    text-align: left;
}

理由として
ソースコードを見やすくするため