通過CSS做一個五角星可以使用偽元素:before和:after來實現。代碼如下:
.star { position: relative; width: 0; height: 0; border-style: solid; border-width: 40px 15px 0 15px; border-color: #f0ad4e transparent transparent transparent; } .star:before { content: ""; position: absolute; width: 0; height: 0; border-style: solid; border-width: 26px 7.5px 0 7.5px; border-color: #ffffff transparent transparent transparent; top: -17px; left: -1px; } .star:after { content: ""; position: absolute; width: 0; height: 0; border-style: solid; border-width: 26px 7.5px 0 7.5px; border-color: #f0ad4e transparent transparent transparent; top: -15px; left: -2px; }
代碼解析:
首先,我們創建一個空的div元素,并設置其寬高為0,邊框樣式為solid,邊框寬度為40px 15px 0 15px,邊框顏色為#f0ad4e transparent transparent transparent(黃色)。
之后,我們使用偽元素:before和:after來分別創建兩個梯形元素,分別作為五角星的上面和下面的兩個梯形部分。
梯形的寬高為0,邊框樣式為solid,邊框寬度為26px 7.5px 0 7.5px,border-top顏色為#ffffff或#f0ad4e(白色或黃色),其余三面的顏色都設置為transparent(透明)。
通過調整偽元素的top和left屬性,使其精確對齊五角星的上下兩部分。
最后,在HTML中插入這個div元素,就可以得到一個漂亮的五角星了!