使用 CSS border 製作梯形、三角形、對話框
梯形
分別設定 border-color
上、右、下、左為不同的顏色,而中間的正方形 (白色部份) 為 height
與 width
。
現在我們將 border-color
上、右、下,設定為 transparent
(透明),即可取得所需方向的梯形。
正三角形
與梯形不同的地方在於,將 height
與 width
設為 0,即可呈現正三角形。
現在我們將 border-color
上、右、下,設定為 transparent
(透明),即可取得所需方向的正三角形。
斜邊在盒子的對角線上
斜邊由設定 border-clolr
與 border-width
上、右二個顏色與方向的尺寸來呈現這種效果。
現在我們將 border-color
右,設定為 transparent
,即可取得另一邊的三角形。
直角三角形
將 border-color
上、右,設定為相同顏色,border-width
依上、下;左、右,各為一群組,相同群組須設定為相同尺寸。
等腰三角形
僅設定 border-color
上,一個方向的顏色,border-width
依上、下;左、右,各為一群組,相同群組須設定為相同尺寸。
對話框
下尖角
先設定元素的定位方式 position: relative;
,在使用虛擬元素 ::after
來產生三角形,並以父元素定位,依此來調整三角形要出現的位置。
左尖角
基本上與上例相同,但這裡多使用了一個虛擬元素 ::before
用來蓋住另一個三角形,以取得另一種三角形。
下三角 (邊框式)
與上例一樣都使用了二個虛擬元素,而本例的另一個則是用來蓋住另一個三角形,用來實現對話邊框。
HTML:
CSS:
參考

本著作係採用創用 CC 姓名標示-相同方式分享 3.0 台灣 授權條款授權.
在〈使用 CSS border 製作梯形、三角形、對話框〉中有 1 則留言