用css画一个有边框的三角形
时间: 2023-12-14 17:39:20 浏览: 96
可以使用 CSS 的伪元素 `::before` 或 `::after` 来实现一个有边框的三角形。
HTML 代码:
```html
<div class="triangle"></div>
```
CSS 代码:
```css
.triangle {
width: 0;
height: 0;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-left: 30px solid #000;
position: relative;
}
.triangle::before {
content: "";
width: 0;
height: 0;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-left: 30px solid #fff;
position: absolute;
top: -30px;
left: -30px;
}
```
解释:
首先,设置 `.triangle` 元素的宽高都为 0,然后使用 `border-top` 和 `border-bottom` 设置上下两个三角形的边框,使用 `border-left` 设置左侧的边框。由于三角形的边框是有颜色的,所以需要将 `.triangle` 元素设置为 `position: relative`,这样后面的伪元素才能以它为基准进行定位。
接着,使用 `::before` 伪元素来创建另一个三角形,设置它的颜色为白色,并将它定位到 `.triangle` 元素的左上角,让它盖住左侧的黑色边框,这样就形成了带有边框的三角形。
阅读全文