使用CSS画出三角形
看到有面试题里会有问到如何用css画出三角形
众所周知好多图形都可以拆分成三角形,所以说会了画三角形就可以画出很多有意思的形状
画出三角形的原理是调整border(边框)的四个方向的宽度,线条样式以及颜色。
如果你将宽度调的足够大,改变不同方向的颜色,你就可以发现盒模型的border是四个梯形一样的线条。
这个时候如果将盒模型内部的height,width调为0px,则三角形就形成了。
1 border:100px solid transparent //边框100px,实线,透明颜色,下面三行代码等同于此句 2 border-width:15px; //border-width代表所有方向的border 3 border-style:solid; 4 border-color:transparent;
如果你看明白了原理那么现在你应该已经可以自己写出代码了。
1 width: 0; 2 height: 0; 3 border-left: 50px solid transparent; //左边宽度50px,实线,透明颜色 4 border-right: 50px solid transparent; //右边同上 5 border-top: 100px solid red; //上边宽度100px,实线,红色
上面这段代码可以生成一个向下的三角形。如下图所示(为便于理解我替换了右边的颜色)
由这个效果图我们可以看出,要生成一个三角形我们需要三条边框。
左右边框的高度会决定三角形的高有多长。
三角形高度则由边框自己的宽度决定
那么如何生成一个指向右下或者左下之类的这样的三角呢?
相信大家已经通过上面的图看出来了。
我们只需要两条边框就够了。
1 width: 0; 2 height: 0; 3 border-top: 100px solid red; 4 border-right: 100px solid transparent;
这段代码就会生成一个指向左下的三角形,底和高都是100px。
还记不记得border-width。
它可以用一句代码定义四条边框的宽度。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!