自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS border屬性邊框用法揭秘

開發(fā) 前端
本文向大家描述一下CSS border屬性邊框的使用,元素的邊框(border)是圍繞元素內(nèi)容和內(nèi)邊距的一條或多條線,跟表格table的border類似。

在HTML中,我們使用表格來創(chuàng)建文本周圍的邊框,但是通過使用CSS邊框?qū)傩?,我們可以?chuàng)建出效果出色的邊框,并且可以應(yīng)用于任何元素。

CSS border屬性邊框

元素的邊框(border)是圍繞元素內(nèi)容和內(nèi)邊距的一條或多條線,跟表格table的border類似。

CSS border屬性允許你規(guī)定元素邊框的樣式、寬度和顏色。

CSS邊框

在HTML中,我們使用表格來創(chuàng)建文本周圍的邊框,但是通過使用CSS邊框?qū)傩?,我們可以?chuàng)建出效果出色的邊框,并且可以應(yīng)用于任何元素。

元素外邊距內(nèi)就是元素的的邊框(border)。元素的邊框就是圍繞元素內(nèi)容和內(nèi)邊據(jù)的一條或多條線。

每個(gè)邊框有3個(gè)方面:寬度、樣式,以及顏色。在下面的篇幅,我們會(huì)為您詳細(xì)講解這三個(gè)方面。

邊框與背景

CSS規(guī)范指出,邊框繪制在“元素的背景之上”。這很重要,因?yàn)橛行┻吙蚴恰伴g斷的”(例如,點(diǎn)線邊框或虛線框),元素的背景應(yīng)當(dāng)出現(xiàn)在邊框的可見部分之間。

CSS2指出背景只延伸到內(nèi)邊距,而不是邊框。后來CSS2.1進(jìn)行了更正:元素的背景是內(nèi)容、內(nèi)邊距和邊框區(qū)的背景。大多數(shù)瀏覽器都遵循CSS2.1定義,不過一些較老的瀏覽器可能會(huì)有不同的表現(xiàn)。

邊框的樣式

樣式是邊框最重要的一個(gè)方面,這不是因?yàn)闃邮娇刂浦吙虻娘@示(當(dāng)然,樣式確實(shí)控制著邊框的顯示),而是因?yàn)槿绻麤]有樣式,將根本沒有邊框。

CSS的border-style屬性定義了10個(gè)不同的非inherit樣式,包括none。

例如,您可以為把一幅圖片的邊框定義為outset,使之看上去像是“凸起按鈕”:

  1. a:linkimg{border-style:outset;}  
  2.  

定義多種樣式

您可以為一個(gè)邊框定義多個(gè)樣式,例如:

  1. p.aside{border-style:soliddotteddasheddouble;}  
  2.  

上面這條規(guī)則為類名為aside的段落定義了四種邊框樣式:實(shí)線上邊框、點(diǎn)線右邊框、虛線下邊框和一個(gè)雙線左邊框。

我們又看到了這里的值采用了top-right-bottom-left的順序,討論用多個(gè)值設(shè)置不同內(nèi)邊距時(shí)也見過這個(gè)順序。

定義單邊樣式

如果您希望為元素框的某一個(gè)邊設(shè)置邊框樣式,而不是設(shè)置所有4個(gè)邊的邊框樣式,可以使用下面的單邊邊框樣式屬性:

  1. border-top-style  
  2. border-right-style  
  3. border-bottom-style  
  4. border-left-style  
  5.  

因此這兩種方法是等價(jià)的:

  1. p{border-style:solidsolidsolidnone;}  
  2. p{border-style:solid;border-left-style:none;}  
  3.  

注意:如果要使用第二種方法,必須把單邊屬性放在簡寫屬性之后。因?yàn)槿绻褑芜厡傩苑旁赽order-style之前,簡寫屬性的值就會(huì)覆蓋單邊值none。#p#

邊框的寬度

您可以通過border-width屬性為邊框指定寬度。

為邊框指定寬度有兩種方法:可以指定長度值,比如2px或0.1em;或者使用3個(gè)關(guān)鍵字之一,它們分別是thin、medium(默認(rèn)值)和thick。

注釋:CSS沒有定義3個(gè)關(guān)鍵字的具體寬度,所以一個(gè)用戶代理可能把thin、medium和thick分別設(shè)置為等于5px、3px和2px,而另一個(gè)用戶代理則分別設(shè)置為3px、2px和1px。

所以,我們可以這樣設(shè)置邊框的寬度:

  1. p{border-style:solid;border-width:5px;}  
  2.  

或者:

  1. p{border-style:solid;border-width:thick;}  
  2.  

定義單邊寬度

您可以按照top-right-bottom-left的順序設(shè)置元素的各邊邊框:

  1. p{border-style:solid;border-width:15px5px15px5px;}  
  2.  

上面的例子也可以簡寫為(這樣寫法稱為值復(fù)制):

p{border-style:solid;border-width:15px5px;}您也可以通過下列屬性分別設(shè)置邊框各邊的寬度:

  1. border-top-width  
  2. border-right-width  
  3. border-bottom-width  
  4. border-left-width  
  5.  

因此,下面的規(guī)則與上面的例子是等價(jià)的:

  1. p{  
  2. border-style:solid;  
  3. border-top-width:15px;  
  4. border-right-width:5px;  
  5. border-bottom-width:15px;  
  6. border-left-width:5px;  

沒有邊框

在前面的例子中,您已經(jīng)看到,如果希望顯示某種邊框,就必須設(shè)置邊框樣式,比如solid或outset。

那么如果把border-style設(shè)置為none會(huì)出現(xiàn)什么情況:

p{border-style:none;border-width:50px;}盡管邊框的寬度是50px,但是邊框樣式設(shè)置為none。在這種情況下,不僅邊框的樣式?jīng)]有了,其寬度也會(huì)變成0。邊框消失了,為什么呢?

這是因?yàn)槿绻吙驑邮綖閚one,即邊框根本不存在,那么邊框就不可能有寬度,因此邊框?qū)挾茸詣?dòng)設(shè)置為0,而不論您原先定義的是什么?

記住這一點(diǎn)非常重要。事實(shí)上,忘記聲明邊框樣式是一個(gè)常犯的錯(cuò)誤。根據(jù)以下規(guī)則,所有h1元素都不會(huì)有任何邊框,更不用說20像素寬了:

h1{border-width:20px;}由于border-style的默認(rèn)值是none,如果沒有聲明樣式,就相當(dāng)于border-style:none。因此,如果您希望邊框出現(xiàn),就必須聲明一個(gè)邊框樣式。#p#

邊框的顏色

設(shè)置邊框顏色非常簡單。CSS使用一個(gè)簡單的border-color屬性,它一次可以接受最多4個(gè)顏色值。

可以使用任何類型的顏色值,例如可以是命名顏色,也可以是十六進(jìn)制和RGB值:

  1. p{  
  2. border-style:solid;  
  3. border-color:bluergb(25%,35%,45%)#909090red;  
  4. }  
  5.  

如果顏色值小于4個(gè),值復(fù)制就會(huì)起作用。例如下面的規(guī)則聲明了段落的上下邊框是藍(lán)色,左右邊框是紅色:

  1. p{  
  2. border-style:solid;  
  3. border-color:bluered;  
  4. }  
  5.  

注釋:默認(rèn)的邊框顏色是元素本身的前景色。如果沒有為邊框聲明顏色,它將與元素的文本顏色相同。另一方面,如果元素沒有任何文本,假設(shè)它是一個(gè)表格,其中只包含圖像,那么該表的邊框顏色就是其父元素的文本顏色(因?yàn)閏olor可以繼承)。這個(gè)父元素很可能是body、div或另一個(gè)table。

定義單邊顏色

還有一些單邊邊框顏色屬性。它們的原理與單邊樣式和寬度屬性相同:

  1. border-top-color  
  2. border-right-color  
  3. border-bottom-color  
  4. border-left-color  
  5.  
  6.  

要為h1元素指定實(shí)線黑色邊框,而右邊框?yàn)閷?shí)線紅色,可以這樣指定:

  1. h1{  
  2. border-style:solid;  
  3. border-color:black;  
  4. border-right-color:red;  
  5. }  

#p#透明邊框

我們剛才講過,如果邊框沒有樣式,就沒有寬度。不過有些情況下您可能希望創(chuàng)建一個(gè)不可見的邊框。

CSS2引入了邊框顏色值transparent。這個(gè)值用于創(chuàng)建有寬度的不可見邊框。請看下面的例子:

  1. <ahrefahref="#">AAAa> 
  2. <ahrefahref="#">BBBa> 
  3. <ahrefahref="#">CCCa> 
  4.  

我們?yōu)樯厦娴逆溄佣x了如下樣式:

  1. a:link,a:visited{  
  2. border-style:solid;  
  3. border-width:5px;  
  4. border-color:transparent;  
  5. }  
  6. a:hover{border-color:gray;}  
  7.  

從某種意義上說,利用transparent,使用邊框就像是額外的內(nèi)邊距一樣;此外還有一個(gè)好處,就是能在你需要的使用使其可見。這種透明邊框相當(dāng)于內(nèi)邊距,因?yàn)樵氐谋尘皶?huì)延伸到邊框區(qū)域(如果有可見背景的話)。

重要事項(xiàng):在IE7之前,IE/WIN沒有提供對transparent的支持。在以前的版本,IE會(huì)根據(jù)元素的color值來設(shè)置邊框顏色。
 

【編輯推薦】

  1. CSS元素水平居中行之有效的辦法
  2. CSS margin-bottom屬性使用秘訣
  3. CSS樣式表高效使用八大秘訣
  4. CSS overflow溢出屬性
  5. IE6中常見CSS兼容性解決十大技巧

 

 

責(zé)任編輯:佚名 來源: 68tt.com
相關(guān)推薦

2010-09-10 09:42:37

borderclearCSS

2010-08-25 13:18:53

border-collCSS

2010-08-25 13:54:29

CSStop

2010-08-27 10:04:33

borderclearCSS

2010-08-25 16:03:26

CSSborder

2010-08-25 08:47:16

CSScellspacingcellpadding

2010-08-24 13:34:11

CSSpadding

2021-01-25 05:39:54

Css前端Border

2010-08-16 10:18:53

DivCSS

2010-08-25 14:11:01

CSSborder-top

2020-10-23 08:51:55

CSS

2010-08-23 08:45:08

CSSpadding內(nèi)邊距

2010-08-23 15:33:47

CSSpadding

2010-08-25 14:26:09

CSSdisplay

2010-08-25 14:36:35

CSSheightwidth

2010-09-01 13:37:58

CSSclip屬性

2010-08-25 13:33:55

CSSpadding

2010-08-25 10:21:49

CSSmargin

2010-09-03 12:46:28

CSSexpression

2010-09-06 09:50:34

id選擇器CSS
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號