CSS 偽元素是指 CSS 中不存在于 HTML 中的定義的元素,常常用于添加樣式或修飾已有的 HTML 元素。通過使用偽元素,我們可以方便地制作一些 CSS 特效,比如畫三角形就是其中的一種。
/* 畫一個向上的三角形 */ .triangle { width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 10px solid #333; }
上面的代碼中,我們使用了 border 屬性來畫出三角形,其中 border-left 和 border-right 兩個屬性設置了寬度為 0,這是為了讓二者不占用實際空間,接著使用 border-bottom 屬性設置為實際的三角形高度,顏色可以根據需求自定義。這種方法只適用于畫等邊三角形。
/* 畫一個向右的三角形 */ .triangle { width: 0; height: 0; border-top: 10px solid transparent; border-bottom: 10px solid transparent; border-left: 10px solid #333; }
同樣道理,以上代碼中我們用 border-top 和 border-bottom 設置了寬度為 0,使用 border-left 屬性設置實際的三角形寬度,顏色同樣可以自定義,這種方法適用于繪制等高不等寬的三角形。
除了使用 border 屬性,我們也可以使用 transform 屬性來實現三角形繪制。使用該方法的優點是,我們可以自由控制三角形的傾斜方向,以及設置是否填充或邊框的寬度和顏色。
/* 畫一個向下的三角形 */ .triangle { width: 0; height: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-top: 20px solid #333; transform: rotate(45deg); }
通過旋轉變換,我們可以將三角形傾斜并對齊,這里的 transform 屬性設置為 rotate(45deg) 就可以將其旋轉 45 度。
總之,CSS 偽元素可以幫助我們輕松地實現一些特殊的效果,其中畫三角形僅僅是其中的一種。了解并熟練掌握這些方法,可以在我們日常的頁面制作中大顯身手。
上一篇css 優先級 面試題
下一篇css 偽元素 和偽類