成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用CSS邊框圖像讓你的網站更漂亮

開發 前端
這篇文章全部關于屬性 border-image : 它的值,如何以最好的方式使用它們,什么瀏覽器才能支持。如果你想知道更多細節,可以查詢 CSS Backgrounds and Borders Level 3。

不久之前,添加一些裝飾性元素,例如給網頁中的圖片添加花哨的邊,以及耐心調整CSS文件才能使你的網頁看起來不錯。然而現在CSS已經做出了改變,用復雜的邊框裝飾你的網站只需幾行代碼。這篇文章將告訴你如何做到!

邊框屬性(Border Image Properties)

最普通的方法去設計邊框就是使用預設的邊框樣式屬性值。包 括: dotted, dashed,solid, double, groove, ridge, inset, 和 outset。這些樣式已經給了 你不少選擇。但是你可以更進一步使用接下來的CSS屬性去增加吸引人的背景圖片到你的邊框。

border-image-source 屬性

使用這個屬性,你可以分配一個背景圖片到element的邊框中。這個值常常是圖片的URL:

 

  1. element { 
  2.   border-image-source: url('myimage.png'); 
  3.  
  4. 你會發現CSS的漸變同樣產生效果: 
  5.  
  6. element { 
  7.   border-image-source: linear-gradient(10deg, #fe01f5 0%, #2e113d 100%); 

在瀏覽器中它大概是這樣的:

Border image with a gradient instead of an image.

如果你設定屬性值為 none,圖片將不會顯示,瀏覽器將使用屬性 border-style 的值。因此,border-style 作為一個后備選項是個不錯的主意!

值得一提的是,你使用的圖片不需要匹配邊框的寬和高,一張小圖片就可以裝飾你的網站,如例子中的element可任意調整其圖片的大小并且可以自動識別適應屏幕的尺寸。

border-image-slice 屬性

在你使用border-image-source 屬性選擇一張圖片之后,你可以應用border-image-slice 屬性。

  1. element { 
  2.   border-image-slice: 19

這個屬性規定圖像上下左右的邊緣向內偏移,圖像被分割成九個區域:四個角,四條邊以及一個中間區域。

The border image sliced up into nine areas: four corners, four edges and a middle area.

你可以規定四個數字或者百分比作為值。當你規定四個數值的時候,它應用順序為上,右,下,左。如果你省略左側偏移值,那么左邊的值將會默認和右邊數 值相同。如果你省略下方數值,它將默認與上方的相同。但如果你省略右側偏移值,它將默認與上方數值相同。如果你只使用一個數值,這個數值將會被應用在所有 偏移值上。

相對于圖像尺寸的百分比值-圖像寬度影響水平偏移,高度影響垂直偏移。

數字值代表圖像像素或者矢量坐標。另,不要在數字后面加px,否則這個屬性將不會工作。

以下是如何使用 border-image-slice屬性的例子:

 

  1. <div class="box"
  2.   Border Image 
  3.   Lorem ipsum dolor sit amet, consectetur adipisicing elit. 
  4. </div> 
  5.  
  6. .box { 
  7.   border: 19px dotted #c905c6; 
  8.   border-image-source: url(border-bg.png); 
  9.   border-image-slice: 19

使用一個 100 x 100px 大小的圖片:

The original border background image

最終效果圖大概是這樣:

中間區域呈現不可見的透明狀態,如果你想保留邊框圖像中間部分,使用關鍵詞fill。

例如,使用一個有中間區域的圖片,如果你使用關鍵詞 fill,你將得到以上的圖片。但是如果你使用它:

  1. .box { 
  2.   border: 19px dotted #c905c6; 
  3.   border-image-source: url(border-fill.png); 
  4.   border-image-slice: 19 fill; 

中間區域的圖片會出現:

The original border filled background image

雖然有點模糊,圖片看起來被壓縮,但是中間區域的圖片可視了:

Border image with fill applied.

border-image-width 屬性

此屬性將會繪制與所謂的突變邊界地區內部,這個邊界默認區域為border box,就像屬性border-image-slice,屬性 border-image-width 規定了內部被劃分為九個區域。

同樣的,此屬性的四個規定值可用數值或百分比代表上,右,下,左的量。百分比參考了圖像區域尺寸,圖像寬度影響水平偏移,高度影響垂直偏移。如果你使用數值,它的用法和 border-width是一樣的。例如:

  1. .box { 
  2.   border: 19px dotted #c905c6; 
  3.   border-image-source: url(border-bg.png); 
  4.   border-image-slice: 19
  5.   border-image-width: 3

… 設定邊框(border)圖片寬為邊框寬(border-width )值的三倍,19px。結果是這樣的:

Border image width set without the px unit.

我發現如果賦值給 border-image-width 和 border-image-slice 屬性值相同,這確保你的邊框圖片處于***狀態而不模糊扭曲。

border-image-outset 屬性

目前為止我已經使用默認值插入圖片與邊框圖片區域。其實你還有一個選項將邊框圖片放在border box區域的外部。這時候你可以使用 border-image-outset 屬性。

同樣的,此屬性的四個規定值可用數值或百分比代表上,右,下,左的量,得其輸出的用法和 border-width 一樣。

為了更清楚的說明,我用綠色虛線代表 border box 的區域,粉紅色的圖片代表。邊框圖片區域。在默認的情況下,邊框圖片在綠色區域中,這表示邊框圖片區域在 border box 區域里面。

Border image inset.

在CSS文件里加上 border-image-outset: 19px; 粉紅色部分將位于綠色部分的外面,這表明邊框圖片位于border box 區域的外面。

Border image outset.

要注意的是在邊界框之外的部分圖像不觸發滾動( trigger scrolling ),也不捕獲鼠標事件( mouse events)。

你可以在 CodePen 試一試我們已經討論過的這些屬性:

 

border-image-repeat 屬性

這個屬性給如何延展以及鋪排邊框圖像的邊緣和中間提供了一些選擇。***個值規定了水平邊緣(上和下),第二個值則規定了數值邊緣(左和右)。如果你只提供一個值,則此值應用于所有的邊。

可用的一些值:

  • stretch – 如果你不使用 border-image-repeat 屬性的默認值。它的屬性是拉伸圖像來填充區域。

  • repeat – 平鋪圖像填充區域。如果可用面積區域不能整除圖片區塊,圖片可以被切斷。

  • round – 和 repeat 相同,但是如果可用的面積區域不能適應圖片區塊,它將自動縮放圖片直到適應為止。這導致圖片不被切斷,但是圖片可能看起來會有點變形。

  • space – 和 repeat 相同,但是如果空間不能正好適應圖片,多出的空間將分布在圖片周圍。

編寫的時候,使用火狐瀏覽器會造成 space 以及 stretch 有一樣的效果,而使用谷歌瀏覽器會造成 space 以及 repeat 擁有一樣的效果。

border-image Shorthand 屬性

將以上我們所學到的關于 border-image 屬性的單個屬性總結以下:

  1. border-image-source

  2. border-image-slice

  3. border-image-width

  4. border-image-outset

  5. border-image-repeat

小例子:

  1. element { 
  2.   border-image: url(myimage.png) 19 / 19px / 0 round; 

在 CodePen 演示頁面上自己試一試 border-image-repeat 和 border-image 的屬性用法吧。

如果我想移除邊框圖片?

***方法就是使用 border Shorthand屬性重新設置邊框。使用 borderShorthand 屬性,你可以很快的重設相同寬度, 相同顏色,相同樣式的四邊。無需規定 border-image:none,也無需重寫任何單獨的 border-image 屬性。

瀏覽器支持

在編寫的時候,大多數瀏覽器都支持 border-image。只有火狐不能拉伸SVG圖片,并且Opera Mini不能支持單獨使用的屬性,除非在使用時加上前綴 -o-。

總結

這篇文章全部關于屬性 border-image : 它的值,如何以***的方式使用它們,什么瀏覽器才能支持。如果你想知道更多細節,可以查詢 CSS Backgrounds and Borders Level 3

譯文鏈接:http://www.codeceo.com/article/css-border-image-website.html
英文原文:Decorating the Web with CSS Border Images

 

責任編輯:王雪燕 來源: 碼農網
相關推薦

2019-09-17 14:31:52

JSJavaScript前端

2020-05-07 10:18:06

JavaScript前端技術

2020-07-24 15:40:51

CSS前端代碼

2011-11-03 13:13:52

jQuery插件

2011-04-29 10:22:49

CSS高性能Web開發

2025-02-17 08:50:00

CSS代碼JavaScript

2018-07-16 00:09:30

數據科學大數據機器學習

2023-11-28 10:17:37

2011-01-13 14:38:00

JavascriptCSSWeb

2015-07-20 15:24:44

Linux工具截圖

2009-02-24 08:21:22

Windows 7桌面亮麗

2009-06-01 14:59:50

css3.0css3

2018-02-06 08:31:27

比特幣網絡攻擊安全

2013-01-06 13:30:27

2010-05-27 10:29:27

IPv6 Ready

2018-09-30 15:43:38

Android谷歌應用

2010-11-02 14:48:48

職場

2020-08-13 10:11:14

物聯網安全智能家居物聯網

2021-03-28 16:55:11

Python工具鏈代碼

2021-04-26 11:09:56

物聯網智能家居技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美日韩中文字幕 | 天天综合国产 | 一区二区av在线 | 国产精品成人一区二区 | 国产大学生情侣呻吟视频 | 久久久区 | 久久青青| 国产精品日韩欧美一区二区三区 | 久久亚洲欧美日韩精品专区 | 99久久精品国产一区二区三区 | 欧美偷偷| 日本不卡在线视频 | 免费在线看黄 | 男女午夜激情视频 | 日韩免费视频一区二区 | 欧美白人做受xxxx视频 | 小草久久久久久久久爱六 | 国精产品一区二区三区 | 91av久久久 | 凹凸日日摸日日碰夜夜 | 99在线观看 | 日韩天堂av | 国产精品久久国产精品 | 中文字幕韩在线第一页 | 国产高清视频一区 | 精品视频一区二区 | 国产夜恋视频在线观看 | av天天澡天天爽天天av | 国产精品美女久久久久aⅴ国产馆 | 国产精品视频网 | av一区在线 | 亚洲一区中文字幕在线观看 | 欧美日韩中文在线观看 | 午夜影院普通用户体验区 | 欧美日韩在线一区二区三区 | 日韩三级 | 爱爱免费视频 | 黑人精品 | 中日字幕大片在线播放 | 亚洲精品久久久久久久久久久久久 | 亚洲国产一区二区三区在线观看 |