"CSS Tips Factory" : Presented by Nishishi via WordPress.

リンクを装飾するhover疑似クラスは記述順が重要 [リンク]

スタイルシートを使えば、リンクの上にマウスポインタが載ったときの装飾を指定できます。簡単に動的っぽい装飾ができるので、とてもよく使われていると思います。具体的には、a要素のhover疑似クラスを用いて装飾を記述するわけですが、他にもclass名やid名を付加して指定している場合に、ちょっと落とし穴があります。例えば、以下のような記述を考えます。

a:hover { color: blue; background-color: #ccffff; }
a.point:link { color: green; }

この場合、pointクラスが付加されたリンクの上にマウスを載せたとき、文字色はどうなるでしょうか?

hover疑似クラスでblueを指定しているので、一見青色になりそうに思えますが、正解はgreen(緑色)です。

なぜなら、スタイルシートは後に指定されたものが採用されるからです。最初にa:hoverの条件に合致するので、文字色は青・背景色は淡い水色になりますが、その直後にa.point:linkにも該当するため、文字色が緑になります。

その結果、最終的にその文字色は緑色になります。

この場合、a:hoverとa.point:linkの記述順序を逆にしなければなりません。

こういう記述順序の問題もあるのでスタイルシートの記述には注意が必要です。装飾の記述が多くなればなるほど、後々分かりにくくなります。(^_^;)

このCSS TIPSへのコメントはお気軽に! [コメント数: 1 件]

著者紹介

主要なカテゴリ

このCSS TIPSへのコメント・トラックバック

コメント数: 1 件

  1. これはコメントの表示例です。
    削除や編集を行うには、管理画面に入室してこの投稿のコメントを表示させてから操作してください。

    コメント by Mr WordPress — 2007/4/18 水曜日 0:49:48

コメント投稿欄 このCSS TIPSに対するコメント投稿を歓迎します。

(必須)

(必須) ※公開されません

※公開(リンク)されます

コメント:

※投稿内容によってはフィルタによって保留扱いとなる場合があります。その場合は承認後に掲載されます。
※本文中にURLっぽい文字列を記述すると、投稿内容はスパム扱いとなって無視されてしまう場合がありますので書かないようご注意下さい。

トラックバック

このCSS TIPSへのトラックバックURLは以下の通りです。

※言及リンクがないトラックバックは拒否されますのでご注意下さい。また、文字コードはUTF-8でお送りいただける方が望ましいです。