CSS3的鏤空效果可以讓元素呈現出透明的效果,這對于許多設計場景非常有用。比如利用它可以制作出很漂亮的星星。
.star { width: 0; height: 0; font-size: 0; border-width: 5px 5px 0 5px; border-style: solid; border-color: #ffc107 transparent transparent transparent; transform: rotate(45deg); }
上面的代碼創建了一個黃色邊框,寬度為5px 的正方形。可以看到這個正方形實際上是一個旋轉了45度的菱形。
使用 CSS3 的鏤空效果,可以只顯示菱形的一半,讓其呈現出星星的形狀。只需在邊框顏色中設置透明度即可實現。代碼如下:
.star { width: 0; height: 0; font-size: 0; border-width: 5px 5px 0 5px; border-style: solid; border-color: #ffc107 transparent transparent transparent; transform: rotate(45deg); /* 鏤空效果 */ -webkit-box-shadow: inset 0 0 0 2px #ffc107; box-shadow: inset 0 0 0 2px #ffc107; }
實際上,上面的代碼用到了CSS3的box-shadow屬性,借助它來創建元素鏤空的效果。可以看到,給.box-shadow屬性設置inset參數表示鏤空,同時設置陰影大小為0,這樣就能將菱形中間的部分鏤空了。
通過 CSS3 的變換和鏤空效果,我們可以制作出非常漂亮的星星效果,耗時很短,而且代碼也很簡潔。