在css中,可以使用border-image屬性設定圖片邊框,只需要給元素新增「border-image:圖片路徑 切割寬度 平鋪方式;」樣式即可。 border-image屬性可以為邊框新增背景圖片,實現圖片邊框效果。
本教學操作環境:windows7系統、CSS3&&HTML5版、Dell G3電腦。
在CSS入門階段,我們學習了border-style屬性,也知道邊框只有實線、虛線等幾種簡單的樣式。如果我們想要為邊框添加漂亮的背景圖片,該怎麼做呢?
在CSS3中,我們可以使用border-image屬性為邊框新增背景圖片。現在所有主流瀏覽器最新版本都支援border-image屬性。
語法:
#說明:
border-image屬性需要定義3個方面的內容。
(1)圖片路徑。
(2)切割寬度:四邊的切割寬度,依序為上邊、右邊、下邊、左邊(順時針)。
(3)平鋪方式:有3種取值,分別為repeat、round和stretch。
在本節所有範例中,我們都是使用圖所示的這張90px×90px的圖片作為邊框的背景圖片。
程式碼範例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> div { width:210px; height:150px; border:30px solid gray; border-image:url(img/border.png) 30 repeat; } </style> </head> <body> <div></div> </body> </html>
瀏覽器預覽效果如下圖所示。
分析:
從預覽效果我們可以知道,位於4角的數字1、3、7、9還是乖乖地位於4個角落。然後4條邊框的2、4、6、8會不斷地平鋪。
對於border-image屬性,我們總結如下:
(1)在製作邊框背景圖片時,應該製作4條邊,中間部分需要挖空。
(2)邊框背景圖片每條邊的寬度跟對應的邊框寬度(即border-width)應該相同。
範例:平鋪方式
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> div { width:170px; height:110px; line-height:110px; text-align: center; border:30px solid gray; margin-top:20px; } /*第1个div平铺方式为:repeat*/ #div1{border-image:url(img/border.png) 30 repeat;} /*第2个div平铺方式为:round*/ #div2{border-image:url(img/border.png) 30 round;} /*第3个div平铺方式为:stretch*/ #div3{border-image:url(img/border.png) 30 stretch;} </style> </head> <body> <div id="div1">repeat</div> <div id="div2">round</div> <div id="div3">stretch</div> </body> </html>
瀏覽器預覽效果如下圖所示:
分析:
border-image屬性的平鋪方式有3種:repeat、round、stretch。
(1)取值為repeat時,表示4條邊的小方塊會不斷重複,超出元素部分將會被剪下掉。
(2)取值為round時,表示4條邊的小方塊會鋪滿。為了鋪滿,邊框圖片會壓縮或拉伸。
(3)取值為stretch時,表示4條邊的小方塊會拉伸,邊長有多長就拉多長。
border-image的衍生子屬性
border-image屬性可以分開,分別為4條邊設定對應的背景圖片,這4條邊的屬性如下表所示。
子屬性 | ##說明|
---|---|
定義上邊框背景圖片 | |
定義下邊框背景圖片 | |
#定義左邊框背景圖片 | |
定義右邊框背景圖片 |
css影片教學)
以上是css怎麼設定圖片邊框的詳細內容。更多資訊請關注PHP中文網其他相關文章!