IDセレクタとクラスセレクタ
セレクタには細かく指定することができます。従って、ある特定の箇所(要素)にだけCSSを適応させることも、当然ですが可能です。ここでは基本のIDセレクタ、クラスセレクタを紹介します。
   (要素名)#名前 { プロパティ: 値 }
例)  h1#ex { color: green }
上の例はIDセレクタによる指定方法です。<h1 id="ex">で囲まれた内容の文字が緑色になります。IDセレクタは、特定の箇所を指定するときに使いますので、そのページ内で同じIDセレクタの名前は使えません。要素名は省略することも可能です。
   (要素名).名前 { プロパティ: 値 }
例)  .ex2 { font-weight: bold; }
上の例はクラスセレクタによる指定方法です。例えば<div class="ex2">で囲まれた内容の文字が太字になります。クラスセレクタのクラス名は、使いまわしが効きます。色々な場所に、その設定を使いたい場合に利用しましょう。
子孫セレクタ
親子関係の要素に対しての指定方法です。セレクタを組み合わせることによって、適応させたい箇所(要素)を、さらに細かく特定させることができます。これもCSSではよく利用しますので、必ず使いこなせるようにしましょう。
    セレクタ セレクタ { プロパティ: 値 }
例1)  p a { text-decoration: none }
例2)  p ul li { list-style-type: square }
セレクタとセレクタの間は必ず半角スペースで区切ります。例1の場合、pタグ内にあるaタグに対してCSSが適用されます。例2の場合は、pタグ内にあるulタグ内のliタグに対して適応されます。上記のように、セレクタは2つ以上の組み合わせが可能です。子孫セレクタは、これ以外にも指定方法はありますが、ブラウザによって対応していない場合もあるので、これだけに留めます。
全称セレクタ(基本セレクタの仲間)
全称セレクタは、すべての要素に対してCSSを適用させます。主にブラウザのデフォルトスタイルシートの初期化をするときに使ったり、CSSハック(特定のブラウザにだけCSSを適応させるテクニック)によく利用されます。子孫セレクタにも利用できます。
* { プロパティ: 値 }  
擬似クラス
主にリンクのデザインに関するセレクタです。以下は使用例です。
a:link { プロパティ:値 }
a:visited { プロパティ:値 }
a:hover { プロパティ:値 }
a:active { プロパティ:値 }
上から順に、訪問したことのないページ、訪問済みのページ、マウスカーソルをリンク箇所に重ねたとき、リンク箇所をクリックした瞬間、となります。要素(a)のところには、クラスセレクタやIDセレクタも使えますので、特定のリンク部分にだけCSSを適用させることも可能です。
また、擬似クラスにはリンク関係以外にも、要素名:foucs、要素名:lang、要素名:first-childの3つがあります。ただし、これらはまだ対応していないブラウザが多いので省略します。
例題
最後にCSSをより使いやすくするために、1つ使用例を紹介します。慣れない内は、どうしてもクラスセレクタに頼りかちになってしまいますが、クラスセレクタばかりでは可読性に乏しくなります。ソースがゴチャゴチャしてしまうと、後々の修正や更新作業にも支障をきたすかもしれません。
<ul>
  <li>トマト</li>
  <li>レタス</li>
  <li>キャベツ</li>
</ul>
例えば、上記htmlのli要素の文字サイズを16ptにCSSで設定する場合です。この場合は、li要素それぞれに同じクラス名を付けても良いですが、li要素の親要素であるul要素に名前を付けるのがスマートで、わかりやすいです。
<ul class="yasai">
  <li>トマト</li>
  <li>レタス</li>
  <li>キャベツ</li>
</ul>
ul.yasai li {
  font-size: 16pt
}
このようにCSSセレクタと子孫セレクタを組み合わせることで、より見やすい記述になります。