HTML
您可以将它们设为一个div。 为每个方向可能性提供类非常好。
<div class="arrow-up"></div>
<div class="arrow-down"></div>
<div class="arrow-left"></div>
<div class="arrow-right"></div>
CSS
这个想法是一个宽度和高度为零的盒子。 箭头的实际宽度和高度由边框的宽度确定。 例如,在向上箭头中,底部边框是彩色的,而左侧和右侧是透明的,形成三角形。
.arrow-up {
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 5px solid black;
}
.arrow-down {
width: 0;
height: 0;
border-left: 20px solid transparent;
border-right: 20px solid transparent;
border-top: 20px solid #f00;
}
.arrow-right {
width: 0;
height: 0;
border-top: 60px solid transparent;
border-bottom: 60px solid transparent;
border-left: 60px solid green;
}
.arrow-left {
width: 0;
height: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-right:10px solid blue;
}
演示版
在CodePen上查看 Chris Coyier ( @chriscoyier )的“用笔动画解释CSS三角形” 。
例子
戴夫·埃弗里特(Dave Everitt)写道:
对于等边三角形,值得指出的是高度为宽度的86.6%,因此(边界-左-宽度+边界-右-宽度)* 0.866%=边界-底-宽度