日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

CSS3之border

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

本來是想把border和background寫一塊的,結果寫著寫著發(fā)現(xiàn)background內容太多,先發(fā)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的時候也經常使用,現(xiàn)在對它進行拆分,先來做一個正方形如下,然后看看我們在CSS2中是怎么用的吧

(1)不做拆分

【例1】四角統(tǒng)一設置一個參數(shù)

<!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】設置兩個參數(shù)

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

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

【例3】設置三個參數(shù)

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

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

【例4】設置4個參數(shù)

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個參數(shù)相同

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】拆分后可各傳兩個參數(shù),用左上角舉例

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,使用控制臺去改變參數(shù)值

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

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

(3)大合并

將這八個參數(shù)同時寫在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; }

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

2.border-image

(1)border-image-source

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

(2)border-image-slice

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

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

slice的屬性值決定了如何切割該圖片,最多傳4個參數(shù),4個參數(shù)依次為切割線3,2,4,1(上右下左)距離它最近邊框的距離。例如,第二個參數(shù)為30px,第四個參數(shù)為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個參數(shù)也可以合并為1/2/3個參數(shù)?

(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:平鋪,當所給寬度不是切割后的小方塊的整數(shù)倍時,直接用不完整的小方塊從兩邊開始填充

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

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

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

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

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

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

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

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

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

【例】

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

【例】

?

總結

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

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