[CSS] 水平線<hr>のスタイルを変更する
水平線を点線にしたり、独自の画像にしたりする方法です。
毎回ぐぐって調べていたので、メモしておくことにしました。
HTMLで <hr> と書くとでてくる線です。
普通に <hr> とだけ書くとブラウザデフォルトのスタイルで表示されますが、例えば以下のような点線にしたい場合、

HTMLで直接指定する方法
指定した箇所のみが反映されます。
<hr style="border:none;border-top:dashed 1px #CCCCCC;height:1px;color:#FFFFFF">
外部CSSで指定する方法
WEBページ全体で反映されます。
hr{
border:none;
border-top:dashed 1px #CCC;
height:1px;
color:#FFFFFF;
margin: 0 6 0 6;
}
上では、”dashed”というのが点線の意味になりますが
他に以下のものを指定することができます。
<hr>で指定できるスタイル一覧
| スタイル名 | 説明 | 表示例 |
|---|---|---|
| solid | 通常の線 | |
| double | 二重線 | |
| ridge | 山形の線 | |
| groove | 谷型の線 | |
| dotted | 点線 | |
| dashed | 大きな点線 | |
| inset | 内側にくぼんだ線 | |
| outset | 外側に突出した線 |
ただし、この方法だとブラウザによって表示に違いがでるそうです。
私の環境でもいくつかの線が同じに見えます。(^-^;
そこで画像を使うと更にその差異を少なくすることができます。
画像を設定する方法
"background"のところで画像までのurlを指定してやります。
hr {
border: none;
height: 1px;
background:url(img/hr_line.gif) 50% 0 no-repeat;
color: #FFFFFF; /* サイト背景と同じ色を推奨 */
margin: 0 6 0 6;
}
わざわざ"color"で色を設定しているのは、ブラウザによってはデフォルトの灰色が見えてしまうことがあるからです。
参考サイト
以下のサイトを参考にさせてもらいました。

[...] [CSS] 水平線<hr>のスタイルを変更する [...]
[...] [CSS] 水平線<hr>のスタイルを変更する [...]