日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

CSS3之border

發布時間:2024/2/28 CSS 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSS3之border 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本來是想把border和background寫一塊的,結果寫著寫著發現background內容太多,先發border吧


目錄

1.border-radius

(1)不做拆分

(2)拆分

(3)大合并

2.border-image

(1)border-image-source

(2)border-image-slice

(3)border-image-repeat

(4)borde-image-width:設置填充小方塊的寬度

(5)border-image-outset:設置border-image在邊框的位置


1.border-radius

border-radius這個屬性在學習CSS2的時候也經常使用,現在對它進行拆分,先來做一個正方形如下,然后看看我們在CSS2中是怎么用的吧

(1)不做拆分

【例1】四角統一設置一個參數

<!DOCTYPE html> <html lang="en"> <head><style>div {width: 100px;height: 100px;/* 居中三件套 */position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;/* 做圓 */border-radius: 50%;}</style> </head> <body><div></div> </body> </html>

【結果】?

【例2】設置兩個參數

div {width: 100px;height: 100px;/* 居中三件套 */position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;/* 兩個參數 */border-radius: 50px 30px; }

【結果】左上與右下50px,右上與左下30px

【例3】設置三個參數

div {width: 100px;height: 100px;position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;border-radius: 50px 10px 20px; }

?【結果】左下與右上同為一個參數

【例4】設置4個參數

div {width: 100px;height: 100px;position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;border-radius: 10px 20px 30px 40px; }

【結果】

?

(2)拆分

【例1】給每個角設置不同的值,該方法與傳4個參數相同

div {width: 100px;height: 100px;position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;border-top-left-radius: 10px;border-top-right-radius: 20px;border-bottom-right-radius: 30px;border-bottom-left-radius: 40px; }

【結果】左上,右上,右下,左下的圓角像素分別為10px,20px,30px,40px

【例2】拆分后可各傳兩個參數,用左上角舉例

div {width: 100px;height: 100px;position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;border-top-left-radius: 20px 20px; }

?先設置圓角為20px,使用控制臺去改變參數值

【結果】可以看到第一個參數控制水平方向的弧度,第二個參數控制垂直方向的弧度

【總結】圓角相當于拿一個有弧度的圖形去截直角,當水平與垂直方向的參數相同時,相當于去拿正圓截。

(3)大合并

將這八個參數同時寫在border-radius中,如下

div {width: 100px;height: 100px;position: absolute;left: calc(50% - 100px);top: calc(50% - 100px);border: 2px solid #000;border-radius: 10px 20px 30px 40px / 40px 30px 20px 10px; }

【結果】由圖可知,參數對應關系如下左上水平,右上水平,右下水平,左下水平 / 左上垂直,右上垂直,右下垂直,左下垂直

2.border-image

(1)border-image-source

該屬性可控制邊框由什么填充,可以是圖片,也可以是漸變色等,需與slice配合使用,所以先講完border-image-slice再舉例

(2)border-image-slice

要填充到邊框內的圖片? ? ? ? ? ? ?

?該圖片,由線1,2,3,4分割成九塊,除了第5個小方塊,其他依次填充到邊框的左上角,上中,右上角,右中,右下角,下中,左下角,左中,即將第五小塊掏空,剩余部分作為邊框,但是每一個小塊都是獨立的。

slice的屬性值決定了如何切割該圖片,最多傳4個參數,4個參數依次為切割線3,2,4,1(上右下左)距離它最近邊框的距離。例如,第二個參數為30px,第四個參數為20px時,則切割線2距離圖片有邊框的距離為30px,切割線1距離圖片左邊框的距離就為20px,即方塊1的寬度為20px,方塊3的寬度為30px,方塊2的寬度是圖片的寬減去方塊1,3的寬度,然后按照border-image-repeat屬性值的方式填充到上邊框中間的位置。

【例】第一個方塊邊框填充漸變色,第二個方塊邊框填充圖片(81px*81px)

<!DOCTYPE html> <html lang="en"><head><style>* {margin: 0;padding: 0;}body {background-color: #000;}.wrapper {position: absolute;top: calc(50% - 77px);left: calc(50% - 160px);}.wrapper div {float: left;}.demo1 {width: 100px;height: 100px;background-color: #eee;border: 27px solid #424242;border-image-source: linear-gradient(#fcc, #ccf);border-image-slice: 1;margin-right: 12px;}.demo2 {width: 100px;height: 100px;border: 27px solid #424242;border-image-source: url(./red.png);border-image-slice: 27 27 27 27;}</style> </head><body><div class="wrapper"><div class="demo1"></div><div class="demo2"></div></div> </body></html>

【結果】

【備注】圖片如下

【注】slice屬性值不帶像素,自動加px,也可為百分值,4個參數也可以合并為1/2/3個參數?

(3)border-image-repeat

該屬性決定了截取出來的圖片在邊框上的填充方式,屬性值介紹如下

stretch:拉伸,默認屬性

【例】

<!DOCTYPE html> <html lang="en"><head><style>* {margin: 0;padding: 0;}body {background-color: #000;}div {position: absolute;top: calc(50% - 77px);left: calc(50% - 77px);width: 100px;height: 100px;border: 27px solid #424242;border-image-source: url(./red.png);border-image-slice: 27 27 27 27;border-image-repeat: stretch;}</style> </head> <body><div></div> </body> </html>

【結果】

?repeat:平鋪,當所給寬度不是切割后的小方塊的整數倍時,直接用不完整的小方塊從兩邊開始填充

【例】修改border-image-repeat的屬性值為repeat

【結果】在控制臺增加div的寬度,可以看到repeat的平鋪方式

round:平鋪,當所給寬度不是切割后的小方塊的整數倍時,拉伸/壓縮后填充

【例】修改border-image-repeat的屬性值為round

【結果】在控制臺增加div的寬度,可以看到round的平鋪方式

space:平鋪,?當所給寬度不是切割后的小方塊的整數倍時,用空白填充不足的部分

【例】修改border-image-repeat的屬性值為space

【結果】在控制臺增加div的寬度,可以看到space的平鋪方式

(4)borde-image-width:設置填充小方塊的寬度

【例】

(5)border-image-outset:設置border-image在邊框的位置

【例】

?

總結

以上是生活随笔為你收集整理的CSS3之border的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。