为CSS三角形添加边框

pro*_*ter 11 css css-shapes

我有一个三角形

<div class="triangle-left"></div>


.triangle-left {
    width: 0; 
    height: 0; 
    border-top: 22px solid transparent;
    border-bottom: 22px solid transparent;
    border-right: 22px solid white;
}
Run Code Online (Sandbox Code Playgroud)

如何绘制CSS三角形的轮廓,考虑将border自己用于制作三角形?外部div?

小智 15

一种方法是创建一个较小的内三角形.

.triangle-left {
    width: 0;
    height: 0;
    border-top: 23px solid transparent;
    border-bottom: 23px solid transparent;
    border-right: 23px solid red;
}

.inner-triangle {
    position: relative;
    top: -20px;
    left: 2px;
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-right: 20px solid blue;
}
Run Code Online (Sandbox Code Playgroud)
<div class="triangle-left">
    <div class="inner-triangle"></div>
</div>
Run Code Online (Sandbox Code Playgroud)


jon*_*ell 13

我就是这样做的.

.triangle-left {
  width: 0;
  height: 0;
  border-top: 22px solid transparent;
  border-bottom: 22px solid transparent;
  border-right: 22px solid black;
  position: relative;
}

.triangle-left:after {
  content: '';
  width: 0;
  height: 0;
  border-top: 21px solid transparent;
  border-bottom: 21px solid transparent;
  border-right: 21px solid #dddddd;
  position: absolute;
  top: -21px;
  left: 1px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="triangle-left"></div>
Run Code Online (Sandbox Code Playgroud)

这是JSFiddle.