共通スタイル
hr{
margin : 0 ;
padding : 0 ;
display : block ;
border-style : solid ;
border-width : 1px 0 0 0 ;
border-color : red ;
background-color : transparent ;
}
素の<hr>を置いてみる。Mozillaでは1pxの赤い線が1本なのに、MacIE5ではグレーの影が…。
様子が変なので、何が起きているのか、高さを50pxにしてみる。
hr.hr2{
background-color : #FFFFE7 ;
height : 50px ;
}
もちろんMozillaでは、赤い線1本と背景色の表示になるのですが、MacIE5では、やややや、四方に何かグレーの影が……。これは何?
確認のためボーダーを無くしてみる。
hr.hr3{
background-color : #FFFFE7 ;
height : 50px ;
border-width : 0 0 0 0 ;
}
Mozillaは背景色のみ、MacIE5はくっきりと四方にグレーの線……。なぜだー。
どーやったら、赤い線1本のみになってくれるのでせうか。誰か教えて。
satoshii様より提案
hr.hr4{
color : red ;
background : transparent ;
height : 1px ;
}
おお、上手い具合に出来ました。が、やっぱりMacIE5では1pxより太いのです……。
これで、 border-width : 0 0 0 0 ; にすれば、MacIE5上では1pxの赤い線が出るのですが、Mozillaで何も表示されないのです。
あ、待てよ。四方のグレーの線というのは、colorで指定される色【参照:徒書・2002年4月27日hrのスタイル】なのかしら。ということは、
hr.hr5{
color : white ;
background-color : transparent ;
height : 1px ;
}
おおおおおっ。完成かっ。
つまり、<hr>をボーダー化するには、下記の如く指定しる。
hr.hr6{
display : block ;
color : white ; ←ここはポイント。親要素の背景色と同じ色を指定すること。transparent にすると何故か「緑」になるので。
background-color : transparent ;
height : 1px ;
border-top : 1px solid red ;
}
やったー。