CSSでテキストリンクの色を部分指定しましょう | Web仕事人の部屋

Web仕事人の部屋

札幌のWeb制作会社・株式会社メディアリュウム/株式会社WEBサクセスのスタッフHが、Web制作のTipsなどをお届けします。

こんにちは、橋本です。


今日はCSSでリンクの色の設定しましょう。


ホームページ全体に共通してリンクの色を指定する場合、CSSにはこのように記述します。


a:link{ color:#0033FF;}


a:visited{ color:#009933;}


a:hover{ color:#0099FF;}


a:active{ color:#003399;}


このあたりはみなさんご存知だと思います。

ただ、「どうしてもこの部分だけリンクの色を変えたい!」というときもあろうかと思います。

そんなときはクラスを指定することで、部分的な色変えができるのです。


-------------------------------------------------

<html>

<head>


<style>

a:link{ color:#0033FF;}
a:visited{ color:#009933;}
a:hover{ color:#0099FF;}
a:active{ color:#003399;}


a.red:link{ color:#FF0000;}
a.red:visited{ color:#CC6666;}
a.red:hover{ color:#FF6600;}
a.red:active{ color:#FF6699;}


</style>


</head>


<body>


<p><a href="#">リンクA</a></p>


<p><a href="#" class="red">リンクB</a></p>


</body>


</html>

-------------------------------------------------

まず、このように書いてみました。

スタイル部分の上部に、共通となるリンク色の指定を、下部にクラスを red と名づけて指定しました。

HTMLの部分には、リンクA には共通(青系の色で指定)、リンクBには<a>タグにred(赤系の色で指定)を適用させてみました。

そうすると、

リンク例1

リンクB には、クラス「red」が適用されているのがわかります。

このように、同じファイル上やHPの中でも、部分的にリンクの色を変えたい時は、CSSでクラスを利用するといいのです。


また、ある「範囲」でそれを適用させたい時もあると思います。

そのときには、スタイルの書き方を少し変えます。

-------------------------------------------------

<html>


<head>

<style>

.red a:link{ color:#FF0000;}
.red a:visited{ color:#CC6666;}
.red a:hover{ color:#FF6600;}
.red a:active{ color:#FF6699;}

</style>

</head>


<body>

<p class="red"><a href="#">リンクC</a> | <a href="#">リンクD</a> | <a href="E">リンクE</a></p>
</body>


</html>

-------------------------------------------------

今度は、クラス「red」を、<p>タグに適用させました。

そうすると

リンク例2

このようになりました。



先に紹介したスタイルの書き方は  

a.red:link{ }    (a から始めます)


後に紹介したスタイルの書き方は 

.red a:link{ }    (.red から始めます)


となっているように、適用させる範囲によって記述の仕方が変わってきます。


適用させたいものが<p>タグなどでひとくくりになっているなら、リンクひとつひとつ<a>タグにクラスを指定していくよりは、<p>タグに適用させるほうが効率的ともいえますね。

ただ、あちらこちらとリンクの色を変えているとユーザーも迷ってしまいますから、あまり多用するのは避けた方がいいでしょう(^^)。


星ちなみに、


a:link{  }
a:visited{  }
a:hover{  }
a:active{  }


これらを指定するときには、必ずこの順番で記述するようにしましょう。

この順番を変更して書くと、きちんと適用されなくなる場合がありますのでご注意です。