當(dāng)前位置:首頁(yè) >  IDC >  服務(wù)器 >  正文

CSS中三角形的繪制與巧妙應(yīng)用實(shí)例詳解

 2020-10-15 14:20  來(lái)源: 腳本之家   我來(lái)投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)

這篇文章主要介紹了CSS中三角形的繪制與巧妙應(yīng)用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

網(wǎng)頁(yè)中常見(jiàn)的一些三角形,無(wú)需制作成圖片或者字體圖標(biāo),使用CSS就可以直接畫出來(lái)。如小米官網(wǎng)中:

以及京東網(wǎng)頁(yè)中的:

那么這些三角通過(guò)是CSS怎么實(shí)現(xiàn)的呢?

三角的實(shí)現(xiàn)

我們可以通過(guò)將一個(gè)div容器的寬和高都設(shè)置為0,然后設(shè)置容器的邊框來(lái)實(shí)現(xiàn)。

.box {
height: 0;
width: 0;
border-color: wheat skyblue pink rgb(154, 121, 230);
border-style: solid;
border-width: 40px;
}

通過(guò)以上代碼可以實(shí)現(xiàn)如下效果:

在上述代碼中,盒子的寬和高必須為0,邊框的顏色值依次為上、右、下、左,邊框?yàn)閷?shí)線,四條邊框的寬度均為40px,從而得出4個(gè)等腰直角三角形。其中三角形的大小取決于邊框的寬度, border-width的值越大,三角形也越大。

若只需要其中的一個(gè)三角形,則可以通過(guò)設(shè)置其他邊框顏色透明來(lái)實(shí)現(xiàn)。如要實(shí)現(xiàn)以下效果:

則可以設(shè)置border-top、border-bottom、border-left的顏色值為transparent 即可實(shí)現(xiàn)

.box {
height: 0;
width: 0;
border-color: transparent skyblue transparent transparent;
border-style: solid;
border-width: 40px;
}

那如果需要的不是等腰三角形又該如何實(shí)現(xiàn)呢?

上面提到過(guò),三角形的大小取決于border-width的值的大小,上面講四個(gè)方向的值設(shè)置了相同的值,因此得出的是等腰三角形。修改border-width的值則可以得出不同尺寸的直角三角形。

.box {
height: 0;
width: 0;
border-color: transparent skyblue transparent transparent;
border-style: solid;
border-width: 80px 40px 0 0;
}

則可得到如下三角形:

小三角的應(yīng)用

繪制除了三角形,就可以通過(guò)position定位實(shí)現(xiàn)。如開(kāi)頭提到的京東網(wǎng)頁(yè)中顯示價(jià)格的效果。

該效果圖中的梯形可以通過(guò)在矩形的的右側(cè)定位一個(gè)如下圖所示的直角三角形,并將三角形的背景色設(shè)置為白色即可實(shí)現(xiàn)。

當(dāng)然,小三角可以使用偽元素以精簡(jiǎn)網(wǎng)頁(yè)結(jié)構(gòu),但偽元素是行內(nèi)元素,需要先將其轉(zhuǎn)換成行內(nèi)塊元素或者塊級(jí)元素。

總結(jié)

用CSS繪制三角形需要注意以下幾點(diǎn):

•容器的width和height必須為0

•三角形的大小取決于border-width值的大小

文章來(lái)源:腳本之家,原文鏈接:https://apping.admin5.com/?app=space&controller=panel&action=contribute

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
css三角形繪制
巧妙
css三角形

相關(guān)文章

熱門排行

信息推薦