我是如何发现用css边框(border)可以实现画三角形的

平时我用css的border属性,都是用很小的像素,反映到界面上就是很细的边框,像下面这样。

<style>
.triangle{
 width:100px;
 height:100px;
 border:1px solid red;
}
</style>
<div class="triangle"></div>

在这里插入图片描述
可怕的是,我也一直认为只能这样用。
当有一天,我为了调试,把各个边框像素放大,并且使用了不同的颜色,奇迹出现了。

<style>
.triangle{
 width:100px;
 height:100px;
 border-top:50px solid red;
 border-left:50px solid green;
 border-right:50px solid green;
 border-bottom:50px solid red;
}
</style>
<div class="triangle"></div>

在这里插入图片描述
此时出现了四个梯形。
当我把中间div的宽高像素降低后,出现如下画面:

<style>
.triangle{
 width:10px;
 height:10px;
 border-top:50px solid red;
 border-left:50px solid green;
 border-right:50px solid green;
 border-bottom:50px solid red;
}
</style>
<div class="triangle"></div>

在这里插入图片描述
所以我尝试把div宽高降到0像素:

<style>
.triangle{
 width:0px;
 height:0px;
 border-top:50px solid red;
 border-left:50px solid green;
 border-right:50px solid green;
 border-bottom:50px solid red;
}
</style>
<div class="triangle"></div>

在这里插入图片描述
此时出现了四个三角形,如何得到一个呢?可以通过把不想要的部分设置成透明,仅留下一个三角形。

<style>
.triangle{
 width:0px;
 height:0px;
 border-top:100px solid red;
 border-left:50px solid transparent;
 border-right:50px solid transparent;
}
</style>
<div class="triangle"></div>

在这里插入图片描述
然后你可以通过调整各边框的像素大小,或者透明度,来得到各种形状的三角形。
在这里插入图片描述在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梧桐深院

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值