纯CSS绘制箭头
用CSS即可绘制出各种箭头,无需裁剪图片,甚至没有用到 CSS3 的东西。对浏览器支持良好。
边框箭头
原理非常简单,通过截取border的部分“拐角”实现

实心箭头
当元素宽、高为零,且其他边为透明颜色时,可以形一个三角形。改变各个边的宽度,即通过调整“边框”厚度可以配置出任意角度

90°之外的箭头
常见的箭头设计是大于90°的,在上面例子的基础上,“压扁”或“拉长”矩形不就可以了吗?而“压扁”或“拉长”需要用skew()就能实现,只不过需要做些角度的计算。 按照width: 100px; 角度120°的需求来定义边长、角度两个变量。height = width * cos(30°) = width * sin(60°)。



终极实现方法
transform: matrix实现任意大小,任意方向, 任意角度的箭头 。
先把div 旋转45度, 让它成为一个 菱形 然后再伸缩,达到任意的角度, 这样就可以得到一个 任意角度的箭头。由于用到了旋转和伸缩两种变换,所以需要使用 transform: matrix(a,b,c,d,e,f) 这个变换矩阵。

(没看懂。感兴趣的可以点击下方链接查看。lizh)
参考链接
最后更新于
这有帮助吗?