文章摘抄?http://www.w3cplus.com/css/css-hr
?
<hr>標簽是html4用來制作水平線的。如果你在網頁制作中使用了<hr />標簽來制作水平分隔線,你知道在沒有樣式設置的情況下,他是很難看的。<hr/>在各瀏覽器的顯示常常是 100%的寬度,2px的高度,3D邊框風格渲染 。默認情況是不太好看,或者也不符合你的網頁風格,但是你給<hr/>標簽設置了樣式,這樣他看起來就不會那么難看,同時也更能適合你的頁面風格。但是,你千萬要小心,因為有一些瀏覽器對<hr/>渲染出來的風格是不一樣的。大家先來看一朋友在其頁中運用的<hr/>在Firefox 和IE下的效果:
從上圖中很明顯得知,你在樣式中設置<hr/>的邊框樣式,在各瀏覽器下顯示是不一樣的
hr
{
border-top
:
1
px solid
#ddd
;
}
此時在IE下顯示是1px的邊框線;但在Firefox,Opera等瀏覽器下顯示的卻是2px的邊框,如果你把邊值從新設置:
hr
{
border
:
none;
}
此時效果又不一樣,在Firefox,Opera等瀏覽器下不會顯示任何邊框,可是在IE下卻照常有一條1px的細線顯示。
上面是<hr/>線寬在瀏覽器下顯示不一樣,其實他的顏色設置也是不一樣的: <hr/>在IE下是通過前景色“color”來控制他的顏色;而在Firefox和Opera等現代瀏覽器下只有背景色“background-color”才能控制他的顏色。換句話說,只有前景色和背景色設置一樣時,他們才會顯示一樣的顏色。
hr
{
color
:
red;
}
/*這樣設置只會在IE下有效果*/
hr
{
background-color
:
red;
}
/*這樣設置只有Firefox和Opera等現代瀏覽器下有效果*/
所以為了達到各瀏覽器下顯示效果一樣,你需要對<hr/>同時設置前景色和背景色,并且他們的值要設置成相同的值:
hr
{
color
:
red;
background-color
:
red;
}
這樣下來,在Opera下還是無法工作,因為在給線條定色之前,Opera還需要給他定義一個高度:
hr
{
color
:
red;
background-color
:
red;
height
:
1
px;
border
:
none;
}
這樣下來,你的<hr/>在各瀏覽器渲染將在達到一致的風格,不過在下建議最好在加上兩個屬性,這要在IE6下運行將更穩定:
hr
{
color
:
red;
background-color
:
red;
height
:
1
px;
line-height
:
1
px;
font-size
:
0
;
border
:
none;
}
現在解決了<hr/>制線線條的粗細和顏色問題,最后他還有一個對齊問題,比如說你想讓50%寬度的線條,左對齊或者右對齊,你肯定會想到使用float屬性,進行左浮動或者右浮動,如:
hr
{
color
:
red;
background-color
:
red;
height
:
1
px;
line-height
:
1
px;
font-size
:
0
;
border
:
none;
width
:
50
%;
float
:
right;
}
這樣下來在IE下是不能正常運行的,為了能讓他在IE下正常工作,需要把代碼改成:
hr
{
color
:
red;
background-color
:
red;
height
:
1
px;
line-height
:
1
px;
font-size
:
0
;
border
:
none;
width
:
50
%;
float
:
right;
display
:
block;
/*改變hr的顯示風格*/
text-align
:
right;
/*右對齊*/
}
上面介紹了如何讓<hr/>標簽制作的水平分隔線能在所有瀏覽器下渲染成一樣的風格。那么下面我們使用上面的知識和CSS3的漸變效果,來制作一些效果好看的分隔線。
首先來看第一個實例,制作普通的水平分隔線,代碼如下:
HTML Markup
<
hr
class
=
"normal"
/>
CSS Code:
hr
.normal
{
background
:
#ddd
;
/*改變現代瀏覽器下線條色*/
color
:
#ddd
;
/*改變IE瀏覽器下線條色,最好和Background-color設置一樣的色*/
clear
:
both;
/*可以用來清除浮動*/
float
:
none;
/*取消浮動,可以不設置*/
width
:
100
%;
/*顯式定義寬度*/
height
:
1
px;
/*改變部分瀏覽器下的默認高度*/
line-height
:
1
px;
/*保證IE下高度效果一致,不留白色空白區*/
font-size
:
0
;
/*設置為0,以確保IE6下不留空白區*/
border
:
none
0
;
/*取消默認邊框,以背景和高度代替邊框效果*/
margin
:
0
0
1.4
em;
}
上面是制作普通水平分隔線的效果,如果你在你的制作中經常使用hr來制作水平線,你可以將其寫入你的base.css樣式中,下面我們接著來看兩種CSS3制作的效果:兩邊淡化效果以及浮雕效果。
?
<hr>常規化狀態下樣式:
hr
{
background
:
#ddd
;
/*改變現代瀏覽器下線條色*/
color
:
#ddd
;
/*改變IE瀏覽器下線條色,最好和Background-color設置一樣的色*/
clear
:
both;
/*可以用來清除浮動*/
float
:
none;
/*取消浮動,可以不設置*/
width
:
100
%;
/*顯式定義寬度*/
height
:
1
px;
/*改變部分瀏覽器下的默認高度*/
line-height
:
1
px;
/*保證IE下高度效果一致,不留白色空白區*/
font-size
:
0
;
/*設置為0,以確保IE6下不留空白區*/
border
:
none
0
;
/*取消默認邊框,以背景和高度代替邊框效果*/
margin
:
0
0
1.4
em;
}
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

